Enterprise Content Management for Your SOA

nvisia is an award-winning software development partner driving competitive edge for clients.

Enterprise Content Management (ECM) is finding its way into conversations across growing organizations looking to empower business agility within their IT applications and processes.  ECM, in the past has either been viewed somewhere between highly transactional document/image processing (ex: invoicing, medical claims) to a means to represent dynamic news, articles and information on websites.  A new train of thought is to not just consider ECM as just a tool, but more as part of an enterprise’s strategic direction.  ECM will allow the business better capabilities to react to an ever changing environment without IT interaction.  Content authors can create/manage/govern their content within its own lifecycle. Applications can then consume that dynamic information and use it in any way needed.  This last point sets up our topic of discussion.

While ECM systems typically provide toolsets to manage and govern unstructured content, the true value comes from the ability to integrate with this system.  These days, integration lends itself to SOA.  Service-Oriented Architecture is a software practice where services are provided in some way, shape or form over a network-enabled protocol. Consumers can utilize these services to fulfill reusable functionality within their applications and processes.  ECM plays well as part of an organization’s SOA strategy.  At a high-level, applications across the enterprise can integrate with an ECM system to easily present dynamic enterprise content/information.  Previously, applications would maintain “content” either statically within the application source code or dynamically within an application’s specific database.  Changing content would require change requests and alignment with deployment timelines. This all changes when ECM is introduced within an organization’s SOA platform.  ECM systems allow content to be reviewed and approved.  Additionally, ECM provides audit trails and annotations, comments and notes as part of the content’s lifecycle.  The same content can then be safely reused across the organization knowing it has been properly governed.  As a business grows, the demand for audit trails and adherence to governing processes will also grow.

Integration standards have been developed to further drive a service-oriented approach to ECM.  The Content Management Interoperability Standard (CMIS) is an open standard which has been approved as an OASIS specification.  CMIS provides many functionality features such as CRUD and query-language capabilities.  There are also other useful features such as access control and versioning.  As well, most vendors provide their own API that can also be used for integration.  Exposing these service capabilities across the organization allows consuming application clients to make use of some subset of underlying content management technology.

The technical challenge from a content management standpoint has little to do with whether content services are exposed via SOAP or RESTful endpoints.  It has more to do with how an unstructured piece of content can be rendered at runtime to support multiple distribution channels.  Consider the example where an organization maintains important content inside of MS Word documents.  These word documents are stored and governed by the organization’s ECM system.  An IT group is developing an SPA (Single Page Application) which has a requirement to display the important content contained within said MS Word documents.  The SPA as a consumer of content, would integrate with the enterprise content management services exposed by organization’s SOA platform.  The challenge specifically is how to request MS Word document content in the form of HTML.  This example shows that choosing the right technology for ECM and establishing best practices for managing content will be necessary for helping to enable a successful service-oriented approach to ECM.  Some ECM vendors allow runtime transformation of content while others do not.  Picking the right vendor will require gathering requirements across the organization and scoring each product appropriately.  Developing a proof-of-concept application to help support the requirements will also help solidify the selection of the appropriate ECM vendor.  Taking the time to evaluate the different vendors from both a capabilities and integration standpoint will help ensure the proper vendor is selected to support an organization’s needs.

Exploring the possibilities within a service-oriented approach to content management will open the doors for organizations to become more flexible and scalable.  Governance processes will be enforced to properly audit content as it becomes a valuable enterprise artifact.  Once that artifact is available, multiple business units can consume it through various distribution channels (enterprise service bus (ESB), web services, message-oriented middleware (MOM)).  The need for reinventing the wheel when it comes to managing and accessing dynamic data and messaging within an application will become a thing of the past.  Organizations will become more agile and able to better react to the ever changing business model.

Related Articles