How Service Oriented Architecture Ties Cloud Computing – it is a design paradigm intended for creation of logical units those are individually modeled solution so can used be collectively and repetitively to support the implementation of specific strategic goals and benefits associated with the service-oriented computing. We described Service oriented architecture (SOA) before in a separate publication. But how Service Oriented Architecture ties Cloud Computing is a kind of foggy matter to the most. In this article we have tried to break the difficult practical implementation in some easy way.
How Service Oriented Architecture Ties Cloud Computing : The Basics
The principle of service-oriented-computing evolves then towards the idea of “-as-a-service” such as applications, platforms, networking, storage and computing devices. The different nature of the two entities can conceptualize Cloud Computing as the platform on which it is possible but not required to develop software systems by adhering to the principles of SOA. In this regard, the web services are a possible proposal. The decoupling in the application of the two concepts is evident, for example taking the opportunity to develop applications in the cloud computing (SaaS) with a design of monolithic type, as you engineer a software system from a service-oriented cloud.
These points we basically explained diagrammatically in another article. How Service Oriented Architecture Ties Cloud Computing in real, demands to know something more.
How Service Oriented Architecture Ties Cloud Computing
In a typical scenario, the service provider is responsible for implementing the service defining a service description, concretely realized through a register or a repository such as UDDI (Universal Description Discovery and Integration). This component allows the availability of the service. The service client queries the service discovery agency to retrieve the service description of interest in order to report (bind) the service implementation.
The concept of weak binding (loose coupling) is of fundamental importance in the context SOA as it identifies a fundamental characteristic. In a generic situation of weak connection elements react to each other, but are kept separate and identifiable and the bond that unites them may be intermittent, limited, unimportant and / or with little effect on each other. Adherence to this principle prevents that communication to take place by direct reference, but rather suggesting towards a logical message exchange over the definition of appropriate protocols, thus ensuring the autonomy of services involved.
The use of SOA ultimately allows to develop distributed software systems by assembling services of dynamically variable size. In a dynamic scenario of continuous modification of the boundaries of the organization and business processes of enterprises the flexibility provided by SOA has particular advantages, allowing the user to quickly adapt to the needs. The reuse of services in different application contexts allows the user to develop software systems which are more agile, while the principles of autonomy and weak binding limit the interference between components reducing maintenance costs and the overall complexity of the system.
SOA defines an architecture that abstracts from the specific choices in terms of protocols and technologies. WSDL – Web Service Definition Language – for the definition of service descriptions and SOAP – Simple Object Access Protocol – for the message transport are some of the most significant examples ( non-binding) of the protocols used.
It is important to note that there is a substantial difference between the concepts of SOA and Web Services. The web service is a concrete implementation of a generic service-oriented architectural model, of which the SOA represents a particular instance. Consequently, the possible existence of web services that do not adhere fully to the specific principles of SOA.