SOA's ECM Influence
What is SOA (service-oriented architecture), and how will it impact the way you
purchase, implement, and maintain ECM (enterprise content management) solutions?
As an IT professional, you’ve probably been bombarded by the acronym SOA for the better part of a year now. It’s been the topic of countless horizontal networking articles and industry Webinars, and the focus of messaging from most of the large IT infrastructure vendors on the market. However, when such a terrific buzz surrounds a concept, key messages tend to get muddled. While most of you have heard of SOA, some of you probably don’t have a clear idea of what SOA actually is and how it can be used to improve your business operations. It’s likely that even fewer of you have made the connection to how SOA will impact your current and future ECM buying decisions and solution implementations. This article will shed some light on the subject.
Ask a dozen people to define SOA, and you’re likely to get a dozen different definitions. However, at its core, SOA is a conceptual framework for designing and building IT networks and Web services that allows data to be freely exchanged among heterogeneous systems. In other words, it’s the practice of configuring IT applications as a set of services that can call and request data from one another and share that data without the need to be hard-line integrated together using extensive programming language.
“SOA is effective at addressing three key business system integration needs: interoperability, loose coupling, and code reuse,” says Gary Gershon, principal of IMERGE Consulting, Inc. “SOA facilitates system interoperability by allowing the exchange of business data and transactions in a manner that is independent of proprietary platforms and software. All integrations are loosely coupled, so individual applications can evolve and be upgraded without affecting the other applications that integrate with it. Finally, legacy application code can be reused by sharing the results of business logic, rather than attempting to decipher and share the code itself.”
All of these characteristics of SOA make it an attractive approach for ECM solution deployment. As you well know, most ECM products need to be highly integrated with other business applications (e.g. capture devices, ERP [enterprise resource planning] systems, Microsoft Office, etc.) in order to maximize the solution’s effectiveness. Using SOA to accomplish this integration provides business agility, IT flexibility, and can reduce the total cost of ownership (TCO) of an ECM solution.
BUSINESS DRIVERS AND BENEFITS FOSTER SOA ADOPTION
The ideas behind SOA (i.e. interoperability, loose coupling, and reuse) are not necessarily new. However, businesses are facing new challenges these days, and IT departments have begun to embrace the SOA concept as a way to deal with those problems.
“The driving force behind SOA adoption is not so much an IT need as it is a business need,” says Sameer Samat, VP of engineering and development for Kofax. “The days when a corporation could take two or three years to retool its IT systems in response to business change are waning. Today’s business faces mergers, acquisitions, traumatic events, and globalization that can cause dramatic changes to a business environment overnight. Enterprises need to be able to quickly restructure their IT systems in order to address these environmental changes. They need the ability to recompose applications, to create new applications, and to reorder the way applications operate very quickly. This demand is pushing people to SOA.”
Recent studies provide evidence supporting the rise of SOA adoption. According to Forrester Research, 89% of large enterprises, 61% of midsize organizations, and 40% of small businesses initiated an SOA strategy by the end of 2005. “Most larger organizations have completed one or more initial projects to gain experience and skills with SOA,” says Gershon. “Often these are point-to-point solutions between systems where one party has provided a Web service definition. The programming toolkits for SOA are now in their second or third generation, and this maturity is greatly facilitating these efforts. Over time, smaller organizations have significant incentive to embrace SOA since they typically cannot afford expensive, fully integrated, multiapplication ERP systems and must take responsibility for integrating their various business systems themselves. They will find that SOA provides flexibility in this effort.”
Agility and flexibility in response to business change is only one reason SOA is becoming increasingly embraced. Other benefits include better use of research and development (R&D) resources, improved customer satisfaction, and reduced TCO. “The biggest impact of SOA is that loose coupling makes interoperability a lot easier, reducing the R&D effort expended on integrating disparate systems,” says Paul Lord, president and CEO of Westbrook Technologies. “For example, an SOA-based ECM product may allow you to integrate the software with an MFP [multifunctional peripheral] device in an hour, while that same task might take a week using a legacy-based ECM software package. This results in 4½ days your R&D team can focus on reducing its backlog and helping the business become more successful, rather than spending that time integrating applications into your IT infrastructure. Shorter integration time frames also allow businesses to realize the value of their IT initiatives more quickly.”
Another benefit of an SOA application, since it’s services-based, is that you can actually deploy these services to your external customers. For example, an SOA-based ECM system can provide your customers with self-service access to a lot of the information contained in your ECM platform. Therefore, if you were an insurance company, you could allow your customers to query the system to resolve payment discrepancies on their own, rather than calling your customer service desk. This self-service capability can have a positive impact on customer satisfaction.
Finally, since SOA allows an organization to reuse specific software components for different technical or departmental applications, it can reduce the TCO of an overall solution. For example, in an SOA-based ECM deployment, a data capture component initially built for a claims processing department can easily be leveraged by all other areas of your organization that may need it. Reinventing the wheel is something that businesses want to drive out, and they see SOA as a tool to enable that.
HOW CAN YOU TELL IF AN ECM PRODUCT IS TRULY SOA-COMPLIANT?
In the previous section, I compare SOA-based applications to legacy-based applications. So, what exactly makes an application, particularly an ECM application, SOA-based? Unfortunately, there isn’t currently one clear-cut answer to that question.
“Most applications can be adapted to participate in an SOA environment, even if they were not initially designed for SOA,” says Gershon. “Generally, this would entail creating XML [extensible markup language]-based interfaces to programming APIs [application program interfaces] that can be invoked using the commonly utilized SOAP [simple object access protocol]/HTTP standards. Most ECM vendors have universally embraced SOA and gone a step further, offering Web service interfaces to content repositories and workflow systems that mimic existing Java and/or .NET APIs.”
However, these Web service interfaces still aren’t what many consider to be a truly SOA-based application. “Most ECM products, as they currently exist, are a packaged set of functionality,” says Samat. “For example, a single ECM product may include several different document management, workflow, and records management tools. To be truly SOA-compliant, those sets of functionality need to be transformed into discrete components that can be accessed, consumed, and reused as individual services in multiple organizations throughout an enterprise.” A select few ECM and capture vendors are taking the initiative to restructure their products in this manner.
SOA DOESN’T HAVE TO BE EXPENSIVE
A lot of the messaging currently surrounding SOA may cause you to believe that launching your own SOA initiative will be expensive. This is not necessarily the case.
“Many of the IT infrastructure vendors pushing SOA are leading businesses to believe that they will have to discard their existing applications and rewrite and rebuild them in SOA,” says Lord. “This obviously would be an expensive undertaking for an organization, but also an unnecessary one. While some homegrown legacy systems may have to be rewritten to function in an SOA, there are a plethora of mature technology packages such as ECM, ERP, and CRM [customer relationship management] already on the marketplace and in use throughout the business community. Why would you pay a broadline integrator to design an ECM system for you from scratch to fit into your SOA platform, when countless perfectly good ECM solutions already exist? You wouldn’t. The real question is, if you were to buy an application today to solve a business problem, would you buy one that’s SOA-based and could integrate with other applications in a matter of hours, or do you want to spend days, weeks, or months integrating a legacy-based application into your infrastructure?”
If this viewpoint becomes shared by more businesses, cost will be less of an adoption barrier for SOA, and we are likely to see SOA gain greater traction in the IT community. This trend would have a significant effect on the future of ECM. “If SOA continues to be adopted and continues to leverage ECM as a service, the impact will be profound because it will allow ECM to realize its place as a true infrastructure,” says Samat. “SOA will likely cause people to change the way they think about ECM. It will become a pervasive enterprise service that is consumed by multiple different business processes, workflows, and applications, allowing the technology to become as basic to a business as e-mail.”