You are on page 1of 7

From Service Oriented Architecture to Cloud

S.B. Goyal*, Aarti Goyal*, Ram Chatterjee*, Neha Singhal@, Ekta Tayal#

MRCE, Faridabad, Haryana RRCE, Banglore, Karnatka, # AIMT, Greater Noida, Uttar Pradesh goyalsb@yahoo.com
@

ABSTRACT Today, cloud is recognized as a key transformational trend in IT. It share resources among multiple applications; help organizations reduce IT management complexity and skill requirements; speed up time to market; and carry both existing and emerging, data-intensive workloads. Service oriented architecture is basically an architecture framework that can be used in designing and implementing a cloud in real life and to build a shared platform & can be used to provide the envisaged services. Service oriented architecture and clouds are complementary to each other and can be pursued either independently or concurrently. In this paper, we address the move from software oriented architecture to cloud and its practical feasibility. KEYWORDS Service oriented computing, cloud computing, service oriented architecture

1. Introduction
Service oriented computing [1] is nothing new. We are used to with the purpose, concept and move to a) mainframe, b) client and server architecture, c) cloud model. Important issue is that why is the come back of the computing model that was the driving force over 30-35 years ago? Because re-definition of data [14] and data is important to computer system and computer processes the data. Size of the data is becoming too large compared to the amount of data can be stored on personal computer. Today, we can see all of these as a) data sizes are large, b) data changes frequently, c) data backup requirement, d) data is distributed, e) data sharing needs a common mode of exchange, f) data processing requirement, g) speed of Network, h) data format is quit different organization to organization and situation to situation etc. for example, google maps, you tube. Job portals etc. The internet itself is a vast source of data. We can found data for every possible thing you can imagine, which is not practically possible to store all these data in a single centralized place, otherwise no need of internet. In its present state, Internet is not manageable. We can found abundant source of duplicate and redundant information over the internet. Search engine relies on technologies that does not read human mind or human desire and therefore will never be perfect. If a search

engine (google, yahoo etc.) could be built that can read all the pages of the all the documents and websites on the Internet and interpreted them just like human, and eliminate duplicate, redundant, fake contents, there would not have been a need for any other kind of computing, because the search engine could answer anything. But, this is not yet possible. This problem is handled by Service Oriented Computing, (SOC) [3],[4]. SOC is more manageable due to the fact that services respond to specific requests by clients. Unlike search engines, which scan through practically all websites which is registered into the search engine, SOC is scanned by clients from service registries. A service registry is a database of all the various kinds of services offered by service providers. A search engine can search these registries as well, but the utility of the service registry is to do search (discover) for specific services and then consume them usually by service consumers. This is why services should be discoverable and discoverability is an important concept in Service Oriented Architecture, (SOA) [5], a concept similar to search engines, which discovers new sites from links. Service Oriented Architecture, (SOA) is a term frequently used without in depth knowledge of what it is and what it is not. Users get frequently confused

[13], [14] like SOA, SaaS, Cloud computing, Web services, Web 2.0, WOA, POA and so on (see Fig. 1). We are concentrating in this paper on SOA, SaaS and cloud computing.

computing and its characteristics, cloud services. In section 3, different perspectives of service oriented architecture and software as a service. In section 4, move to SOA to Cloud i.e. SOA and cloud work together.

2. Cloud
Today, the cloud has gone from being a hypothetical concept in analyst information to headline news. It has suffered from a great agreement of industry and confusion, with many vendors attaching a cloud label to services that are probably closer to oncomputing or hosted applications. demand Researchers build number of computing models to define the meaning of cloud. Every organization have their own IT infrastructure. But, really, we need of this infrastructure? Can we build the concept to more cost effective to utilize IT infrastructure that is provided by an outside body? Can it is possible to supply all the required processing power (IT infrastructure) at a lower cost than could be achieved by organizations internally? To achieve this objective, researchers introduced number of terms like infrastructure-as-a-service (IAS) [9], utility computing (UC)[10]. These two terms are highly coupled to each other. UC is the model for an outside organization providing IT infrastructure in a self service model, where the consumer is using IAS.

