|By Philip Stander||
|September 3, 2012 06:00 AM EDT||
Service Oriented Architecture was hailed as the next major leap ahead in the ICT industry and was predicted by many to be as big a leap forward as that achieved with Object-Oriented software design patterns. For example, in 2006, Joseph Bih introduced SOA in a research article as an innovative new way to conduct e-business. While much published and promoted in the marketplace, SOA adoption has been the subject of significant controversy, not least of which is the publication of a landmark article by now Gartner Fellow Anne Thomas Manes in January 2009 in which SOA was declared "dead". This publication examines the health of SOA as a relevant paradigm in the ICT industry three years after some market opinion leaders declared SOA dead.
Anne Thomas Manes from The Burton Group (now part of Gartner and with Ms Manes a Gartner Fellow) published a landmark article as long ago as 5 January 2009 proclaiming that SOA is dead, citing economic downturn as well as focus on appropriate SOA supporting technologies as opposed to architectural approach reinvention as the key reasons for purported failure.
"Once thought to be the savior of IT, SOA instead turned into a great failed experiment-at least for most organizations. SOA was supposed to reduce costs and increase agility on a massive scale. Except in rare situations, SOA has failed to deliver its promised benefits. After investing millions, IT systems are no better than before. In many organizations, things are worse: costs are higher, projects take longer, and systems are more fragile than ever. The people holding the purse strings have had enough. With the tight budgets of 2009, most organizations have cut funding for their SOA initiatives." - http://apsblog.burtongroup.com/2009/01/soa-is-dead-long-live-services.html
Understanding the meaning of SOA
SOA is a natural evolution of client-server programming. The major difference between traditional client-server programming and SOA is that the server-side processing in a SOA environment is governed by business processes. This has the benefit (and promise) of bringing service delivery for any business closer to business analysts and therefore a common understanding across a broader spectrum of business personnel about the technology used to support business services. If your organisation adopts SOA internally with all services under your control, then SOA is simply defined as client-server where server side business logic is determined by configurable business processes. At its true core SOA means less coding and more business process configuration (in other words Business Process Management) and governance that is entrenched in the way systems are designed.
OASIS Definition of SOA
According to the SOA-RM specification, SOA is a paradigm for organizing and utilizing distributed capabilities that may be under the control of different ownership domains. It provides a uniform means to offer, discover, interact with and use capabilities to produce desired effects consistent with measurable preconditions and expectations. The SOA-RM specification bases its definition of SOA around the concept of "needs and capabilities", where SOA provides a mechanism for matching needs of service consumers with capabilities provided by service providers.
The Open Group Definition of SOA
Service-Oriented Architecture (SOA) is an architectural style that supports service-orientation. Service-orientation is a way of thinking in terms of services and service-based development and the outcomes of services.
- Is a logical representation of a repeatable business activity that has a specified outcome (e.g., check customer credit, provide weather data, consolidate drilling reports);
- Is self-contained;
- May be composed of other services;
- Is a "black box" to consumers of the service.
The Technology and Architecture Paradox
SOA is, by definition, an architectural paradigm and therefore SOA business adopters are buying into a new way of designing their IT systems to support their business objectives. While it is an architectural paradigm shift, effective SOA adoption also requires the use of new technology platforms to support SOA. The fact that SOA adoption requires new technology platform adoption to support SOA was pounced on by various technology vendors that reinvented existing Enterprise Application Integration (EAI) and Middleware Platforms and punted these platforms as SOA-enabling platforms and SOA adoption soon became a new selling job in the ICT industry without proper disclosure of the internal IT architectural paradigm shift that was needed for effective SOA adoption.
Bottoms-up versus Top-down SOA
As expected, with the advent of any next evolutionary step, thriving software empires will naturally leverage their existing market dominance to promote their products to fulfil the technology needs to ensure that businesses keep abreast with emerging ICT technology trends. As a result, many large enterprises adopted a top-down SOA approach after acquiring licenses for new purported SOA killer applications and frameworks. SOA is however an IT enterprise reorganisation journey and most certainly not a product or a few quantified projects. Prior to acquiring software licenses to support a SOA initiative, any business needs to reorganise their IT approach. In our opinion at globetom, SOA adoption must take place using a bottoms-up approach. SOA is about gradually transforming your present IT assets into a Service Repository asset. With this approach, your assets gradually become your service repository and its underlying business processes that may leverage other finer-grained or atomic business services.
It is our view that the disillusionment that culminated in statements that SOA is dead originated from large enterprises that wrongfully believed SOA to be the silver bullet that will magically rectify highly fragmented and broken IT infrastructures with a major top-down approach. Some of these projects may have originated without the organisation even having adopted an Enterprise Service Bus (ESB) strategy.
Delivering on the agility promise
As online commerce (Business-to-business and Business to Consumer) starts becoming a key business strategy of almost any business today, agility and elasticity of electronic services are becoming key business imperatives for such organisations. Years ago, prior to the advent of Enterprise Application Integration (EAI) and middleware frameworks, business had a few controlled service delivery channels that were tightly coupled to point systems that were responsible for transaction fulfilment. With the advent of enterprise middleware and the web, companies were increasingly able to reach a wider market and, at the same time, with proper middleware adoption, abstract service delivery channels from their underlying supporting back-end system technologies (an architectural need referred to as Horizontal Systems Integration).
True SOA adoption delivers agility to the enterprise when adopting service exposure with implementation as configurable business processes. If organisations equip their IT enterprises with tools that facilitate integration with legacy systems by exposing point solution functions as services and then build business processes using Business Process Management (BPM) tools. The agility gains are delivered in three dimensions:
- Loose Coupling Agility Gain: Your service delivery channels are provided with a bouquet of services that can be consumed from any access channel. Equivalent functionality is guaranteed over all access channels as the same service implementations are consumed across all channels.
- Configured Business Process Agility Gains: Business processes are easier to change than traditional code. While your business leverages its existing service repository assets, business processes can be evolved rapidly to meet changing business needs;
- Back-end point solution abstraction and reduced vendor lock-in: Services or tasks that provide access to specific functions offered by specific point solutions in your IT organisation become the asset and not the actual point system. SOA therefore crystallises the real business use of specific point solutions. This also means that your organisations business processes use the services and only indirectly the point solutions or products. SOA-centric enterprises therefore gain the benefit that the use of specific point solutions become tactical as these systems can be more readily replaced provided that the services are retained when adopting a new technology. For example, a legacy point system may perhaps be readily replaced with an equivalent public cloud offering and system integration with the cloud service vendor.
Why SOA is not dead
Empirical research results
Figure 1 - Annual SOA-related patents issued
The software world is continuously being reshaped by hype cycles followed by incremental enhancements in the way software is built to meet business needs. If we filter through this hype and look at real measures of the relevance of SOA, you will find a totally different picture. Using Google patent search analytics, the number of SOA-related patents issued since 2000 was obtained and this is depicted in Figure 1. The first patents were issued in 2005 and a sharp increase in SOA patents is observed from 2010 and with a total of 882 patents relating to SOA or of which SOA at least forms a component were issued in 2011. So, looking beyond hype and "opinion pieces", significant research and development has been extended during the past decade with early adopters probably embarking in Research and Development projects early in the first decade of the millennium. This empirical analysis provides a more reliable measure of the perceived value of SOA by the broad ICT innovation community.
At the same time, a rough empirical indication of the commercial relevance of SOA is obtained by looking at the annualised growth of search hits for the phrase "Service Oriented Architecture" as depicted in Figure 2. It is evident that, from 2004, a steady increase in sites publishing SOA-related material was observed with a sharp increase observed in 2011.
Figure 2 - Annualized Google search hits for "Service Oriented Architecture" compared to other mainstream ICT terms
When researching the pervasiveness of Service Oriented Architecture (or sometimes referred to in the academic communities as Service Oriented Computing - SOC), it is evident that SOA is alive and well as a paradigm promoted by Schools of Computing and Information Science. Arizona State University researchers published their findings on the viability of making SOA education part of High School education curriculums. Their research concluded that SOA education is feasible at high school level. Also importantly, the article introduces SOC as a major computing paradigm as outlined in the rough chronology below:
Figure 3 - Rough timeline of the evolution of major Computing Paradigms dominating Computer Science Education
The University of Queensland presents a full semester course in Service Oriented Architecture.
Carnegie Mellon University also offers courses in SOA.
A search for "Service Oriented Architecture" University Course yielded approximately 800,000 results. It is therefore evident that significant investment in formal SOA education has been made by the academic community in recognition of SOA as a mainstream computing paradigm.
Common Sense Perspective
Businesses are fuelled by business processes, i.e. the process capital that defines the unique and differentiating way in which a business conducts day to day activities. Software and systems architectures that reach out to bring technology closer to business people that understand their process capital but not necessarily ICT can gain a better understanding of the ICT systems that support their business processes. SOA delivers on this promise as Business Process Management (BPM) is central to successful SOA adoption. In a SOA-centric enterprise, IT personnel are able to talk business processes to business people. This common understanding of business processes from both technology and business driver perspectives will fuel mass adoption of SOA as a next software engineering paradigm by delivering better business and IT alignment.
SOA and the concepts of Agility and Reuse
While platform and framework technology investments are almost always made on the back of perceived benefits such as increased reuse and agility gains, these benefits are always difficult to measure and quantify. At the same time common sense dictates that, with a rich Business Process Management (BPM) technology as an underpinning foundation of SOA, business should be able to adapt quicker to changing market circumstances by evolving business processes or to develop new ones. A better common understanding between business decision makers and IT technologists of the technology support for business processes also results in improved agility.
SOA, Cloud Computing and Software as a Service as indivisible terms
Whereas perhaps present mainstream adoption of cloud services is in the Infrastructure and Storage as a Service space, IT departments will increasingly rely on delivering business processes and services for internal consumers within an organisation. Common sense dictates that once SOA adoption has been achieved, the same principles apply to start offering business processes and services (Process as a Service) in the public cloud.
SOA and the Software as a Service (SaaS) Stack
SOA is about the development of ICT technology solutions as a collection of consumable services in a service asset repositories with real-world and well-understood effects. This therefore means that services should be conceptualised in the Xaas (Anything as a Service) stack.
Figure 4 - The XaaS Stack
Let's conceptualise the SaaS stack as a solution stack that can be used by SaaS adopters at any layer. As depicted in Figure 4, each layer represents an element of SaaS (Infrastructure, Storage, Database, Information, Process, Application, Integration, Security, Management/Governance and Testing). Each layer also represents usable services to business.
The true value of SOA is found in the exposure of Business Processes as a Service (Process as a Service layer) in which consumers access services of which the implementation is governed by well-defined business processes.
Towards the Dynamic Enterprise with SOA
In a SOA-centric IT organisation, the XaaS stack is utilised as depicted on the right. While XaaS vendors offer services at different levels in the stack, globetom is focusing on one of the key goals of SOA - delivering services to consumers using Process as a Service. This means that business processes are developed using BPM and advertised as services. These services could be internal to your organisation for consumption by internal customers or could easily branch out to be offered in the public cloud. Using integration with ESB-based internal consumption to access internal XaaS service layers, e.g. Database services, internal IT assets are orchestrated to deliver business process based services. At the same time a SOA-centric IT organisation can extend Integration seamlessly to consume partner services using mainstream consumption interfaces such as Web Service consumption.
The SOA paradigm can therefore be used as an application development style for internal application development to deliver services to internal consumers only. Extending service visibility and consumer access to the private cloud (perhaps for trading partner consumption) or over to the public cloud for mass consumer use becomes a natural extension of visibility and reach of services only and not a re-engineering exercise.
Key Business Benefits of SOA
According to the Open Group, the key benefits of SOA adoption are as follows:
Through providing the opportunity to consolidate redundant application functionality and decouple functionality from obsolete and increasingly costly applications while leveraging existing investments.
Structure business solutions based on a set of business and IT services in such a way as to facilitate the rapid restructuring and reconfiguration of the business processes and solutions that consume them.
Increasing Competitive Advantage
Provide the opportunity to enter into new markets and leverage existing business capabilities in new and innovative ways using a set of loosely-coupled IT services. Potentially increase market share and business value by offering new and better business services.
Deliver business-aligned solutions faster by allowing the business to decide on the key drivers of a solution and allowing IT to rapidly support and implement that direction.
Integrate across silo'ed solutions and organizations, reduce the physical number of systems, and enable consolidation of platforms under a program of -graceful transition‖ from legacy spaghetti dependencies to a more organized and integrated set of coexisting systems.
SOA enables organizations to better align IT to business goals, enabling the business to associate IT with capabilities that an organization wants to achieve in alignment with its strategic plan, leading to both sustained agility and re-use overtime.
The benefits can be further categorised as depicted in the diagram below by classifying benefits of SOA adoption in terms of IT, Business and shared benefits:
SOA adoption will be fuelled by massive cloud service adoption where organisation's CIOs will have to respond to disruptive market forces by integration with cloud service vendors to deliver new services. This can be coined as the "consumer agility challenge". In order to meet this challenge, SOA will be needed to use Business Process Management (BPM) and rapid systems integration capabilities to meet this demand.
At the same time businesses wanting to leverage a world-wide customer audience with online services in business-to-business and business-to-consumer arrangements will need the tools and internal IT process capital to rapidly build and deliver new services and to monetise these services in the cloud. Without SOA adoption this will not be possible as IT departments will be left with traditional software engineering challenges and perhaps spaghetti integration of service access channels with back-end applications. This can be coined as the "service provider agility challenge".
These challenges can definitely be overcome with a sound SOA adoption strategy and the paradigm shift that SOA adoption brings about with the main shift being to think about ICT technology delivery in the form of tangible business processes and services.
 SERVICE ORIENTED ARCHITECTURE (SOA) A NEW PARADIGM TO IMPLEMENT DYNAMIC E-BUSINESS SOLUTIONS, August 2006, Joseph Bih, Source: http://ubiquity.acm.org/article.cfm?id=1159403
 An Introductory Course on Service-Oriented Computing for High Schools, W.T. Tsai, Yinong Chen, Calvin Cheng, Xin, Sun, (School of Computing and Informatics), Gary Bitter, Mary White (College of Education), Arizona State University, Tempe, AZ, USA, Journal of Information Technology Education, Volume 7, 2008
 The Open Group, SOA Reference Architecture, ISBN: 1-937218-01-0, Document Number: C119, Published by The Open Group, November 2011.
