Slide 1: Service Oriented Architecture (SOA)
Farhana Zulkernine
Slide 2: Outline
Service Oriented Architecture (SOA):
Definition, Characteristics Differences: SOA vs. existing Model Driven Architecture (MDA) SOA Implementation Framework and Enterprise Service Bus (ESB) Benefits and reasons for not using SOA Contribution towards self management Example of SOA framework Summary
09/05/07 Service-Oriented Architecture (SOA) 2
Slide 3: Service Oriented Architecture
Service-oriented architecture (SOA) is an
approach to loosely coupled, protocol independent, standards-based distributed computing where software resources available on the network are considered as Services. SOA is believed to become the future enterprise technology solution that promises the agility and flexibility the business users have been looking for by leveraging the integration process through composition of the services spanning multiple enterprises.
09/05/07 Service-Oriented Architecture (SOA) 3
Slide 4: Characteristics
The software components in a SOA are services
based on standard protocols. Services in SOA have minimum amount of interdependencies. Communication infrastructure used within an SOA should be designed to be independent of the underlying protocol layer. Offers coarse-grained business services, as opposed to fine-grained software-oriented function calls. Uses service granularity to provide effective composition, encapsulation and management of services.
Service-Oriented Architecture (SOA) 4
09/05/07
Slide 5: Service Granularity
Service granularity refers to the scope of
functionality a service exposes. Fine-grained services provide a small amount of businessprocess usefulness, such as basic data access. Coarse-grained services are constructed from fine-grained services that are intelligently structured to meet specific business needs.
09/05/07
Service-Oriented Architecture (SOA)
5
Slide 6: Service Composition
09/05/07
Service-Oriented Architecture (SOA)
6
Slide 7: Service Management
There are three levels of service management
Management of the services and their interfaces Management of the underlying system Management of the interaction between the services and the underlying system
09/05/07
Service-Oriented Architecture (SOA)
7
Slide 8: SOA Metamodel
SOA is a form of enterprise architecture and can be represented using models. SOA metamodel is a model that contains the following three models.
09/05/07
Service-Oriented Architecture (SOA)
8
Slide 9: Differences: SOA vs. Existing Model Driven Architecture (MDA)
SOA is an alternative model to the more
traditionally tightly-coupled object-oriented models like Common Object Request Broker Architecture (CORBA) and Distributed Component Object Model (DCOM). In SOA individual services can be build with objectoriented designs but the overall design of SOA is service-oriented.
09/05/07
Service-Oriented Architecture (SOA)
9
Slide 10: Differences (cont.)
SOA today differs in the usage of a more generic
standard-based interface language XML (eXtensible Markup Language) used in Web Services Definition Language (WSDL) compared to the older Interface Definition Language (IDL) found in CORBA. SOA is based on the concept of using services that can communicate through standard protocols like SOAP allowing a more loosely coupled architecture. In older models objects were more tightly coupled due to the usage of vendor specific communication standards.
09/05/07 Service-Oriented Architecture (SOA) 10
Slide 11: Differences (cont.)
IBM’s MQseries is yet another message-
oriented middleware system but it lacks the organized workflow definition required for the services to interoperate. SOA supports the composition of coarse-grained services from fine-grained services to provide a business solution in an easily deployable and usable manner. For interoperability of services spanning multiple enterprises, SOA should provide service level agreements and operational policies.
Service-Oriented Architecture (SOA) 11
09/05/07
Slide 12: Web Services and SOA
Web Services are an open standards-based
way of creating and offering SOAs. Web Services are able to exchange structured documents that contain different amounts of information, as well as information about that information, known as metadata. In other words, Web Services can be coarse grained. Such coarse granularity is one of the most important features of SOAs.
09/05/07 Service-Oriented Architecture (SOA) 12
Slide 13: SOA Implementation Framework
Service-Oriented Architecture Implementation
Framework (SOAIF) provides the run-time deployment infrastructure for SOA across the network by incorporating all the software required to develop, deploy, secure, manage, and extend service-oriented processes and solutions.
09/05/07
Service-Oriented Architecture (SOA)
13
Slide 14: SOA Implementation Framework
09/05/07
Service-Oriented Architecture (SOA)
14
Slide 15: Enterprise Service Bus (ESB)
ESB is the backbone of SOA that acts as a
message broker providing a message queuing system using industry standard specifications for messaging such as SOAP, or JMS (Java Message Service). Expert Sally Hudson, an IDC analyst, describes the Enterprise Service Bus as an open standards-based messaging means designed to provide interoperability between larger-grained applications and other components via simple standard adapters and interfaces.
09/05/07 Service-Oriented Architecture (SOA) 15
Slide 16: ESB Architecture
ERP .NET Web Services
Transformation (XSLT)
JCA
SOAP/ HTTP
SOAP/ HTTP
Connection Layer
Reliable Asynchronous Secure Messaging
Communication Layer
SOAP/ HTTP C/C++ Legacy Application
JMS J2EE
Connection Layer
09/05/07
Service-Oriented Architecture (SOA)
16
Slide 17: Re-architecture to SOA
Encapsulate software components,
applications and underlying systems with Web Services interfaces Compose (virtualizing) these fine-grained functional Web Services into coarse-grained business services
09/05/07
Service-Oriented Architecture (SOA)
17
Slide 18: Benefits
Provides location independence: Services need
not be associated with a particular system on a particular network Protocol-independent communication framework renders code reusability Offers better adaptability and faster response rate to changing business requirements Allows easier application development, run-time deployment and better service management
09/05/07 Service-Oriented Architecture (SOA) 18
Slide 19: Benefits (cont.)
Loosely coupled system architecture allows
easy integration by composition of applications, processes, or more complex services from other less complex services Provides authentication and authorization of Service consumers, and all security functionality via Services interfaces rather than tightly-coupled mechanisms Allows service consumers (ex. Web Services) to find and connect to available Services dynamically
09/05/07 Service-Oriented Architecture (SOA) 19
Slide 20: Why Not SOA
For a stable or homogeneous enterprise IT
environment, SOA may not be important or cost effective to implement. If an organization is not offering software functionality as services to external parties or not using external services, which require flexibility and standard-based accessibility, SOA may not be useful. SOA is not desirable in case of real time requirements because SOA relies on loosely coupled asynchronous communication.
09/05/07 Service-Oriented Architecture (SOA) 20
Slide 21: Self Management Using SOA
Web Services now lack workflow support,
asynchronous communication and standards for efficient interoperability, dynamic integration and deployment which can be provided using SOA. SOA leverages the management functionality of the services in its implementation framework which can be effectively used to provide better self-management for the services within the infrastructure.
09/05/07 Service-Oriented Architecture (SOA) 21
Slide 22: Example of SOAIF
Rogue Wave® Platform X from Quovadx, Inc.
provides a comprehensive platform for assembling and orchestrating service-oriented applications from pre-existing applications and services. Fiorano Enterprise Service Bus™ combines the power of a standards-based SOA infrastructure with easy-to-use tools for the deployment of distributed workflows across heterogeneous networks. It allows using existing legacy and packaged applications to synthesize new distributed integration solutions, and provides the basic standards-based, distributed connectivity backbone within the enterprise to allow interoperability of heterogeneous applications.
09/05/07 Service-Oriented Architecture (SOA) 22
Slide 23: Summary
SOA, definition, characteristics Differences with existing MDA Advantage/disadvantage SOAIF, ESB Benefits and reasons for not using SOA How SOA can leverage self management Example – Platform X Summary
09/05/07 Service-Oriented Architecture (SOA) 23
Slide 24: References
Jeff Hanson, Coarse-grained Interfaces Enable Service Composition in SOA, JavaOne, August 29, 2003 ZapThink White Paper, The Complete Vision of Service-Oriented Enterprise Management, December 2003 Jason Bloomberg, The SOA Implementation Framework, www.zapthink.com, April 2004 Jason Bloomberg, When Not to Use an SOA, www.zapthink.com IBM White Paper, New to SOA and Web Services, www.DeveloperWorks.com
Service-Oriented Architecture (SOA) 24
09/05/07
Slide 25: References (cont.)
Meta Group White Paper, Practical
Approaches to Service-Oriented Architecture, November 2003 Kishore Channabasavaiah and Kerrie Holly, IBM White Paper, Migrating to a ServiceOriented Architecture, April 2004
09/05/07
Service-Oriented Architecture (SOA)
25