Fig.1: Position of Software as a service and Software Oriented Architecture Apart of data, Information Technology, IT [6] is growing and moving from a traditional-support system to a more contemporary and business-oriented services model. Today, demand is to have anything, everything and anytime as a service that can be a per-usage basis. In this situation towards requirements for agility, optimized usage, instant response and availability, combined with the ever-green mantra of cost cutting, have fuelled the growth of service-oriented architecture to software as a service. Earlier, many such models exist like utility computing, grid computing and new one is cloud computing. Cloud provides everything as a service, aiming to provide a more agile, scalable, flexible, efficient and costeffective infrastructure and application platform to the customer. But, it is only possible due to the existence of SOA. SOA [7],[8] is another important concept which influenced IT architectures. It promotes the use of shared model of resources-process, applications and data. It allows and exposes to well defined services/ information at and then abstracts then to modular layers, which helps in application development, reuse and integration of component. In this paper, we move to SOA/ SaaS to cloud or cloud to SOA/ SaaS. Layout of this paper is as follows. In section 2, we explain the meaning of cloud, cloud

2.1 Cloud Computing


Cloud Computing, (CC) [11] is a special case of UC. CC can define as IT atmosphere-encompassing all essential elements of the full stack of IT and network products with supporting services that enables the development, delivery and utilization of cloud services. Cloud computing is any IT resource (including storage, database, application development, application services, etc.) that exists outside of the firewall and may be leveraged by enterprise IT over the Internet. The core idea behind cloud computing is that its much cheaper and more efficient to leverage these types of resources as-a-service, paying as you go and as you need them, rather than buying more hardware and software for the data center ahead of the need. Today, we can draw several dimensions [12] of Information Technology, IT like a) Infrastructure Paradigm, b) Technology abstractions, c) Application

domains, and d) Service models. These dimensions are shown in Fig.2.

Fig.4: Several activities offered by cloud computing CC must hold following three essential characteristics for the purposeful implementation:

Fig.2: IT dimensions with examples and position of cloud computing Cloud computing could impact these entire dimensions from the Consumer world as well as Enterprise world perspectives as shown in Fig. 2. IT offers consumable software & services usually deliver over the internet, mobile phone and other ubiquitous channels. Enterprise world and consumer world creates by Real world. Business model offer software & services to Enterprise world and Consumer world as shown in Fig.3.

Flexibility with scaling It can handle very small to large processing tasks, and can be adjusted in reallife to match on-demand. For example, an organization needs 5 servers in one day and 4,000 the next day. The cloud must handle such a dynamically varying requests/ requirements. b) Concept of pay for use: It must offer the capability to pay for use of IT infrastructure on a shortterm basis on demand/ need and release them when they are idle & no longer useful to handle the significant cost-effective benefits. E.g. need of advance processor for the hour or big storage space for the single day. c) Efficiency with scaling: It must offer pooled
computing power, performing like a single large machine. It must share tasks across this pool reduces costs and especially improves processing speeds.

2.2 Cloud Services


Are Cloud Services (CS) [11] are different from cloud computing? Yes. These are a specific type of Software-as-a-Service. CS provide the automated processes that are delivered using CC. CS can usefully be thought of as being made up of different distinct layers as follows (see Fig.5): Fig.3: IT manage Consumer world and Enterprise world We can utilize CC for number of activities like off-line access, online resources, 3rd party integration, outsource process, online storage, platforms, online office, online collaboration. Shared resources, shared calendars etc (see Fig.4).

Fig.5: Different layers of cloud service

a) Initial layer-Computing Power and Resources: i.e. Clod Computing: It is all


about computing power and IT resources that enterprises require to deliver a application or service, storage, processing, network and servers. Some CS may use all of these components; others can use one or two. This layer is the same as CC. b) Middle layer-Cloud Platform: It enables that enterprise to add specific services that rely on the CC layer (initial layer) for their power. Enterprises can use different platforms for different situations. For example, a platform supplied by a company such as IBM to manage access to all technology services in the Initial layer of the cloud, such as Capegemini to provide industry specific services for processes in the final layer. c) Fig.6: Examples of Cloud Computing Services and Vendors A SOA is a set of principles and methodologies for designing and developing software in the form of interoperable services and these services are welldefined business functionalities that are built as software components for reusability. SOA solutions help IT organizations to migrate to an infrastructure composed of different services that can be orchestrated, assembled, and re-used. SOA is a relate to new term service as it relates to a software service has been around since at least the early 1990s. We found that SOA is a means of designing and building software by applying the service oriented computing principles to software solutions and treated as a manufacturing model. SaaS is a means of receiving software through an outside party over the internet to your business similar to electricity power or mobile phone utilities and treated as a distributed and sales model. SOA is an architectural model in which the smallest unit of logic is a service. SaaS is a means of delivering software as services over the internet to its subscribers. So, SOA (an architectural strategy) and SaaS (a business model) cannot be directly compared.

