The good news and the great news about the move to a service-based cloudy world

secret_paopix

Service Oriented Architecture (SOA) market size is expected to reach 16.4 billion USD by 2020, according to ResearchMoz. “The 2014 study has 679 pages, 250 tables and figures. Worldwide markets are poised to achieve significant growth as the cloud computing for utility infrastructure and the smart phone communications systems for apps are put in place.”

Moreover, back in 2012 TechNavio released a report that predicts the global service oriented architecture (SOA) governance market to grow at a compounded annual growth rate (CAGR) of 10.35% over the period 2011-2015. One of the key factors contributing to this market growth is the automation of SOA governance, the report states. Cloud governance is also driving this market — the SOA governance tools and processes learned over the past decade are now underpinning cloud projects as they scale across enterprises.

Much of this growth, according to both reports, will come from cloud computing, and some big data growth as well. Clouds are service-based, thus the use of SOA is pretty much the way you’ll get to the cloud solutions. By default, SOA is a big deal again. As IT continues to figure this out, we’re seeing market growth that no one is really noticing, but it’s there nonetheless.

SOA has become somewhat of a bad or over-played buzzword. While heavily promoted about 10 years ago, now it’s faded into the background behind cloud computing and big data. However, those in the know understand that cloud computing and SOA are much the same thing. Now many enterprises are forced to look back at the fundamentals of SOA when it’s time to design and build cloud-based systems.

The biggest myth of about SOA is that it’s something you buy. It’s actually something you do—architecture. While the early drivers of SOA (myself included) tried to make this clear to the world, somehow SOA as a concept was high-jacked by the marketing departments of large enterprise software companies. That’s when SOA became enterprise service buses (ESBs), application servers, and service management tools.

The fact of the matter is that the use of services within enterprises was not hampered by missing technology components, but largely by the lack of understanding of what service-based solutions meant, and how they should have been built and deployed. Many considered SOA a largely failed concept, but the fact of the matter is that it never failed and has never left us. The technology may have come up short, considering that it was typically over-priced and underwhelming. However, the SOA patterns have proven to be bullet proof, if implemented correctly.

The use of service-based architecture is pretty much all cloud computing is these days. I just got back from Cloud Slam 2014 this week, where the talk was about what’s important to build cloud-based systems. The use of APIs, or services, always comes up as the only way to access cloud-based platforms, and thus by default they are all building service-based architectures. Let’s just call them SOAs…even though few use the S-word any more.

The good news is, SOA continues to evolve. The way we defined and leveraged SOA approaches 10 years ago are a bit different from the way we do them today when using cloud. Specifically, today we have:

  • The increasing use of infrastructure services, such as storage, compute, and resource provisioning. Clouds allow you to access these services using Web services or APIs. Indeed, most cloud-based services are invoked to manage services, but they are service-based architectures at the end of the day.
  • The increasing use of analytical services, which are really data services that sit in front of large data stores to provide static or dynamic analytical behaviors. For example, determining the risk of a financial trade, or even finding fraud within a massive database.
  • The ability to better manage services as tiers. An example would be managing fine-grained services that are exposed by IaaS providers, such as storage, at the lowest or most primitive tier. Or, managing services as groups, such as provisioning or de-provisioning groups of services that support a critical application. Managing groups of services typically requires a resource governance tool, or cloud management platforms (CMPs), which are now used to manage multi-cloud architecture. Keep in mind that CMPs are really about service governance, but typically manage logical groupings of services.
  • The services are much more light weight, typically using REST. Back in the day, it was SOAP (in many cases), which was way too heavy for use in widely distributed systems. Let’s not forget that bandwidth has increased significantly, as has the cost and the power of servers.
  • The rise in the importance and use of service catalogs. Today we have cloud services catalogs, typically found in CMP or other governance systems, that are built from the ground up to track the use of public and private cloud services, as well as services from traditional systems. These end up being the “center of the universe,” in terms of where to manage services and abstract those complexities away from users and from applications that leverage these cloud and non-cloud services.

So, what do we do now? Nothing. Just go with it.

It really does not matter if you call the current use of service-based approaches SOA or blue cheese, it’s all about breaking down clouds, systems, databases, and devices as sets of services, and secure, govern, and track those services from a single directory system or cloud services catalog. By addressing systems as set of services, we’re able to mix and match these services within applications or business processes to solve business problems.

What’s important here is that the use of services allows us to quickly create solutions, which adds a great deal of value to the business. However, these services also allow us to change the solutions, as needed, to provide enterprises with the added advantage of business agility. It’s no mystery that the core values of cloud computing are business agility and time-to-market, and those values come directly from the service-oriented aspects of cloud computing. Now do you understand the links a bit better?

This is a story that is still being written. The use of services is nothing new. SOA is certainly nothing new. Even aspects of cloud computing are nothing new. What’s new is the value that all of this generates for us, and how SOA’s very effective and efficient way of doing architecture really ‘made’ the cloud. Perhaps we’re coming full circle.