Achieving Business Agility through Model-Driven SOA

Service-oriented architectures (SOA) are touted as the key to business agility, especially when combined with a model-driven approach. Model-Driven Architecture (MDA) is a well-developed concept that fits well with SOA, but until now it has been a specialized technique that is beyond the scope of most enterprises. Can it be made simpler and more accessible, to become a widely used enabling technology for SOA? With a semantic approach, the answer may well be “Yes”.



The practical benefits of SOA are being increasingly recognized in many industries and applications of Information Technology. For example, Rusty Foreman, Exploration and Production SOA Program Manager for BP, says that the move to so-called "smart" oil and gas fields, with real-time collection and analysis of information driving real-time operational changes, has significant financial benefit, and SOA eliminates the traditional “spaghetti” architecture that requires many interconnected systems to solve a single problem.

Rusty adds that SOA provides a bridge between the business and technical worlds, enabling customers to talk about what they really need. But understanding requirements is just the first step towards business agility. In a truly agile enterprise, the IT infrastructure is aligned with the business structure and it can easily be adapted to meet business needs. The promise of SOA is that this can be achieved by business people who can configure and orchestrate the SOA services.

This implies that the business people have a model of the enterprise services, that they configure the model to reflect business needs, and that this translates directly to the IT implementation, ideally automatically. Such a model-driven approach is well suited to SOA, because the basic architectural building blocks are services, which can be described in a formal language such as the Web Services Definition Language (WSDL). As architecture guru Rakesh Radhakrishnan of Sun Microsystems says, the technologies behind MDA help translate high-level models to an entire IT infrastructure, which allows for the creation of SOA that is decoupled from the lower level platforms and infrastructures.

The Object Management Group (OMG) has defined a number of standards for MDA, covering the definition of models and the exchange of model information. But they are not easy reading. The Meta-Object Facility Specification, which contains the basic model description definition, runs to over 350 pages, and explains in its conceptual overview that “the classical framework for metamodeling is based on an architecture with four metalayers”. It takes a good brain and considerable dedication to get beyond this point. MDA requires intelligent, highly trained architects, and also specialist technology. Good architects are hard to come by, and specialist technology can be expensive. Small wonder that MDA is not widely used in enterprises today.

But can MDA be made simpler and more accessible? There is reason to believe that it can. Enterprise architect David Houlding has shown how to model SOA using the freely available open source ontology editor Protégé. With this tool, he implements a knowledge base that represents a concise, high-level model of the metadata forming the big picture of the enterprise, enabling knowledge mining to support accurate proactive analysis and planning. Similar techniques could be used to couple the formal service descriptions to the high-level model of an SOA.

The semantic approach to SOA implementation is gaining momentum. According to Sandra Rogers, who is Program Director for SOA, Web Services, and Integration with IDC, as configurations become more complex, the need to track related sets of services that form solutions is critical, and a significant amount of metadata needs to be captured throughout the development lifecycle. Metadata is at the foundation of SOA. Germany’s Entory Group, which provides IT consulting and systems integration to financial services firms, recently adopted a solution based on an SOA repository in which every system module can store metadata in a standard XML format, facilitating service re-use. This solution delivered impressive results, reducing costs by more than 50% and credit management cycle times by more than 70%.

The recent announcement by IBM, Microsoft and SAP that their UDDI Business Registry will close, highlights the shortcomings of UDDI, at least for public web services registries. Against this background, the advantages of the more flexible semantic-based SOA registries and repositories are becoming more and more evident.

As with MDA, there is a perception that semantic technology is a specialist area. Use of philosophical terms such as “ontology” - even the term “semantics” itself – tends to reinforce this perception, and the technology is not easy to master. But there is plenty of free software (such as Protégé) and the tools available for use with the semantic web. This is crucial, because it enables people to experiment and learn easily and at low cost, and a growing community of people is doing just that. As the number of users grows, ways of simplifying the technology will appear, and better understanding will result. Semantic technology will become something that ordinary IT architects, in all kinds of enterprises, can and do use as a matter of course.

In the USA, the General Services Administration (GSA) is leading the way with OSERA (Open Source eGovernment Reference Architecture) – an architecture that will combine MDA, SOA, and the Semantic Web. Corey Casanave, president of Data Access Technologies Inc., which is helping the GSA to develop OSERA, says that the Semantic Web will enable publication of re-usable artefacts. He says that one of the dirty little secrets about MDA is that there are too many ways to talk about the same thing, with redundant and conflicting semantics, but the Semantic Web provides a great way to publish models as Web services.

SOA promises business agility through user configuration and orchestration of services. This can be achieved without MDA, but only through a manual configuration process. MDA automates that process, and the combination of SOA and MDA is what is needed for real agility. A semantic approach makes MDA simpler and more accessible, and improves component re-use. The Semantic Web standards mean that tools can be interoperable, while the Semantic Web itself can be a global repository for shared artefacts. Semantic modeling is the key to success for model-driven SOA. Currently, enterprises implementing SOA often identify semantic interoperability as a problem. Perhaps, if they make semantics their starting point, they will find that they have the solution to achieving business agility through SOA.

For more information, please contact Dr. Chris Harding at c.harding@opengroup.org.

About the Author

Dr. Chris Harding leads the SOA Working Group at The Open Group - an open forum of customers and suppliers of IT products and services. In addition, he is a Director of UDEF Forum, and manages The Open Groups work on semantic interoperability. He has been with The Open Group for over ten years.

Dr Harding began his career in communications software research and development. He then spent nine years as a consultant, specializing in voice and data communications, before moving to his current role.

Recognizing the importance of giving enterprises quality information at the point of use, Dr. Harding sees information interoperability as the next major challenge, and frequently speaks or writes on this topic. He is a regular contributor to ebizQ.

Dr Harding has a PhD in mathematical logic, and is a member of the British Computer Society (BCS) and of the Institute of Electrical and Electronics Engineers (IEEE).

More by Dr. Chris Harding

About Open Group

The Open Group is a vendor-neutral and technology-neutral consortium, whose vision of Boundaryless Information Flow will enable access to integrated information within and between enterprises based on open standards and global interoperability. The Open Group works with customers, suppliers, consortia and other standard bodies. Its role is to capture, understand and address current and emerging requirements, establish policies and share best practices; to facilitate interoperability, develop consensus, and evolve and integrate specifications and open source technologies; to offer a comprehensive set of services to enhance the operational efficiency of consortia; and to operate the industry’s premier certification service. Further information on The Open Group can be found at http://www.opengroup.org.