What is SOA?

advertisement
May 27, 2010
ISM 158
Guest Lecture
SOA
Virendra Galotra
What is SOA?
SOA – Service Oriented Architecture is an
Architecture for building applications as a
loosely coupled black box components
orchestrated to deliver a well defined service
level of service by linking together business
process
• In computing a service-oriented
architecture (SOA) is a flexible set of
design principles used during the phases of
systems development and integration
• A deployed SOA-based architecture will
provide a loosely-integrated suite of services
that can be used within multiple business
domains
SOA in Enterprises
• SOA defines how to integrate widely disparate applications for
a world that is Web based and uses multiple implementation
platforms
– Rather than defining an API, SOA defines the interface in terms of
protocols and functionality
– An endpoint is the entry point for such an SOA implementation
• Enterprises use Service-orientation as loose coupling of
services with operating systems, and other technologies that
underlie applications
• The SOA services and their corresponding consumers
communicate with each other by passing data in a welldefined, shared format, or by coordinating an activity between
two or more services
Simple to SOA
Simple Example of S/W Architecture
• An Order processing application
•Customer placing orders thru internet
• Browser
• Web Server
• The Order processing App
• The DB server
• The DB
Internet
Browser
Browser
Web
Web
Server
Server
Order
Process
Processsing
Orders
DB
DB
Server
Server
Data
Base
Simple to SOA
Simple Example of SOA
• An Order processing application
•Customer placing orders thru internet
• Browser
• Web Server
• The Order processing App
• The DB server
• The DB
• Credit Checking
•App at two levels:
• A business Service Level
describes the functions and how
they interact
• An Implementation point of
view
Internet
Browser
Browser
Web
Server
Process
Orders
Credit
Checking
DB
Server
Data
Base
Problems that complicate SOA
Problems and how they are resolved by SOA
• Keep Business Logic
and Plumbing Separate
• You don’t start from
Scratch
• Application Logic
creeps into the Business
layer
• Coordinating the
components can be tricky
Business
Service Layer
Process
Orders
Credit
Checking
(s/w Components with
Specific business
Functions)
Plumbing
Layer
(Components that
support the business
service using actual
Computer resources)
Invoicing
Application
Presentation
layer
Data
Service
(Web Server)
(DB Server)
Problems that complicate SOA
Problems and how they are resolved by SOA
• You don’t start from
Scratch
• Coordinating the
components can be tricky
Business
Service Layer
Process
Orders
Credit
Checking
(s/w Components with
Specific business
Functions)
Plumbing
Layer
Presentation
layer
(Components that
support the business
service using actual
Computer resources)
Adapter
Invoicing
Service
(Web Server)
Data
Service
(DB Server)
SOA Components
• Enterprise Service Bus
• SOA Registry & Repository
• Business process Orch Mgr
• Service Broker
• SOA Service Manager
Each component have a role to
play, both Independently and
with each other
GOAL: Create an environment
where all these components work
Together to improve the flow of
business process.
Resulting in Dependable and guaranteed service levels
SOA Architecture
This concept is based on an
architectural style that defines an
interaction model between three
primary parties:
–
The service provider, who publishes a service
description and provides the implementation
for the service,
– a service consumer, who can either use the
uniform resource identifier (URI) for the
service description directly or can find the
service description in a service registry and
bind and invoke the service.
– The service broker provides and maintains the
service registry, although nowadays public
registries are not in vogue
Service-oriented architecture is an architectural
discipline that centers on the notion that IT
assets are described and exposed as services.
These services can then be composed in a
loosely coupled fashion into higher-level
business processes, which provide business
in the face of IT heterogeneity.
•
Conceptual model of a SOA architectural style
SOA Architecture
Functioning of SOA Service Manager
SOA Service Manager –
Active if any service is active with
in SOA i.e. 24x7
• Service Broker’s message to
Service Mgr
–
•
Service
Broker
1
New business process is threaded
and started
2
Service Mgr consults registry
–
–
–
To get full details
Set up monitoring s/w for necessary
components
Delegates the job to SLA monitoring
3
SOA
Registry
SOA
Service
Manager
4
Infrastructure
Infrastructure
Infrastructure
Infrastructure
Infrastructure
Infrastructure
SLA
Monitoring
Adapte
r
Business
App 1
Adapte
r
Business
App 2
Performance reporting
Adapte
r
Business
App 3
SOA Conductor
SOA Service Manager (SSM)
•
•
•
•
Master conductor
Grand choreographer
Traffic Cop
All around central point of
control responsible for all
under the hood SOA
orchestration
• Interacts with
infrastructure
• Abstracts the SOA
services from the
technology that they run
on
• Takes care of any end-toend service for
performance issues
• Responsible for ensuring
the service levels
– Using the report from
monitoring agents
SOA Concepts
• Service-oriented modeling is a service-oriented
analysis and design (SOAD) process for
modeling, analyzing, designing, and producing a
SOA that aligns with business analysis,
processes, and goals
• High level approach :
– You decide what you intend to build, namely a SOA and
its layers
– Then describe how to build the SOA by discussing the
main activities and techniques that you need to create a
SOA
Service Oriented Modeling
•
The service-oriented modeling and architecture method
Service Oriented Modeling
• Identification
– domain decomposition – Top down
– Existing asset analysis – Bottom Up
– goal-service modeling – middle out technique
• Specification
– The details of the component that implement the services are
specified:
– Data; Rules; Services; Configurable profile; Variations
• Realization
– the software that realizes a given service must be selected or
custom built
– Other options: integration, transformation, subscription and
outsourcing of parts of the functionality using web services
– Other realization decisions - security; management & monitoring
Example: SOA Arch Template for
enterprises
The layers of a SOA
The template for your SOA
architecture document:
•Scope
•Operational systems layer
•Enterprise components layer
• Services layer
•Business process and
composition layer
•Access or presentation layer
•Integration layer
Addl. Elements for SOA
•
•
•
•
•
Adoption and maturity models
Assessments
Strategy and planning activities
Governance
Implementation of best-practices
Mapping the business process
Business Process
(Left to Right)
below
Feasibility Study
Business process
Discovery and
requirement
Capture
Business process
Modeling
Business process
Prototype
Build
SOA Testing
Business Process
Implementation
SOA Governance
SOA Governance
• Governance meta model
SOA Governance
• A sample list of business principles:
– Standardize processes and technologies wherever possible.
– Alignment and responsiveness to negotiated business principles.
• The following could be derived from those IT principles:
– Architectural integrity
– Responsive, flexible, and extendible infrastructure
– Rapid and efficient deployment of applications
• The IT principles can be mapped to the business principles as
follows:
– Architectural integrity (the first IT principle) provides for standardized
processes and technologies (the first business principle) while rapid and
efficient deployment of applications (the third IT principle) promotes
alignment and responsiveness to negotiated business principles (the
second business principle).
SOA Governance
• Some guiding SOA principles that drive the service model
could be:
– Compliance to standards that are industry-specific as well as cross
organizational
– Service identification and categorization
– Service provisioning
– Service monitoring and tracking
– Capability of services to be composed in order to realize different business
services
– The SOA principles also influence the IT principles. While creating the IT
and SOA principles, the members of the governance council should align
them with how IT proposes to support the enterprise's desired operating
model. Above and beyond creating the IT and SOA principles, it is also the
council's responsibility to see to it that they are properly exercised across
the enterprise.
SOA adoption areas
• Clouds pushing
SOA adoption
• We find all four
variants used by
businesses in
practice
• Discussion: why
would IT choose
one option over
another?
Onpremise
Dedicated
Shared
Linking On
Premise
service to
SaaS
Offpremise
SOA Adoption
SOA - Key value propositions
• Enables changing the
business process
• increasing business
agility
• reducing integration
expense
• Overall cost reduction
• Acquisitions
• Without focusing
underlying technology
plumbing
• reduction of business
risk
• increasing asset reuse
Available SOA products
• Oracle Fusion Middle
ware kit
• IBM SOA suites
• JaxView
• HP SOA center
• Microsoft SOA products
• http://www.oracle.com/techn
ology/products/soa/index.ht
ml
• IBM.com/SOA_Solutions
• http://www.managedmethod
s.com/
Case Study: Cigna
Cigna Group Insurance – Disability, Life and Accident Insurance
• Common Challenge of IT and
Business working together
• Cigna wanted to have shift on
how it viewed its customers
• Challenges:
• Solution: SOA
• Think like a business person
helped foster a successful (ITBusiness) partnership
• Shift of focus from corporate
to individual
• Traditionally supported
employers
• Need to Change Infrastructure
/ Architecture to support
employee centric business
view
• to move incrementally away
from legacy to introduce new
services enablement
Case Study: Cigna
To Solve the business problem - Need to bring the thought
process up a level from services and develop a business
focused enterprise level architecture
Approach
• Work with Business directly
• Service built with extensibility
• Message Centric approach
 Mapped 1000 Biz functions into more