Final Layer-Cloud Services: It is most


important layer where businesses can differentiate themselves in a service oriented architecture (SOA) and cloud environmentby hiring particular services, adding value and selling them, IT companies can create enormous flexibility and efficiency in competitive advantage manner.

We can found many X-as-a-service like Internetbased service, Infrastructure as a service, Platform as a service, Software as a service for managing & Provisioning virtualization, configuration, application software etc and corresponding vendors are shown in Fig. 6.

3. Service Oriented Architecture and Software as a Service


Main objective of SOA and SaaS to get the maximum benefits of cost reduction and agility. It is highly recommended to integrate both together.

4. SOA and Cloud Computing Together


We can bring the SOA to cloud for the ultimate goal to create a cloud of services (see Fig. 7). This is two steps process: a) Virtualized the services and b) Manage the virtualization

Cloud

SOA

Overlapping between Cloud & SOA 1.Re-use of design & process 2.Architectural patterns 3.Shared models services

1.Ondemand computing 2.Pay usage Fig.7: SOA traverse through an cloud When we look at CC in very plain terms, solutions usually constitute a set of virtualized resources and capabilities that allow those resources to be managed. Virtualizing the services in a SOA is a logical first step then toward moving to a cloud-enabled SOA. There are solutions in the marketplace today, the WebSphere CloudBurst Appliance being one, which provide users a virtual packaging that includes an operating system, service infrastructure, and service. In effect, the service becomes a virtualized resource, thus enabling the next very important step in bringing the cloud to a SOA. Virtualization alone does not a cloud make, so after users successfully virtualize the services in their SOA, capabilities to manage such virtualization need to be put in place. Here bring cloud-like characteristics to the service virtualization. These include the ability to create, deploy, dynamically allocate, and track usage of these virtualized services. This results in an elastic cloud and one in which usage across the cloud can be tracked to facilitate the utility pricing model so often associated with clouds. Per

1.Consistenc y 2.Shared services 3.Services orientation 4.Services integration 5.Abstraction

3.Utility computing 4.Multioccupancy/ shared model 5.X-as-aservice (XaaS)

4.Standardization 5.Service provider consumer model

