Service Oriented
Architecture (SOA)
Farhana Zulkernine
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
11/10/2011 Service-Oriented Architecture (SOA) 2
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.
11/10/2011 Service-Oriented Architecture (SOA) 3
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.
11/10/2011 Service-Oriented Architecture (SOA) 4
Service Granularity
Service granularity refers to the scope of
functionality a service exposes. Fine-grained
services provide a small amount of business-
process usefulness, such as basic data
access. Coarse-grained services are
constructed from fine-grained services that
are intelligently structured to meet specific
business needs.
11/10/2011 Service-Oriented Architecture (SOA) 5
Service Composition
Jeff Hanson, Coarse-grained Interfaces Enable Service Composition in SOA, JavaOne, August 29, 2003
11/10/2011 Service-Oriented Architecture (SOA) 6
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
11/10/2011 Service-Oriented Architecture (SOA) 7
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.
Jason Bloomberg, The SOA Implementation Framework, www.zapthink.com, April 2004
11/10/2011 Service-Oriented Architecture (SOA) 8
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 object-
oriented designs but the overall design of
SOA is service-oriented.
11/10/2011 Service-Oriented Architecture (SOA) 9
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.
11/10/2011 Service-Oriented Architecture (SOA) 10
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.
11/10/2011 Service-Oriented Architecture (SOA) 11
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.
11/10/2011 Service-Oriented Architecture (SOA) 12
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.
11/10/2011 Service-Oriented Architecture (SOA) 13
SOA Implementation Framework
Service-Oriented Architecture 2004
Jason Bloomberg, The SOA Implementation Framework, www.zapthink.com, April(SOA)
11/10/2011 14
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.
11/10/2011 Service-Oriented Architecture (SOA) 15
ESB Architecture
ERP .NET Web Services
Transformation SOAP/ SOAP/ Connection Layer
(XSLT) JCA HTTP HTTP
Communication Layer
Reliable Asynchronous Secure Messaging
SOAP/ Connection Layer
HTTP JMS
C/C++ Legacy J2EE
Application
11/10/2011 Service-Oriented Architecture (SOA) 16
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
11/10/2011 Service-Oriented Architecture (SOA) 17
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
11/10/2011 Service-Oriented Architecture (SOA) 18
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
11/10/2011 Service-Oriented Architecture (SOA) 19
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.
11/10/2011 Service-Oriented Architecture (SOA) 20
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.
11/10/2011 Service-Oriented Architecture (SOA) 21
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.
11/10/2011 Service-Oriented Architecture (SOA) 22
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
11/10/2011 Service-Oriented Architecture (SOA) 23
References
1. Jeff Hanson, Coarse-grained Interfaces Enable
Service Composition in SOA, JavaOne, August 29,
2003
2. ZapThink White Paper, The Complete Vision of
Service-Oriented Enterprise Management,
December 2003
3. Jason Bloomberg, The SOA Implementation
Framework, www.zapthink.com, April 2004
4. Jason Bloomberg, When Not to Use an SOA,
www.zapthink.com
5. IBM White Paper, New to SOA and Web Services,
www.DeveloperWorks.com
11/10/2011 Service-Oriented Architecture (SOA) 24
References (cont.)
6. Meta Group White Paper, Practical
Approaches to Service-Oriented
Architecture, November 2003
7. Kishore Channabasavaiah and Kerrie Holly,
IBM White Paper, Migrating to a Service-
Oriented Architecture, April 2004
11/10/2011 Service-Oriented Architecture (SOA) 25