Upload
zubin67
View
208
Download
0
Tags:
Embed Size (px)
Citation preview
Achieving Success With Service Oriented Architecture
Derek Ireland
17th March, 2005
Themes
– Implementing a Service Oriented Architecture
– Using Application Design Patterns, Frameworks and Processes
– Achieving demonstrable value for the business from SOA
Some Definitions
– Business Service– Reusable Service that provides a recognisable business
function– Examples could be Verify Identity, Provide Bank Details,
Maintain Address, Produce Statement
– Application Design Pattern– Architecture, Design and Implementation Patterns– Architecture Pattern shows concepts– Design Pattern gives technology independent design advice– Implementation Pattern gives technology specific “how to”
advice
– Framework– Software Framework abstracting applications from lower level
implementation issues such as communication across tiers, logging
Right Now
– Over 70 service consuming SOA applications running in production
– Over 40% of our back-end transactions are initiated through our SOA
– Over 250 reusable Business Services in our Business Service Catalogue
– Over 50% of Business Services are reused
– £2,000,000+ of development saving
– SOA implemented across the group
– SOA independently reviewed and endorsed as best practice
How did Standard Life achieve a mature SOA implementation?
Evolution to Mature SOA
Standardised Data Access
Catalogued Reusable Data Services
Introduced Application Design Patterns
Hub Centric Design Pattern (SOA)
1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005
What did we set out to do?
– Implement a hub of reusable, channel independent business services
– Enable impact free change with reuse (Service Versioning)
– Ensure application designs are consistent
– Simplify application development in support of multi-channel business
– Ensure consistent operational behaviour of applications
– Ensure best use is made of current technology
– Establish a framework within which new technologies can be introduced when appropriate
Our SOA Design Pattern
Patterns which enable the development of applications that provide and consume reusable,
channel-independent business services.
Clients
Channel Dependent
Business Services
Channel Independent
Application Layers
Data Service Layer
Business Service Layer
PresentationLayer
ChannelGateway
ApplicationControlLayer
Business Service Interface Layer
Syste
ms M
anag
em
ent
Business Services
– Provide Business Function– If it doesn’t mean anything to the business, it’s not a
business service
– XML Interfaces as standard
– Business service standards– Documentation– Fault notification– Request/reply structures
Managing the Business Service Catalogue
– Analysis & Design Time Catalogue
– Documenting and Publicising Services
– Business Service Definitions– Interfaces– Functional & non-functional characteristics
– Managing Services– Supported by the Business Service Management team– Virtual team drawn from all development areas
– Measuring Service Reuse and Value– Demonstrate the return on SOA
Metrics on Business Service Reuse
Catalogue
Statistics
How many services ?
250
123How many services
are reused?
253How many instances
of reuse?
What is the value ofdevelopment saving?
£2,000,000+
Framework & Infrastructure
Applications(Business Services)
Hub Centric DesignPattern
How do we develop with all these layers
Applications(Business Services)
Hub Centric DesignPattern
Framework & Infrastructure
Infrastructure
Websphere & z/os based infrastructure in support of standard applications built to a common design pattern and on common frameworks.
Framework
Java & COBOL framework abstracting applications from underlying infrastructure (e.g. WMQ) and providing standard APIs for common application behaviours (e.g. logging).
What does framework give us?
– Easier application development
– Execution time consistency
– Applications behave in a standard way on a standard infrastructure
– Better systems management– Reliability– Availability
– Easier to support in production
– Minimised risk when introducing change
Framework example Business Service Invocation
– Application requests business service by name / version
– Runtime Business Service Directory is used
– BSD accessed only by framework
– BSD contains– End points (WMQ Queues)– Quality of service attributes
– Framework resolves all aspects of service invocation– Operational Platform– Transport Protocol– Target Queue– What to do if it fails to respond and how to do it– How long to wait for it to respond
Service Delivery with SOA
System Management
– Common framework gives us standardisation
– Applications are built and delivered in a consistent manner
– Logging events are correlated end-to-end across different platforms
– Data mining tools available to interrogate logging events
– Component interaction data is available from framework
– Impact analysis tools available to interrogate component interaction information and support system management
Operational Support
– Building and delivering applications in a consistent manner means
– They all behave the same
– We have 70 service consuming applications in production
– We have up to 350 service consuming applications across all environments at any one time
– Our volumes have increased 900% since we implemented this in 2001
– Our Infrastructure technical support team for SOA applications remains 7 people
What have we delivered for the business?
Reusable Business Services
Business 2 Business
MortgageTele
servicing
NewBusiness
SIPP
Folders
User 2 Business
HealthcareePS
CSOL
Tracking
eCPS
NewBusiness
Quotes
InternalApps
Direct toCustomer
Apps
AdviserZone
MortgageSourcingSystems
Real TimeContractEnquiry
ContractEnquiry
NewBusiness
Links
Quotes
Messagingto Industry
Portals
BulkContractEnquiry
Messaging to IFA
Software
Provide Bank Details
Produce Statement
Provide Agent Details
Verify Identity
Maintain LPS Proposal
Provide Pension Valuation
Maintain Address
Maintain Self Invested Asset
Search and Validate Address
Provide Annuity Details
Maintain Drawdown Details
Create Outgoing Document
Provide Scheme Info
Provide Life Cover Info
Send eMail
What have we learned?
Our Experience
– SOA needs technology, processes and people– For us, Web Services does not equal SOA
– Align architecture, development and operational groups
– Use framework to deliver consistency and achieve flexibility
– Framework uncouples applications from infrastructure– Allows applications and infrastructure to evolve independently
– SOA needs management of a portfolio of services– Make this a virtual team and include all development areas
– SOA can deliver real savings– Development savings of £2m plus realised in 3 years
– Establish metrics as part of SOA– Be ready to communicate the value of SOA
Derek IrelandApplication Design Manager
Standard Life,IS Division52 Annandale Street,[email protected]
Thank You