Table 1: Overlap Between Cloud and SOA SOA defines architectural principles for enterprising systems by defining interfaces, processes and communication between various sub-systems, by focusing on predictable service behaviours and patterns. SOA encompasses a repository of service components and processes that a service consumer can invoke. Another side, at a higher level of encapsulation, SOA is a set of services, termed as web services, which are standards such as REST, WSDL, SOAP etc. SOA generates the principles of component reuse and a well defined relationship between a service-consumer and service provider. SOA enables the recurring use of existing application functionality and attempts to share common services, information, and process across the organization. We can see the overlap between cloud and SOA in Table 1`.

4.1 Overlap between Cloud and SOA


Cloud allows business to expand or contact the IT footprint, based on immediate demand and provides a platform for developers to build customized applications. In CC, software are provided as web services, infrastructure components are provided as hardware elements, applications are exposed as APIs to outer world i.e. consumer or enterprise world. These elements build a complete or partial IT landscape on cloud. The success of a cloud model depends on its ability to multi-tenant combined with the necessary information security. Paste table

4.2 Success Factors for SOA and Cloud together


There are some success factors for SOA and cloud work together for the successful execution of application as follows: a.

Requirements Gathering: It is very


important to understand the complete implications of a change (traditional to SOA or Cloud) and desired & risk of undesired outcomes.

b.

Skills and Training: Moving from SOA to cloud or moving from cloud to SOA will use of new processes, new ways of thinking, and new technologies. It needs new approaches, skills, and technology training is the largest challenge an organization will face. So, it is important to understand and programming techniques and standards to introduce new business process in an organization. It is important that SOA and cloud are not seen as technologies in search of the problem. Both joined together and covering and providing new business market, new products etc. Security: Moving from traditional IT architecture to centralized IT architecture using cloud can open up a business to new risks. It is important to forever investigate who is responsible for securing the cloud and whether their security matches the organizations expectations in a cloud environment. If not, the organization should work with an associate/ partner to ensure that all areas of security across the architecture are sufficient. Utilizing specific techniques within SOA can improve security such as using an intermediary for message and run-time policy enforcement to ensure that communications are secure. Scalability: This is very important consideration in cloud computing environment. It is important to know where the breakpoints are in terms of scalability of services, for services that an organization hosts internally, evaluate service performance is something that should be done whenever a new or modified service utilized by a new group of users and recommended the consideration of the performance testing, even an organization is already using CS or not before any new applications are launched. Accessibility All cloud services are invoked using the standards and protocols that SOA utilizes. The cloud is accessible through a SOA interface. Visibility It is only possible to find the
service that closely meets a companys needs with SOA tools and techniques.

g. Extensibility In case, organisation cannot


find a service that exactly meets its needs. It may require to put multiple services together, and change the operation of a service. CS can be changed and customized using SOA tools and techniques. h.

c.

Matching expectations Most important consideration of cloud computing is provided a way that matches the expectation of the user. e is a need of clear agreement that specify the responsibilities of each party (service provider and service user). If any organisation uses the cloud, every stakeholder should know how to work with contract services, and the best way to develop this knowledge is by using SOA as the organizationals internal architecture in addition to the interface to the cloud. Devotion to standards There is need to
follow the same standards and best practices by the companys applications and cloud service. So, it is important that a company utilizes SOA in its organization. SOA policy management techniques validate that an organization follow appropriate cloud standards.

i.

5. Conclusion
A cloud can be built and managed without the actual SOA practices, and also SOA can work without cloud. SOA and cloud computing are complementary activities; both will play important roles in IT planning for senior leadership teams for years to come. Cloud computing and SOA can be pursued independently or concurrently, where cloud computings platform and storage service offerings can provide a value-added underpinning for SOA efforts. Cloud computing does not replace SOA or the use of distributed the successful use of cloud computing is more about people and processes than it is about technology and hype. This is about changing the way we think about software and systems, and how they are delivered. Simply put, SOA is what you do, and cloud computing is how you do it. The links between SOA and cloud computing are strong. The relationship between cloud computing and SOA is that cloud computing provides IT resources you can leverage on demand, including resources that host data, services, and processes. Thus you have the ability to extend your SOA outside of the enterprise firewall to cloud

d.

e.

f.

computing providers, seeking the benefits of cloud computing. SOA can solve the architectural issues within cloud. Cloud will change the way of enterprise to buy and develop software.

14. What really is SOA. A comparison with Cloud Computing, Web 2.0, SaaS, WOA, Web Services, PaaS and other soalib.com/doc/whitepaper/SoalibWhitePaper_SOAJar gon.pdf

References
1. Draft NIST Working Definition of Cloud Computing v15, http://csrc.nist.gov/ groups/SNS/cloud-computing/cloud-def-v15.doc 2.Wikipedia, http://en.wikipedia.org/wiki/ Cloud_computing [Accessed July 20, 2009] 3. Above the Clouds: A Berkeley View of Cloud Computing, Technical Report No. UCB/EECS-200928, Feb 10, 2009 4. Security Guidance for Critical Areas of Focus in Cloud Computing, Cloud Security Alliance, April 2009 5. Nicholas Carr, The Big Switch: Rewiring the World, from Edison to Google, W.W. Norton & Co., 2008, ISBN 0393062287 6. Open Cloud Consortium, http://www. opencloudconsortium.org 7. OpenCrowd Cloud Taxonomy, http://www. opencrowd.com/assets/images/views/views_cloud-taxlrg.png 8. Above the Clouds: A Berkeley View of Cloud Computing www.eecs.berkeley.edu/ Pubs/TechRpts/2009/EECS-2009-28.pdf Similar 9. The Cloud: Creating an Architecture for Today and for the Future www.capgemini.com 10. Understanding the Concept of Cloud Computing and its Advantages http://computinged.com/cloudcomputing/understanding-the-concept-of-cloudcomputing-and-its-advantages/ 11. TCS and Cloud Computing http://www.tcs.com/resources/white_papers/Pages/TC S_Cloud_Computing.aspx 12. Service-Oriented Architecture (SOA) series. Systems Engineering at MITRE. www.mitre.org/work/tech_papers/tech_papers_09/.../0 9_0743.pdfSimilar 13. Connecting the dots: Cloud www.infosys.com/cloud/resourcecenter/documents/connecting-dots.pdf and SOA

You might also like