than dozen enterprise services
 Met business on a regular basis
 Participated in Business planning and
strategy meetings
 Understood the business issue
 IT emerged as a value add partner
with Business
 Service to meet today’s requirement
and evolve for tomorrow’s needs
 A service design where attributes can
be added without endangering the
backward compatibility, updating the
service interface schema
Case Study: Cigna
To Solve the business problem - Need to bring the thought
process up a level from services and develop a business
focused enterprise level architecture
Approach
• Capability mapping and
modeling approach
– Business Function – several input
one single output e.g. calculate
benefit function (enrollment,
eligibility, medical underwriting,
self service, claims business
capability)
• Process of grouping related
biz functions resulted in the
definition of all Cigna’s Core
enterprise SOA services
 Mapped 1000 Biz functions into
more than dozen enterprise services
 Defining core business capabilities (
each in terms of one or more
business function)
 Mapping the core capabilities to
these business functions and endto-end business processes
 how business function maps to
products & services
 Grouping helped determine
necessary responsibility &
functionality each service needed in
the end state architecture
Case Study: Cigna - Lessons learnt
Taking a business focused enterprise level architecture
approach helped Cigna go successful
• Cigna overall health improvement strategy of helping
individuals by repositioning technical capabilities
• Business understand SOA benefits in business terms – cost
reduction and efficiency
– Work with Business directly
– Contracting dept. e.g. was able to implement new cases faster by
integrating with legacy system for post sales data
• Service built with reusability and extensibility
– Services built for one part were reused in another part of business
• Message Centric approach
Case Study: SOA at Blue Cross
Health Industry - Independent Physician to Hospitals - Siloed info!!
• Status: Although there are
enormous technological
advances, siloed info
• 32 million claims; 6 million
customer inquiries each year
• Challenges:
– Privacy legislation
– More holistic patient care at low
cost
– Emerging needs
• Solution: SOA
– To link business service and data
across departments
– Improve level of cooperation
between providers and payers
• Sharing of medical info is on
demand only per request from
physician offices to clinics to
hospital departments
• Physicians make use of time
sensitive data for patient care
• Patient’s medical information
systems integration with Billing
systems
• Tie in to Drug delivery
• Large Hospitals, companies
are moving to SOA to help
break Silos of medical data for
comprehensive patient service
Case Study: SOA at Blue Cross
Blue cross was looking to solve the business problem –
reduce cost to balance expenses and maintain reasonable
healthcare cost
Approach
• SOA based application
Development for a single
source of truth
– Blue cross and it’s subsidiaries
are largest insurers in
Philadelphia – 3.4 million
members
– Products & Services ( Managed
Care, traditional indemnity,
Medicare and Medicaid)
• Create a Governance model
• Make developers appreciate
and adopt SOA approach





