# I. Introduction n the world where everyone is using computers in day today life, Information Technology plays a crucial role in personal and the business environment. As much as they are used in fulfilling personal needs, they are deployed in the management, operational and the supporting processes in an organization, and hence it became technology centric organization [1]. IT suggests dealing with growing issues such as complexity, flexibility, and maintenance. These numerous issues led clients and vendors to adapt skills to handle various responsibilities that support the requirement for their business technologies. Service-Oriented Architecture (SOA) is a paradigm of modernized Information Technology. The design of SOA corresponds suggests shifting towards IT and its applications. As such, SOA is a referenced architecture adopted as a standard architecture [2]. In any organization the architecture can be scheme into two ways, one using the scope of the system and the other is using generalization. Figure [1] describes the relationship between the architecture types, where SOA represents the reference architecture which guides and constraints to the solution architecture. The way the reference architecture differs from others by its behavior; which is generic. On the other hand, the architecture points to the specific solution to solve the problem. The figure highlights the reference architecture of different scopes like Enterprise architecture, Project Architecture, Software Architecture, etc. In general, SOA indicates the paradigm of loosely coupled components or services to sustain the requirement for the system development and integration. It is a concept of designing the software and its architecture rather than perceive it as a technology. The basic thought behind this is to express a communication between software agents, which interchanges the messages between service providers and service clients. The clients consistently request the service for its execution from the service provider and in return, this service provider provides the services to the client. Therefore, the clients find the services from agents. Providers are responsible for publishing the services provided to the agents as shown in Figure 2 [3]. This approach towards designing applications using a set of components is considered a seamless contribution of the service coordination. Thus, SOA deployed to obtain services using a strategic framework for the construction of system operation inside and outside the organization [4]. Each service in this framework is specific for a distinct task. For example, Figure 3 shows the three different people working in a company handle their job in support of one another by giving the services to accomplish their tasks [5]. # III. Understanding The Services The service the basic element of SOA. It can resemble a product made by an organization. In order to utilize a service, an interaction between the services provider and consumers are required, clients, suppliers or their partners [24]. It is valuable to publish the services with its features so the clients get awareness about the services its cost. This service is characterized into three different features; namely contract, interface, and implementation [1]. ? Contract: The obligations of both clients and service providers. ? Interface: The way of utilizing the service. ? Implementation: The actual code running for the services. Given the long practice of using traditional distributed solutions, the implementation of SOA represents a new paradigm for organizations to deliver scalable, reliable and valuable services. It enables seamless communication between clients and providers. Table 1 illustrates the comparison between the traditional and SOA. V. Features And Benefits Of SOA SOA plays a vital role in the business. The architecture makes it easy for organizations to meet the on-demand requirements of the current changing market. Some of the features of architecture are summarized as [4,5]. ? Interoperability of services: The communication of services is always carried out through a set of predefined protocols. Communication mechanism can either be synchronous or asynchronous mechanism. ? Loosely coupled between the services: In the architecture, the interaction between the service client and service provider are loosely coupled, where the client calls the service without knowing the details on the side of the service provider. ? Message control: Application service layer in SOA allows the management to control the messages for the security purpose. ? Service Abstraction: This constructs the coordination of many services used for the designated process. ? Service Re-usability: The term 'Reuse' support the services through its orientation so it is a employed in the analysis and design process. It also benefits from reusing the components to reduce the redundancy [8]. ? Service Transparency: The services are designed to meet the need of the business process. This kind of effect in changing the designing of the business process is known as Agility. ? Service Discoverability: Where every service has to be identified and implicitly used upon needed. All these benefits for the SOA may be positioned into the following areas [8]: ? Business effectiveness: Where it deals with the agility, awareness of the market, competitive forces, process output and the deployment of the resources as per the business requirement. ? Cost efficiency: Where it deals with the cost reduction for the maintenance, the skills and work needed, improving the performance and the value of the platform ? Reduced Risk: There it deals with the quality of services. # VI. Implementation Of SOA Traditionally, tools such as CORBA, DCOM, and RPC were the dominating tools. However, all of these tools have some limitations such as the language specifications, implementation difficulty, etc. SOA suggests an architecture that is the structurally designed for deploying business processes bundled as services throughout its lifecycle. The services are agile according to the requirement changes of the business. As a result, there are three dimensions to consider when implementing SOA; namely, people, process and technology [9]. One of the appealing approach to implementing SOA is to deploy ESB, which is a software architecture model that delivers the essential services used for multifaceted architecture. ESB acts as the backbone that uses the technologies for the SOA implementation. Some of the main features of ESB are as follows: ? It monitors and controls the routing of messages between the services. ? It resolves the conflict between the communication service components. ? It keeps track of the implementation and versioning of services. ? It enables service such as event control, data modification, and planning, messaging, event queuing, and sorting, etc. Additionally, some of the technologies used to implement SOA [7] are ? Web Services: The loosely coupled software service, which is delivered over the internet technologies. # ? Web Service Definition Language (WSDL): The mechanism used for describing a web service, which is platform independent. ? Simple Object Access Protocol (SOAP): A kind of message formatting between the parties involved in a web service. # ? Extensible Markup Language (XML): The language used to transport data. Universal Description, Discovery, and Integration (UDDI): This is a registry that assists in registration and organization of the web service description on a searchable directory. # VII. SOA And Cloud Collaboration Emerging cloud computing technology highlights the creation of services on demand, and hence the communication between SOA and cloud computing becomes profound. As discussed earlier, SOA suggests loosely coupled services to deliver its functionalities. Every time a service is created, users do not require or depend on the knowledge of the way that the service was created. SOA exchanges the data deploying protocols such as SOAP and considering frameworks such as Representational State Transfer (REST). Could Computing, on the other hand, represents an infrastructure on which services can be exchanged and utilized. Thus, implementing SOA on a cloud environment, service consumers can deploy services only upon needed. # VIII. What Is Cloud Computing? Cloud computing resembles connected resources over a network and can be co-located on a public or a private network. It provides a scalable service for application, data, and storage [11]. Sometimes the notation is denoted by grid computing, utility computing and on-demand computing [12]. Computing resources nowadays represent a key pillar for organizations to deliver their services. In order to function profitably, they have to deploy these computing resources cost-effectively. Cloud computing suggests a feasible approach for sharing resources over the Internet that can be easily accessed and rented for by paying certain fees. Thus users can use services such as word processor, images and video, calendar and so on, over the Internet as shown in Figure 5. The aim goal of this paradigm is to maintain data or service availability and accessibility spanning time and location domains [13]. # IX. Cloud Computing Technologies There are certain technologies that contribute to cloud computing features such as flexibility, reliability and usability; namely, they are: # a) Virtualization This technology enables sharing a single application or resources among multiple users. It suggests assigning an indicator to that resource to be called upon required. Figure 6 This paradigm refers to a distributed computing layout where a group of computing facilities from different locations are connected together to accomplish a common task. The grid computing breaks this task into small pieces and those small pieces are connected via the grid as shown in Figure 8 [22]. # Figure 8: Grid Computing Architecture d) Utility Computing This type of computing is a fee model architecture. The users are charged upon their usage of the resources. Technologies like cloud computing, grid computing, and managed IT services are all derivatives of utility computing. # X. Cloud Infrastructure Components Cloud infrastructure is a collaborative deployment of several components such as the management server, deployment software, hypervisor, network, storage, and servers. Figure 9 shows interrelation of these cloud components [22]. # XI. Characteristics Of Cloud Computing The main features of Cloud Computing are summarized as follows [13][14][15]: 1. On-demand self-service: The feature allows consumers to access services whenever and wherever they desired to. Service retrieval, deployment, and release. This may take place automatically. # Pooling of resources: The resources are pooled together by the service provider to be available for the users. These resources might not be collocated. 3. Elasticity: This makes the nature of provisioning the resources rapid and automated. 4. Scalability: This feature makes the Cloud Computing more appealing as service utilization dictates the scale level at which the resources are offered. # XII. Deployment Model Deployment model is classified according to either the location or type of services provided [16].Based on the resource location, Could Computing is classified as: ? Public cloud: Where the services are publicly offered over the Internet. In this model, the service is charged as per the consumer's usage and is introduced and managed by the service provider. This model can also be known as external cloud [14]. ? Private cloud: The services in this model are limited to a specific group. The main difference between private and public could is that in the private cloud the data processing is held within the organization premises [13]. o The private cloud model can be further classified into two categories: On-premise private cloud: This type of private cloud where the organization uses its own cloud resources located within its own data center. Although this model promises controllable, it may lack some importance cloud features such as scalability and on-demand usage. o Externally hosted private cloud: This model provides some public could feature such as elasticity and scalability, and yet it doesn't allow for resource sharing. [11]. ? Figure 10 illustrates the deployment model [18] Figure10: Types of Cloud Computing On the other hand, and based on the services provided, Could Computing is denoted by a suffix "as a Service" as shown in Figure 11. SaaS suggests that the application is provided to the end users on demand. It implies that the installation of the software takes place on the cloud end rather than on the consumer's machine. Therefore, only the services are offered to consumers without any concern on the related infrastructure or perform ability metrics issues. This type of services gets charged per service usage. Figure 12 below shows the services being delivered from the service provider to the end consumers. Some of examples of SaaS is the Google Apps, Microsoft suite, Face book [19]. # Figure12: SaaS framework b) PaaS Platform as a service is another form of service deployment where developers access a platform resource to build the designated applications. These platforms can enterprise to commercial such as .Net or Java environment without installing or downloading the software. Other famous examples of PaaS are Google App Engine, Force.com, and Microsoft Azure [13]. # c) Infrastructure as a service (IaaS) IaaS is a deployment service model that delivers infrastructure such as computing processing power, data storage, or networking facilities to consumers. This model be referred to as the Hardware as a Service (HaaS). Instead of possessing the hardware, the service providers allow consumers to rent those hardware based on their requirement needs. As shown in Figure 13 [19], some of resources consumers may rent are memory, storage, network, and servers. # XIV. Conclusions In this paper, we presented SOA and Cloud Computing. SOA has some features that enables some of could computing features. Could computing offers an infinite flexible and scalable resources environment while SOA provides adequate connection between the consumers and services. SOA contributes to cloud computing to emerge. Cloud computing suggests paradigm shift from traditional distributed architecture to shared IT environment. It changes the way to deliver the services to the business. ![Each architecture is summarized as ? Enterprise Architecture: Where the architecture deals with the business process and the IT infrastructure focusing on the integration and standardization needs of the organization operating model. ? Project Architecture: Where the architecture states which module of solution architecture has to be considered depending on the project and its scope. ? Software Architecture: Where the architecture defines the formation of the software. It is mapped into a particular kind of solution architecture, project architecture.](image-2.png "") 1![Figure 1: Architecture Model II. Service-Oriented Architecture](image-3.png "Figure 1 :") 2![Figure 2: Service-Oriented Architecture model](image-4.png "Figure 2 :") 3![Figure 3: Orientation of Service IV. Need For Service Orientation](image-5.png "Figure 3 :") 5![Figure 5: Cloud Computing Concept](image-6.png "Figure 5 :") ![shows the architecture of the virtualized Cloud Model [22].](image-7.png "") 6![Figure 6: Virtualized Cloud Architecture b) SOAThis technology uses applications as a service provided to another application independently of provider, product, or technology. Figure7shows the architecture of SOA[22].](image-8.png "Figure 6 :") 7![Figure 7: SOA Architecture c) Grid ComputingThis paradigm refers to a distributed computing layout where a group of computing facilities from different locations are connected together to accomplish](image-9.png "Figure 7 :") 9![Figure 9: Cloud Infrastructure Components](image-10.png "Figure 9 :") ![Hybrid cloud: This type of cloud infrastructure is a mixture of both public cloud and private cloud, where it makes the possibilities to move the data or the application from one cloud to another in much more flexible manner. ? Community cloud: This type of cloud meets the demand of multiple consumers sharing the common interest and can be held internally or externally in the cloud [17].](image-11.png "") ![Figure11: Types of Cloud Services a) Software as a Service (SaaS)SaaS suggests that the application is provided to the end users on demand. It implies that the installation of the software takes place on the cloud end rather than on the consumer's machine. Therefore, only the services are offered to consumers without any concern on the related infrastructure or perform ability](image-12.png "Figure11:") 13![Figure 13: HaaS Framework XIII. Cloud Computing Benefits Cloud computing offers wide range of benefits to consumers, out of which some are listed below [12, 13]: 1. Reduction in Cost: Consumers utilize services without purchasing any hardware or software. No maintenance and support cost are incurred as well. They only get charged per their usage of the services.](image-13.png "Figure 13 :") 1 2 © 2018 Global JournalsFrom Service-Oriented Architecture to Cloud Computing * SOA made Simple RonaldLonnekedikmans Van Luttikhuizen 2012 Packt Publishing * Service Oriented Architecture-An Integeration Blueprint GuidoSchmutz PeterWelkenbach DanielLiebhart 2010 Packt Publishing ISBN * Service-oriented Computing-Concepts, Characteristics and Directions MikePPapazoglou Proceeding of the Fourth International Conference on Web Information Systems Engineering of IEEE eeding of the Fourth International Conference on Web Information Systems Engineering of IEEE 2003 * Cloud Computing and SOA convergence Research XiaolongYang HuimingZhang Fifth International Symposium on Computational Intelligence and Design of IEEE 2012 * SOA-Principles of Service Design ThomasErl 2007 Prentice Hall * Types of Services in SOA * Introduction to Service Oriented Architecture MingLian March 2012 * The Business case for SOA Webmethods 2005 * SOA-Service Oriented Architecture MikeLiu July 2009 * Cloud Computing -An overview Torryarris * Moving to the Cloud -An Introduction to Cloud Computing in Government CDavid Wyld 2009 E-Government series * Cloud Computing Basic JSrinivas KReddy DrAMoizqyser International Journal of Advanced Research in Computer and Communication Engineering 1 5 July 2012 * Cloud Computing: Characteristics and Deployment Approaches ZaighamMahmood IEEE 11th International Conference on Computer and Information Technology 2011. 2011 cit * PeterMell TimothyGrance NIST SP-800 -145 The NIST Definition of Cloud Computing September, 2011 * Cloud Computing-Types of Cloud GoranCandrlic Community Cloud -Gartner IT Glossary March, 2013 published in cloud * Types of Cloud Computing JoshAmes December, 2012 Cloud-Computing-Private-Public-and-Hybrid-Clouds * Cloud Computing: A Practical Approach TobyVelte 2009 * Cloud Computing and SOA Convergence in Your Enterprise-A Step-by-Step Guide DavidSLinthicum September 2009 * Cloud Computing Basics PaulFDittmann DeepakRao AlChoyna Tutorialspoint, "Cloud Computing -Quick Reference Guide February 2010. 22 Association of Information Technology Professionals * Cloud Computing Realigns Role of Service Oriented Architecture Jp July, 2011 * BenMargolis SOA for the Business Developer-Concepts, BPEL and SCA Mc press 2007