Enterprises need Information Exchange across different systems (Internal or External) in a fast, reliable and secure way. The last decade has seen more compelling reasons to do so due to the advent of Social Media, digitization of products and increasing consumerization on planet Earth… even Mars!! Enterprises are being forced to act by the race of mass-market and digitization in our current era. This is sure to only increase.
For as long as integration has been an issue, there have been various techniques or styles to solve integration requirements.
Service-Oriented Architecture (SOA) has been a prominent one used in the last decade. The last 5-6 years has seen a rise in the use of REST and API Management – this help to manage services effectively. These have been widely accepted by enterprises and they have helped SOA adoption as it is now easier for Enterprises to maintain an effective and optimal Services Catalog.
In this article, we will see some details on how REST and API Management extends SOA adoption.
SOA Adoption in Past
Anatomy of a typical SOA enabled Applications Landscape looks like the diagram depicted below, it might vary but the key components seem more or less similar.
SOA-based applications has been thoroughly discussed and implemented in IT and business corridors over past few years. Conceptually teams agreed to it and the benefits associated with it but achieving the desired business gains out of it got mixed responses. There were many reasons; to cite just a few of them:-
- Enterprises with a suite of legacy applications and having already incurred good technical debt found it difficult to make the business case positive with SOA Adoption initially.
- Tool support from SOA vendors were more IT-driven than Business especially tooling around Service Registry and Service Usage.
- Services consumption was limited and needed good IT know-how as Service Contracts were too verbose and lack of sandbox environments to test them quickly etc. induced less acceptance.
- Different tools sets for different components from the same vendor resulting in higher total cost of ownership.
REST & API Management Blockbuster
REST and API Management came as nice option for Data Integration and Service Management in the last couple of years. It became popular like a blockbuster as there were live examples of large scale enterprise applications implementing the same like Google, Facebook, Twitter and others. This was in contrast to SOA where such references in public domain were limited. REST and API Management came at the right time when Smartphones and Tablet based apps started to be a must have for every Enterprise.
Service Catalog, Service Discovery and Governance were very much simplified vis-a-vie SOA tool sets. REST being lightweight, less verbose and reusing HTTP infra enabled easy and fast adoption.
Reference Open Bank Project and API GrowthSource:http://www.slideshare.net/TESOBE/open-bank-projectsocialopendatach01
API Adoption Trend as per Programmable Web shows a very steep rise. Source: Programmable Web (http://www.programmableweb.com/api-research)
Let’s see some of the reasons why REST and API Adoption has been liked by Enterprises.
It is possible to know about the API usage, traffic, likes or dislikes of an API as governance and monitoring tools are built in from day one. In the particular case where API needs to decommission or new versioned are required to be released it can be done with API Management tools.
APIs works on a self-service paradigm. Developers or business teams can easily consume APIs once published without much dependency on the Service Provider. This is in contrast to many ESB platforms which do not allow for ease of Services Discovery and Adoption.
Ease of Calculating ROI
It is relatively easier for an API Service Provider to know the Business Value depending on the usage and traffic. It has been difficult in an SOA toolset to calculate the same or come to an agreement to same.
Venn View between REST+API and SOA
There has been lot of discussion whether REST+API is a replacement for SOA or both are totally different or one contains another.
There are valid explanations to each one of them depending on how it has been interpreted and implemented in a particular context, however, there certainly is a synergy between both. Services Available on SOA Platform can be made discoverable and monitored with help of REST and API Management in an effective way. Key SOA principles like Reusability, Statelessness and Discoverable can be implemented with an API Management infrastructure.
It is imperative that both REST+API Management and SOA can co-exist and mutually benefit each other.
“Services Designed for Business by IT, Developed by IT and Managed by IT” has given way to “Services Designed by Business, Developed by IT and Managed by Business”, with advent of REST and API Management.
Main IT Vendors have also acknowledged REST and API Management. IBM for example has included one of their products Advanced ESB Datapower to be part of the API Gateway Solution. Microsoft acquired Apiphany API Solution, Intel acquired Mashery, CA acquired Layer7 are some of the examples showing that API Management has become an integral part of overall solution provided by IT Vendors.
API are turning out to be the contract supported by backend services built on a SOA platform. It is “API First with SOA” mantra now for enterprises.