Using Enterprise Architecture to achieve competitive advantage through IT. Are you successful?

« ‘SOA Security’–How much is enough? | Main | Business Architecture Pitfalls »

Has Cloud Computing given SOA another big push?[Part 1]

by Brahma Acharya

SOA has now become main stream. Organizations are slowly aligning themselves to implement SOA to realize the benefits. And then suddenly we have "Cloud Computing"; the new kid in the block. It has generated unprecedented hype. Gartner’s Senior Analyst Ben Pring has mentioned that "Cloud computing has become the phrase du joir". It is difficult not giving enough attention to it. Not to miss the wave, we see cloud vendors pop up every day providing a variety of services. It is being discussed in almost all the IT boardrooms. And rightly so, people have started to realize that this is not just any buzz. It promises to do to IT, what Internet did to business in the early 90’s; a paradigm shift.

Simplistically put, Cloud is about Hardware and Software outsourcing. You don’t care about managing and procuring either of the two. If dissected properly Cloud is a bunch of services delivered over the internet or extranet. Everything from Infrastructure (IaaS) to Platform (PaaS) to Software (SaaS) is exposed as discrete services. Though the concept has been there for quite some time, the current technology advancement in virtualization, grid computing and network reliability has made it a reality.

So with all these in background,

  • Where does SOA come into picture?
  • Does SOA really get affected by this new wave around Cloud?
  • Do the two converge?
  • Is it more important than ever to design applications on the tenets of SOA?
  • The answer to all these is a resounding YES.

    SO what is ‘Architecture’ in SOA – Can we call it Legacy already?

    A typical SOA architecture consists of a UI layer, a BPM layer (Process orchestration), a Service and business component layer and the data access layer (Fig-1). They are all deployed in their own infrastructure within the enterprise. The core of SOA lies in discrete services and processes. Services have explicit boundaries and solve independent business functionality. A process can consist of many of the services in a well orchestrated manner. As an example, an e-commerce application which is designed on SOA principles can consist of a recommendation service, a search service, a catalogue service, a shopping cart service, a payment service and a check-out service (In reality there are 100s of services in an e-commerce application). A buying process can then be developed utilizing a catalog service, a shopping cart service and a check-out service.

    Fig 1: Typical SOA architecture

    Fig 1: Typical SOA architecture

    So why move to Cloud?

    So we have designed our application based on SOA principles. We have achieved flexibility, re-usability, agility and greater maintainability. So why this cloud thing? It turns out that depending on how the architecture is designed we can benefit from the following Cloud features:

    • Cloud has significant cost benefits: This probably is the crux. Hosting applications or part of it on Cloud will significantly reduce the CAPEX and OPEX of an organization. It also reduces the lead time significantly to procure and deploy software and hardware. Important to note that it might not be possible to host entire applications on the Cloud. It would be unwise to run the mission critical applications on Cloud in entirety. There could be security or privacy issues. Being on an SOA platform gives us the flexibility to host part of the application on Cloud. What needs to be hosted on Cloud depends completely on the requirement. For ex: The entire BPM layer can be hosted on "Appian Anywhere" provided by Appian, the BPM SaaS provider. Again the services and their corresponding data can be hosted in Amazon’s EC2 and Amazon’s SimpleDB.

    • Cloud provides better performance with parallel execution: A Cloud platform provides the ability to run jobs in parallel. Platform like Hadoop and Map/Reduce are commonly used in a Cloud platform which can effectively run the jobs in parallel. Properly designed services, if independent of each other can be run in parallel. Also the individual services can be run in parallel if required. For ex: The search and recommendation services can be easily run in parallel.

    • Better SLA’s and better reliability: There seems to be some misconceptions around the stability of the Cloud services. People tend to think that Clouds are less reliable and prone to data hacking and data loss. On the contrary as and when the big players like Microsoft and Google get into this space, they bring in with them the same technology that runs their massive data centers. Most of the cloud providers now provide 3-9s reliability; 99.9% uptime. Though there have been some glitches it is bound to get better with time.

    • Better Agility: Moving into Cloud increases the already agile SOA based applications at multiple levels. New services can be bought from specialist SaaS vendors and can be integrated within no time. A B2C portal can run burst of digital marketing campaign without worrying about software or hardware.

    • Better Scalability: Auto-scaling or Elasticity is an inherent feature of a Cloud platform. The on-demand model will allow application to scale up infinitely. As such seasonal peak loads and a sudden burst in usage is handled transparently by the Cloud.Fig: SOA+Cloud

    • Fig 2: SOA + Cloud 

       

      It is important to note that having followed an SOA based architecture it becomes easy to move various aspects of the application to a Cloud. Figure 2 depicts one scenario of a hybrid environment of SOA and Cloud. The permutations and combinations are literally limitless.

      In the Part 2 of this blog, I will talk about the design considerations  when you are looking to exploit the Cloud while doing SOA.

           

TrackBack

TrackBack URL for this entry:
http://www.infosysblogs.com/apps/mt-tb.cgi/5107

Post a comment

(If you haven't left a comment here before, you may need to be approved by the site owner before your comment will appear. Until then, it won't appear on the entry. Thanks for waiting.)

Please key in the two words you see in the box to validate your identity as an authentic user and reduce spam.

Subscribe to this blog's feed

Follow us on

Blogger Profiles

Off the Shelf: The Retail & CPG blog from Infosys - Visit

Infosys on Twitter