Small teams are more effective. The general agreement is that anything from 5 to 12 is the 'right' small. But of course small teams will also have 'small' throughput - relatively speaking. So if your demand is X and the throughput of a small team is X/10, you probably need 10 teams to meet that demand. But more teams also mean more effort to coordinate and align their efforts in the same direction. So, the challenge is how to harness the power of small teams and yet orchestrate multiples of them...
May. 3, 2016 03:30 PM EDT Reads: 213
In the world of DevOps there are ‘known good practices’ – aka ‘patterns’ – and ‘known bad practices’ – aka ‘anti-patterns.' Many of these patterns and anti-patterns have been developed from real world experience, especially by the early adopters of DevOps theory; but many are more feasible in theory than in practice, especially for more recent entrants to the DevOps scene. In this power panel at @DevOpsSummit at 18th Cloud Expo, moderated by DevOps Conference Chair Andi Mann, panelists will dis...
May. 3, 2016 02:45 PM EDT Reads: 796
From the conception of Docker containers to the unfolding microservices revolution we see today, here is a brief history of what I like to call 'containerology'. In 2013, we were solidly in the monolithic application era. I had noticed that a growing amount of effort was going into deploying and configuring applications. As applications had grown in complexity and interdependency over the years, the effort to install and configure them was becoming significant. But the road did not end with a ...
May. 3, 2016 02:45 PM EDT Reads: 398
Much of the value of DevOps comes from a (renewed) focus on measurement, sharing, and continuous feedback loops. In increasingly complex DevOps workflows and environments, and especially in larger, regulated, or more crystallized organizations, these core concepts become even more critical. In his session at @DevOpsSummit at 18th Cloud Expo, Andi Mann, Chief Technology Advocate at Splunk, will show how, by focusing on 'metrics that matter,' you can provide objective, transparent, and meaningfu...
May. 3, 2016 02:30 PM EDT Reads: 908
In a crowded world of popular computer languages, platforms and ecosystems, Node.js is one of the hottest. According to w3techs.com, Node.js usage has gone up 241 percent in the last year alone. Retailers have taken notice and are implementing it on many levels. I am going to share the basics of Node.js, and discuss why retailers are using it to reduce page load times and improve server efficiency. I’ll talk about similar developments such as Docker and microservices, and look at several compani...
May. 3, 2016 02:00 PM EDT Reads: 394
Many private cloud projects were built to deliver self-service access to development and test resources. While those clouds delivered faster access to resources, they lacked visibility, control and security needed for production deployments. In their session at 18th Cloud Expo, Steve Anderson, Product Manager at BMC Software, and Rick Lefort, Principal Technical Marketing Consultant at BMC Software, will discuss how a cloud designed for production operations not only helps accelerate developer...
May. 3, 2016 01:15 PM EDT Reads: 1,199
You deployed your app with the Bluemix PaaS and it's gaining some serious traction, so it's time to make some tweaks. Did you design your application in a way that it can scale in the cloud? Were you even thinking about the cloud when you built the app? If not, chances are your app is going to break. Check out this webcast to learn various techniques for designing applications that will scale successfully in Bluemix, for the confidence you need to take your apps to the next level and beyond.
May. 3, 2016 12:15 PM EDT Reads: 1,582
SYS-CON Events announced today that Peak 10, Inc., a national IT infrastructure and cloud services provider, will exhibit at SYS-CON's 18th International Cloud Expo®, which will take place on June 7-9, 2016, at the Javits Center in New York City, NY. Peak 10 provides reliable, tailored data center and network services, cloud and managed services. Its solutions are designed to scale and adapt to customers’ changing business needs, enabling them to lower costs, improve performance and focus inter...
May. 3, 2016 12:00 PM EDT Reads: 1,350
With DevOps becoming more well-known and established practice in nearly every industry that delivers software, it is important to continually reassess its efficacy. This week’s top 10 includes a discussion on how the quick uptake of DevOps adoption in the enterprise has posed some serious challenges. Additionally, organizations who have taken the DevOps plunge must find ways to find, hire and keep their DevOps talent in order to keep the machine running smoothly.
May. 3, 2016 06:30 AM EDT Reads: 1,481
Wow, if you ever wanted to learn about Rugged DevOps (some call it DevSecOps), sit down for a spell with Shannon Lietz, Ian Allison and Scott Kennedy from Intuit. We discussed a number of important topics including internal war games, culture hacking, gamification of Rugged DevOps and starting as a small team. There are 100 gold nuggets in this conversation for novices and experts alike.
May. 3, 2016 06:15 AM EDT Reads: 883
The notion of customer journeys, of course, are central to the digital marketer’s playbook. Clearly, enterprises should focus their digital efforts on such journeys, as they represent customer interactions over time. But making customer journeys the centerpiece of the enterprise architecture, however, leaves more questions than answers. The challenge arises when EAs consider the context of the customer journey in the overall architecture as well as the architectural elements that make up each...
May. 3, 2016 03:30 AM EDT Reads: 2,010
Much of the discussion around cloud DevOps focuses on the speed with which companies need to get new code into production. This focus is important – because in an increasingly digital marketplace, new code enables new value propositions. New code is also often essential for maintaining competitive parity with market innovators. But new code doesn’t just have to deliver the functionality the business requires. It also has to behave well because the behavior of code in the cloud affects performan...
May. 3, 2016 03:00 AM EDT Reads: 1,444
In 2006, Martin Fowler posted his now famous essay on Continuous Integration. Looking back, what seemed revolutionary, radical or just plain crazy is now common, pedestrian and "just what you do." I love it. Back then, building and releasing software was a real pain. Integration was something you did at the end, after code complete, and we didn't know how long it would take. Some people may recall how we, as an industry, spent a massive amount of time integrating code from one team with another...
May. 3, 2016 12:45 AM EDT Reads: 1,050
As the software delivery industry continues to evolve and mature, the challenge of managing the growing list of the tools and processes becomes more daunting every day. Today, Application Lifecycle Management (ALM) platforms are proving most valuable by providing the governance, management and coordination for every stage of development, deployment and release. Recently, I spoke with Madison Moore at SD Times about the changing market and where ALM is headed.
May. 2, 2016 08:30 PM EDT Reads: 1,554
Struggling to keep up with increasing application demand? Learn how Platform as a Service (PaaS) can streamline application development processes and make resource management easy.
May. 2, 2016 08:30 PM EDT Reads: 2,180
If there is anything we have learned by now, is that every business paves their own unique path for releasing software- every pipeline, implementation and practices are a bit different, and DevOps comes in all shapes and sizes. Software delivery practices are often comprised of set of several complementing (or even competing) methodologies – such as leveraging Agile, DevOps and even a mix of ITIL, to create the combination that’s most suitable for your organization and that maximize your busines...
May. 2, 2016 07:45 PM EDT Reads: 1,903
The goal of any tech business worth its salt is to provide the best product or service to its clients in the most efficient and cost-effective way possible. This is just as true in the development of software products as it is in other product design services. Microservices, an app architecture style that leans mostly on independent, self-contained programs, are quickly becoming the new norm, so to speak. With this change comes a declining reliance on older SOAs like COBRA, a push toward more s...
May. 2, 2016 06:00 PM EDT Reads: 1,561
Digital means customer preferences and behavior are driving enterprise technology decisions to be sure, but let’s not forget our employees. After all, when we say customer, we mean customer writ large, including partners, supply chain participants, and yes, those salaried denizens whose daily labor forms the cornerstone of the enterprise. While your customers bask in the warm rays of your digital efforts, are your employees toiling away in the dark recesses of your enterprise, pecking data into...
May. 2, 2016 10:15 AM EDT Reads: 1,113
SYS-CON Events announced today that DatacenterDynamics has been named “Media Sponsor” of SYS-CON's 18th International Cloud Expo, which will take place on June 7–9, 2016, at the Javits Center in New York City, NY. DatacenterDynamics is a brand of DCD Group, a global B2B media and publishing company that develops products to help senior professionals in the world's most ICT dependent organizations make risk-based infrastructure and capacity decisions.
May. 2, 2016 06:30 AM EDT Reads: 2,570
Between the mockups and specs produced by analysts, and resulting applications built by developers, there exists a gulf where projects fail, costs spiral, and applications disappoint. Methodologies like Agile attempt to address this with intensified communication, with partial success but many limitations. In his session at 18th Cloud Expo, Charles Kendrick, CTO & Chief Architect at Isomorphic Software, will present a revolutionary model enabled by new technologies. Learn how business and devel...
May. 2, 2016 04:30 AM EDT Reads: 1,795