As a middleware expert Jürgen works at Oracle EMEA Alliances and Channels, responsible for Oracle’s EMEA fusion middleware partner business. He is the founder of the Oracle SOA & BPM and the WebLogic Partner Communities and the global Oracle Partner Advisory Councils. With more than 5000 members from all over the world the Middleware Partner Community are the most successful and active communities at Oracle. Jürgen manages the community with monthly newsletters, webcasts and conferences. He hosts his annual Fusion Middleware Partner Community Forums and the Fusion Middleware Summer Camps, where more than 200 partners get product updates, roadmap insights and hands-on trainings. Supplemented by many web 2.0 tools like twitter, discussion forums, online communities, blogs and wikis. For the SOA & Cloud Symposium by Thomas Erl, Jürgen is a member of the steering board. He is also a frequent speaker at conferences like the SOA & BPM Integration Days, JAX, UKOUG, OUGN, or OOP.
Berthold Maier works in the T-Systems International department of Telekom Germany as Enterprise Architect. He has more than 19 years experience as developer, coach and architect in the area of building complex mission critical applications and integrations scenarios. Within eleven years as Oracle employee he has held several leading positions including chief architect in the consulting organization. Hi is the founder of many frameworks and take over the responsible for reference architectures around BPM/SOA and Enterprise Architecture Management. Berthold is also well-known as a conference speaker, book author and magazine writer.
Hajo Normann works for Accenture in the role of SOA & BPM Community of Practice Lead in ASG. Hajo is responsible for the architecture and solution design of SOA/BPM projects, mostly acting as the interface between business and the IT sides. He enjoys tackling organizational and technical challenges and motivates solutions in customer workshops, conferences, and publications. Hajo leads together with Torsten Winterberg the DOAG SIG Middleware and is an Oracle ACE Director and an active member of a global network within Accenture, as well as in regular contact with SOA/BPM architects from around the world.
Danilo Schmiedel is one of the leading BPM and SOA System Architects at OPITZ CONSULTING. He has been involved in large integration-, business processes automation and BPM / SOA development projects where he implemented solutions for various customers. His main field of interest is focused on the practical use of BPM and SOA on a large scale. Additionally he works as BPM and SOA project coach. Danilo is a frequent speaker in the German Java and Oracle communities and has written numerous articles about the above topics. Before joining OPITZ CONSULTING Danilo worked as Software Engineer in several international projects. The Leipzig University of Applied Science has awarded his outstanding reputation in 2009.
Guido Schmutz works as Technology Manager for the IT services company Trivadis. He has over 25 years as a software developer, consultant, architect, trainer, and coach. In Trivadis he is responsible for SOA, BPM and application integration, and is head of the Trivadis Architecture Board. His interests lie in the architecture, design, and implementation of advanced software solutions. He specializes in Java EE, Spring, Oracle SOA Suite and Oracle Service Bus. He is a regular speaker at international conferences and is the author of articles and several books. Guido is an Oracle ACE Director for Fusion Middleware & SOA.
Bernd Trops is a Senior Principal Consultant at Talend Inc. In this role he is responsible for client project management and training.
Bernd is responsible for all Talend projects within the Deutsche Post and the introductions of new versions and components.
Before Talend, Bernd was a Systems Engineer working on various projects for GemStone, Brocade and WebGain and therefore has extensive experience in J2EE and SOA. From 2003 to 2007 Bernd Trops worked as a SOA Architect at Oracle.
Clemens worked as Chief Architect for the Shared Service Centre, Global Business Services, Boehringer Ingelheim in architecture, master data, service management and innovation.
At the moment he works with holistic enterprise architecture that provides the methodological platform for the new master data management.
He previously worked as a Platform Architect at Oracle Inc. in the United States, where he helped to develop next product strategy as well as the SOA BPM Suite.
Torsten Winterberg works for Oracle Platinum Partner OPITZ CONSULTING. As a director of the competence center for integration and business process solutions he follows his passion to build the best delivery unit for customer solutions in the area of SOA and BPM. He has long-time experience as developer, coach and architect in the area of building complex mission critical Java EE applications. He is a known speaker in the German Java and Oracle communities and has written numerous articles on SOA/BPM related topics. Torsten is part of the Oracle ACE director team (ACE=Acknowledged Community Expert) and leads the DOAG middleware community.
SOA Maturity Alongside Contract Standardization Published: June 27, 2013 • Service Technology Magazine Issue LXXIII PDF
Introduction: In Search of the Holy Grail of SOA
In this article, we present and explore the fundamentals of applying the factory approach to modern service-oriented software development in an attempt to marry SOA industrialization with service contracts. As service developers and designers, how can we successfully fulfill factory requirements and achieve the essential characteristic of industrialized SOA while remaining compliant with standards on the service contract level?
Thinking in terms of contracts has been found to be requisite for granular sourcing strategies that virtualize underlying implementations. Contracts also function as a common language between business units and IT teams, across cloud computing technologies, and for future-proof and agile enterprises in general.
Let's imagine that today's "pre-industrialized" world has become one in which contracts are been replaced by organizational and technical silos and the best solutions available. In today's SOA landscape, functional components are created for specific applications, often redundantly and lacking organization-wide standardization at the interface level. These components work well in a "silo" landscape in which the "application SOA" architecture is particularly suitable within the context of single applications.
Figure 1 illustrates the simplicity of combining services within applications that results from standardized design and structures being used as the framework for interfaces and exchanged data:
Figure 1 - SOA standards within applications result in compatibility.
If a business activity service (BAS) comprises business entity services (BESs) of different designs from multiple "application SOAs," the data that is exchanged will vary greatly in structure. A single "contract" business object can be structured very differently for each application service (Fig. 2).
Figure 2 - Various standards in different applications.
Figure 3 illustrates how a high level of integration effort is required for each compiled service even though all of the services are based on underlying standards like SOAP and WSDL. Great integration effort is caused by the different structural characteristics of the data types.
Figure 3 - A high level of integration effort is required in all service layers.
A high level of integration effort is required for service usage due to an absence of industry standards, which forces service reuse efforts to remain difficult and highly cost-intensive. These drawbacks cause developers to prefer building functionality themselves rather than using services. Integration effort is therefore a major obstacle on the path to successful SOA adoption.
The solution lies in domain-wide standards that are placed at the level of functional data exchanges and technical cross-sectional data exchanges. LEGO is chosen as a metaphor to demonstrate the necessity of standardization in service contracts, since the uniformity of LEGO brick structure produces the perfect fit. A LEGO brick that has just a minor imperfection or a small protrusion cannot be properly attached to other bricks. Similarly, simplified service reuse can be achieved by merely standardizing the exchanged data.
Figure 4 illustrates how combining services that are based on the same standards can be as basic as building structures out of LEGO bricks. This is the holy grail of SOA. The artificial connector, the integration layer, becomes very small or ceases to exist.
Figure 4 - The "holy grail" of SOA: easy use through standardized interfaces.
One of the most important characteristics of the industrialization approach is a domain-wide standardization of interfaces or "service-level agreements." This agreement is a contract into which a service enters with its users, and is the prerequisite for BASs that are incorporated as function components for processes and portals. Considerable integration effort isn't required, and SLA compliance can in evaluated through enterprise asset management (EAM) or business process management (BPM) dashboards.
It is conceivable for specifications to be centrally determined on an SOA dashboard as an option for establishing the standards throughout an enterprise or organization. SOA governance tasks check and verify their use and compliance with the applicable specifications. These governance tasks require substantial effort to remain compliant with the specifications of standardized interfaces, which must be fulfilled for each service. The model-driven generation of service contracts can be implemented to reduce this effort and allow service developers to focus their attention on service implementation instead.
Figure 5 - Model-driven generators assist standardization.
SOA architects define business object data types for reference data types and cross-sectional data types to prepare for a range of errors. The underlying business objects and their attributes are saved as an object model, such as the unified modeling language (UML), in a central repository. Service designers use this centralized object repository when defining contracts and "feed" the repository into the generator, which creates the service interface in accordance with previously specified rules. This process demonstrates how a tool expert has defined the compilation of a standardized WSDL from selected data, cross-sectional data, and reference data.
SOAP messages are exchanged during runtime. The standardized filling in of SOAP headers, which also contain essential information for dashboard evaluations, is one of the tasks of the enterprise service bus (ESB). The ESB is configured for this task only once and doesn't typically require any further involvement from the developer who programs services.
The interface specification, WSDL, and SOAP messages are now created according to the standards of the central architecture. Generating service contracts beyond or outside of this standard structure is not possible. The shift away from developer specifications and governance tasks that monitor specifications compliance, towards a generator-driven contract manufacturing process, is a key aspect of the implementation of the factory approach to industrialized SOA.