From SOA to Cloud

download From SOA to Cloud

of 7

Transcript of From SOA to Cloud

  • 7/31/2019 From SOA to Cloud

    1/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 [email protected]

    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 notpractically 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 OrientedComputing, (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 anddiscoverability 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

  • 7/31/2019 From SOA to Cloud

    2/7

    [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.

    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-orientedarchitecture 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 cost-

    effective 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

    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. CloudToday, 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 cloudlabel to services that are probably closer to on-demand computing or hosted applications.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.

    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 ofresources 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

  • 7/31/2019 From SOA to Cloud

    3/7

    domains, and d) Service models. These dimensions are

    shown in Fig.2.

    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.

    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.4: Several activities offered by cloud computing

    CC must hold following three essential characteristics

    for the purposeful implementation:

    Flexibility with scaling It can handle very smallto large processing tasks, and can be adjusted in real-

    life 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 varyingrequests/ requirements.

    b) Concept of pay for use: It must offer thecapability to pay for use of IT infrastructure on a short-

    term 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 pooledcomputing 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):

  • 7/31/2019 From SOA to Cloud

    4/7

    Fig.5: Different layers of cloud service

    a) Initial layer-Computing Power andResources: i.e. Clod Computing: It is allabout computing power and IT resources that

    enterprises require to deliver a application or

    service, storage, processing, network andservers. 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: Itenables 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 alltechnology services in the Initial layer of the

    cloud, such as Capegemini to provideindustry specific services for processes in

    the final layer.

    c) Final Layer-Cloud Services:It is mostimportant layer where businesses can

    differentiate themselves in a service oriented

    architecture (SOA) and cloud environment-

    by 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 Internet-based 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.

    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 well-

    defined business functionalities that are built as

    software components for reusability. SOA solutions

    help IT organizations to migrate to an infrastructurecomposed 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.

    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

  • 7/31/2019 From SOA to Cloud

    5/7

    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 virtualizedresource, thus enabling thenextvery 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.

    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 oncloud. The success of a cloud model depends on its

    ability to multi-tenant combined with the necessary

    information security.

    Paste table

    CloudSOA Overlapping

    between Cloud &

    SOA

    1.On-

    demand

    computing

    2.Pay Per

    usage

    3.Utility

    computing

    4.Multi-

    occupancy/

    shared

    model

    5.X-as-a-

    service(XaaS)

    1.Consistenc

    y

    2.Shared

    services

    3.Services

    orientation

    4.Services

    integration

    5.Abstraction

    1.Re-use of design

    & process

    2.Architectural

    patterns

    3.Shared services

    models

    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 componentreuse 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.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 veryimportant to understand the completeimplications of a change (traditional to SOA

    or Cloud) and desired & risk of undesired

    outcomes.

  • 7/31/2019 From SOA to Cloud

    6/7

    b. Skills and Training: Moving from SOAto 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 andprogramming 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.

    c. Security: Moving from traditional ITarchitecture 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 andwhether 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.

    d. Scalability: This is very importantconsideration in cloud computingenvironment. 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.

    e. Accessibility All cloud services areinvoked using the standards and protocols thatSOA utilizes. The cloud is accessible through

    a SOA interface.

    f. Visibility It is only possible to find theservice that closely meets a companys needs

    with SOA tools and techniques.

    g. Extensibility In case, organisation cannotfind 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. Matching expectations Most importantconsideration 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.

    i. Devotion to standards There is need tofollow 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.

    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 andhype. 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 linksbetween SOAand cloud computing are strong. The relationshipbetween 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

  • 7/31/2019 From SOA to Cloud

    7/7

    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.

    References

    1. Draft NIST Working Definition of CloudComputing 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-2009-

    28, 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-tax-

    lrg.png

    8. Above the Clouds: A Berkeley View of Cloud

    Computing www.eecs.berkeley.edu/

    Pubs/TechRpts/2009/EECS-2009-28.pdfSimilar

    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/cloud-

    computing/understanding-the-concept-of-cloud-

    computing-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 and SOA

    www.infosys.com/cloud/resource-

    center/documents/connecting-dots.pdf

    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

    http://csrc.nist.gov/http://en.wikipedia.org/wiki/http://www/http://www/http://www.eecs.berkeley.edu/http://www.google.co.in/search?hl=en&biw=1280&bih=705&q=related:www.eecs.berkeley.edu/Pubs/TechRpts/2009/EECS-2009-28.pdf+above+the+clouds+a+berkeley+view+of+cloud+computing&tbo=1&sa=X&ei=IZJeT_-tM6KfiAey9LXaBw&sqi=2&ved=0CDAQHzAAhttp://www.capgemini.com/http://computinged.com/cloud-computing/understanding-the-concept-of-cloud-computing-and-its-advantages/http://computinged.com/cloud-computing/understanding-the-concept-of-cloud-computing-and-its-advantages/http://computinged.com/cloud-computing/understanding-the-concept-of-cloud-computing-and-its-advantages/http://computinged.com/cloud-computing/understanding-the-concept-of-cloud-computing-and-its-advantages/http://computinged.com/cloud-computing/understanding-the-concept-of-cloud-computing-and-its-advantages/http://www.google.co.in/search?hl=en&biw=739&bih=175&q=related:www.mitre.org/work/tech_papers/tech_papers_09/09_0743/09_0743.pdf+service-oriented+architecture++(SOA)+series+cloud+computing+and+soa+geoffrey+raines&tbo=1&sa=X&ei=IJReT4qUBJCciAelxKm9Bw&ved=0CCsQHzAAhttp://www.infosys.com/cloud/resource-center/documents/connecting-dots.pdfhttp://www.infosys.com/cloud/resource-center/documents/connecting-dots.pdfhttp://www.infosys.com/cloud/resource-center/documents/connecting-dots.pdfhttp://www.infosys.com/cloud/resource-center/documents/connecting-dots.pdfhttp://www.infosys.com/cloud/resource-center/documents/connecting-dots.pdfhttp://www.infosys.com/cloud/resource-center/documents/connecting-dots.pdfhttp://www.google.co.in/search?hl=en&biw=739&bih=175&q=related:www.mitre.org/work/tech_papers/tech_papers_09/09_0743/09_0743.pdf+service-oriented+architecture++(SOA)+series+cloud+computing+and+soa+geoffrey+raines&tbo=1&sa=X&ei=IJReT4qUBJCciAelxKm9Bw&ved=0CCsQHzAAhttp://computinged.com/cloud-computing/understanding-the-concept-of-cloud-computing-and-its-advantages/http://computinged.com/cloud-computing/understanding-the-concept-of-cloud-computing-and-its-advantages/http://computinged.com/cloud-computing/understanding-the-concept-of-cloud-computing-and-its-advantages/http://computinged.com/cloud-computing/understanding-the-concept-of-cloud-computing-and-its-advantages/http://computinged.com/cloud-computing/understanding-the-concept-of-cloud-computing-and-its-advantages/http://www.capgemini.com/http://www.google.co.in/search?hl=en&biw=1280&bih=705&q=related:www.eecs.berkeley.edu/Pubs/TechRpts/2009/EECS-2009-28.pdf+above+the+clouds+a+berkeley+view+of+cloud+computing&tbo=1&sa=X&ei=IZJeT_-tM6KfiAey9LXaBw&sqi=2&ved=0CDAQHzAAhttp://www.eecs.berkeley.edu/http://www/http://www/http://en.wikipedia.org/wiki/http://csrc.nist.gov/