Ten years from now, we'll look back upon today as the beginning of a new era of business and technology. Similar to the way e-business was formed by the advent of the web, this new era is being formed by the convergence of mobile, cloud, social networking and big data. These technologies are enabling businesses to establish engagements far beyond the boundaries of the enterprise and involve customers and partners in real time, where and when they are ready to do business.
In the past decade, SOA principles have been the foundation for the evolution of transactional systems to e-business and end-to-end business process integration. In the next decade, the same SOA principles will be at the core of a new era of business engagements that transact at internet scale across locations, devices, people, processes and information. The "SOA manifesto" contains the following six key design principles, each of which is fundamental to an engaging enterprise.
Service orientation at the core
"Service orientation does not begin with technology; it begins with the mind-set of thinking about your business and the world around you in terms of functional components" (Steve Mills, The Future of Business). Thinking in terms of services and processes transcends any particular channel or business unit and provides a uniform mediated architecture that can connect the key stakeholders inside and outside the enterprise.
Process integrity at internet scale
For the extended enterprise, transacting with integrity means carefully managing the integrity of end-to-end business processes. End-to-end business processes are not limited to what happens inside the walls of the enterprise. Furthermore, they happen at internet scale in terms of number of nodes and variability of workload. Thus process integrity at internet scale requires a transition from database-centric transaction principles (for example, two-phase commit) to more loosely coupled transaction models that include compensation and recovery models better suited for long running or asynchronous business transactions (for example, conducted via SMS).
Integration with enterprise capabilities and back-end systems
We've learned time and again that tightly coupled systems do not scale well in a dynamic, ever-changing environment. Nevertheless, integration with the transactional backbone of the enterprise remains an important capability to support new business models and extended ecosystems. The basic SOA design principle of service consumer, service mediator, and service provider is an excellent basis for loosely coupling external and internal participants. The mediation part of the pattern is often overlooked and undervalued, yet it is exactly that which allows mediating between externally published business APIs and internal transactional services, thus providing virtualized external services in a way that does not require recoding or extension of the transactional backbone itself.
Based on industry standards
This is perhaps the most obvious SOA principle, and in reality is not restricted to, or specific to, a service-oriented environment. Having said that, there are certain characteristics of a service-oriented environment that require industry standards beyond protocols and message schemas. Think about a situation where a partner consumes an external API provided and published by the enterprise, but the service provider in turn requires the capabilities of four internal services. In this situation, not only does there need to be an explicit service contract between consumer and service provider, but that service provider in turn needs service contracts with the four "sub-providers" that are part of the transactional backbone. Thus the notion of "wire by contract," embodied by Service Component Architecture (SCA) or Service-oriented architecture Modeling Language (SoaML), in which service consumers and providers are recursively (and potentially dynamically) matched based on their declared declared external (inbound and outbound) dependencies becomes a fundamental tenet of the extended enterprise and must be standardized in the same way that protocols and message schemas have already been standardized. Furthermore, advanced service contracts will include policies and SLAs that guide and govern the interaction according to established agreements across the extended ecosystem.
Leveraging and extending open source technologies
Most CIOs will tell you that open source is a consideration for the strategic evolution of tools and middleware. While most often not on par with vendor-provided capabilities, open source is often good enough for the more standardized aspects of the IT infrastructure. Furthermore, in the context of the extended enterprise, apps may often be created by third party stakeholders, such as customers and partners, who in turn may apply open source technology to create those apps. Consequently, a good IT strategy needs to embrace and extend open source technologies rather than keep open source as a separate, disconnected environment.
Providing the platform for a growing ecosystem
The notion of APIs and API management, the idea that external business interfaces can be codified and published, is a critical enabler for an extended and growing ecosystem. APIs are business services providing a managed interface for interaction across the corporate boundary. As such, the full power of SOA can and should be applied to the creation and management of business APIs, importantly including the notion of API registries (often called API catalogs) for publication and externalized enterprise service bus (ESB) capabilities for integration and mediation.
Extending the enterprise beyond its traditional boundaries must be based on solid engineering principles in order to convert desired business objectives to actionable design. Converging the business models and operating environments of mobile, cloud, social networking and big data builds on the core design principles of SOA and requires the IT organization to extend those principles not only to a larger IT ecosystem, but also to business operations. The fundamentals underpinning new era business engagements will more than ever be provided by a progressive IT organization, and the most successful enterprises will be those that understand how to meld SOA engineering skills and business operations.
IBM BPM & SOA: Better Together for Achieving Business Agility
(IBM white paper series)
SOA Foundation: An architectural introduction and overview (IBM white
- The Future of Business, Steve Mills, June 2007 (PDF).
BPM zone: Get the latest technical resources on IBM BPM solutions,
including downloads, demos, articles, tutorials, events, webcasts, and
IBM BPM Journal: Get
the latest articles and columns on BPM solutions in this quarterly
journal, also available in both Kindle and PDF versions.
Claus Torp Jensen is a Senior Technical Staff Member and Chief Architect for SOA-BPM-EA Technical Strategy at IBM in Somers, NY. He is part of IBM's SOA Foundation team, working on the convergence of different architectural disciplines. Claus is a member of the WebSphere Foundation Architecture Board.
Prior to joining IBM, Claus had ten years of experience as a Chief Architect and SOA Evangelist.