Claims Status: if it is paid
Call Customer Service
Call billing dept at Physician’s office
Go online to check
Different front end but back end
uses the same single service to
respond to the query
 Only one version of the truth
Case Study: SOA at Blue Cross
Blue cross was looking to solve the business problem –
reduce cost to balance expenses and maintain reasonable
healthcare cost
 Where would all the rules codified
Step 1: Governance
• Governing committee is a
multidisciplinary body
– Initial focus was to set a low level
foundation service
– Business experts made the
governance decision
– Infrastructure group was on chair
with no vote
– A policy - service is a service if it
is used more than once
– Enterprise wide responsibility
assigned for service development
and maintenance




by the governance committee?
The governance committee put
together initial document with
processes and life cycle of services
Approved by Senior leadership and
enforced ( exec support is
necessary)
Reusable and standardized service
is cost reduced
Individual IT support function for
each line of business will build each
services and support those services.
e.g. if service is pulling data from a
database provider then that IT dept.
maintain that data
Case Study: SOA at Blue Cross
Blue cross - the business problem – reduce cost to balance
expenses and maintain reasonable healthcare cost
Step 2: Apps Developer take a
leap of faith
• SOA is the way to GO!
– With Governance and Support
plan in place only task was to
convince the developers to follow
SOA approach
• Developers hate losing control
as part of SOA change
• Management’s responsibility
was to show the value add of
change to the developers
 SOA developers focused on SOA
integration at the outset
 Developers need not worry about
integration but needed to know what
data they were requesting from a
service ( and what they will get back
from Service)
 As per change, access from a database
instead from a direct connection, was
thru a service
 Developers saw the value add of the
SOA change in terms of their
productivity by splitting of tasks for front
end and back end of code for requested
services ( discipline enforced)
Case Study: SOA at Blue Cross
Taking a look across the enterprise approach helped Blue
Cross go successful
Next Steps:
• A long term roadmap for the next three years was put
together
• With first phase of SOA completed – automating governance
in the second phase
Automating the manual registry to validate the metrics for value add of
services being consumed
• Implement the master data management and business
process monitoring
– Single source of truth
– Catalog of services to be made available
Case Study: SOA at Blue Cross
Taking a look across the enterprise approach helped Blue
Cross go successful
Here are the lessons learnt:
• Taking an enterprise view with executive support
• Separating Technology from Methodology
– A consistent governance structure across the board and business
• Federated Governance model
– Enterprise view was achieved by inducting various groups from
across the company
Case Study: SOA at Blue Cross
6
SOA – Don’ts
•
Don’t Boil the Ocean
– Choose a well defined and confined project
•
Don’t Confuse SOA with an IT initiative
– SOA is a joint endeavor between business and IT
•
Don’t Go it alone
– Don’t try to reinvent. Beg borrow or steal – get help
– Use the available offerings – templates, models, roadmap, and best practices
•
Don’t Neglect Governance
– SOA governance is not automatic – it is about leadership and thinking about how you are going
to get there.
– You need a coordinated approach that conforms to the corporate GOALS and Obj
•
Don’t Forget Business Process
– Don’t forget to start with BP that you want to automate with SOA initiatives
– Whether leverage existing code to create reusable service or build new service need to put
them into Business process
•
Don’t start from Scratch
– And Don’t forget Security – pay close attention to security implications of exposing Biz Services
•
Don’t apply SOA to everything
– Use defined project and leave and stand alone apps. Keep the services bigger for reuse and
manageability
Where to learn more
•
•
•
•
•
•
•
•
http://www.Google.com
IBM Software group for SOA
http://www.soa.com/products/service_manager/
SOA in practice – The Art of Distributed System Design by Nicolai M.
Josottis; Publisher : O’ Reily
http://www.oracle.com/technology/products/webservices_manager/pdf/w
ebservices_manager_ds_10gr3.pdf
http://www.softwareag.com/us/Images/HowDefineBusinessServiceSoftwareAG-112007-WP-0165-1_tcm89-35243.pdf
http://blog.softwareag.com
Http://www.soatechnologyassessment.com (assessment in 10 minutes)
Questions?
•
NEWS PRESENTATION
Download