SlideShare une entreprise Scribd logo
1  sur  21
Télécharger pour lire hors ligne
So You Want
an SOA: Best
Practices for
Migrating to
SOA in the
Enterprise
Eric Newcomer, CTO
2
Overview
First of all: concepts and definitions
Change your thinking about your IT environment
Including organization and skill set
Embrace heterogeneity and complexity
Support businesses agility to:
Reduce complexity
Improve integration and data sharing
Become more competitive
Move toward services and SOA adoption:
Map IT services to business services
Start with incremental change
Understand and apply architectural best practices
3
Concepts and definitions
Services and SOA are technology
independent
They represent “styles of design”
Have been mapped successfully to CORBA,
WebSphere MQ, Web services
N-tier technologies are the best fit
CORBA, Web services
A service includes:
A requester
A provider
One or more
message exchange patterns
Requester Provider
UDDI
Registry
SOAP
WSDL
4
Concepts and definitions (cont)
Services model human and business
functions
Not software artifacts such as databases or files
Unlike objects, services are not “things”
Services are defined by the messages they
exchange
Request list of customers
Update the customer’s order
Notify the call center operator
Transfer my funds
The design concept is the message schema
5
Credit Suisse: SOA pioneer
Enterprise Services
INFORMATION BUS
MS - COM
COMet
MS - COM
COMet
Service ContractService Contract
C++ CORBA
(ORBIX 3)
C++ CORBA
(ORBIX 3)
Service ContractService Contract Service ContractService Contract
Java CORBA
(ORBIX 3)
Java CORBA
(ORBIX 3)
Service ContractService Contract
Smalltalk-/
SecureBroker
Smalltalk-/
SecureBroker
Service ContractService Contract
WebLogic-
Orbix Java 3.3.1
WebLogic-
Orbix Java 3.3.1
IIOP
-----
SSL
IIOP
-----
SSL
Mainframe
PL1 Resources
Mainframe
PL1 Resources
Service ContractService Contract
Tivoli
Management
Tivoli
Management
Service ContractService Contract Service ContractService Contract
HP OpenView
Management
HP OpenView
Management
Service ContractService Contract
Mainframe
CICS Resources
Mainframe
CICS Resources
Service ContractService Contract
Mainframe
IMS Resources
Mainframe
IMS Resources
Enterprise Services
Enterprise ServicesEnterprise Services
INFORMATION BUS
MS - COM
COMet
MS - COM
COMet
Service ContractService Contract
C++ CORBA
(ORBIX 3)
C++ CORBA
(ORBIX 3)
Service ContractService Contract Service ContractService Contract
Java CORBA
(ORBIX 3)
Java CORBA
(ORBIX 3)
Service ContractService Contract
Smalltalk-/
SecureBroker
Smalltalk-/
SecureBroker
Service ContractService Contract
WebLogic-
Orbix Java 3.3.1
WebLogic-
Orbix Java 3.3.1
MS - COM
COMet
MS - COM
COMet
Service ContractService Contract
C++ CORBA
(ORBIX 3)
C++ CORBA
(ORBIX 3)
Service ContractService Contract Service ContractService Contract
Java CORBA
(ORBIX 3)
Java CORBA
(ORBIX 3)
Service ContractService Contract
Smalltalk-/
SecureBroker
Smalltalk-/
SecureBroker
Service ContractService Contract
WebLogic-
Orbix Java 3.3.1
WebLogic-
Orbix Java 3.3.1
IIOP
-----
SSL
IIOP
-----
SSL
Mainframe
PL1 Resources
Mainframe
PL1 Resources
Service ContractService Contract
Tivoli
Management
Tivoli
Management
Service ContractService Contract Service ContractService Contract
HP OpenView
Management
HP OpenView
Management
Service ContractService Contract
Mainframe
CICS Resources
Mainframe
CICS Resources
Service ContractService Contract
Mainframe
IMS Resources
Mainframe
IMS Resources
Enterprise Services
6
Services change the organization
A service architect determines
The overall plan and design for services
Which services fit the model, which don’t
Design principles for services, especially reuse
Developers update their skills
Learn to develop for future reuse
Work with multiple technologies (Web services plus
an execution environment – J2EE, CORBA, .NET)
Business analysts may compose services
Given right levels of abstraction and toolset
7
Services embrace heterogeneity
Heterogeneity and complexity are constant
Services can abstract across any software system
Apply “veneer” using XML and Web services
Extend for enterprise qualities of service
Unique characteristics are valuable
Make complexity work for you
J2EE, .NET, CORBA, and Mainframe all have benefit
Existing applications have functions with
value
Modernize without the expense of replacement
Maintain enterprise QoS – reliability, transactions,
security
8
Typical IT complexity map
Source: Deutsche Post World Net, SAP SI
9
• A “plug and play” view of IT
architecture and systems
• Native interoperability and
integration capabilities now
available for every system
end-point via a standards-
base service interface
• Orchestration of core
business processes,
independent of underlying
systems and adaptable to
changing business
conditions
• Investments in standards
to help drive down long
term operating costs and
as a mechanism for
insuring future
interoperability between
infrastructure and systems
• A “plug and play” view of IT
architecture and systems
• Native interoperability and
integration capabilities now
available for every system
end-point via a standards-
base service interface
• Orchestration of core
business processes,
independent of underlying
systems and adaptable to
changing business
conditions
• Investments in standards
to help drive down long
term operating costs and
as a mechanism for
insuring future
interoperability between
infrastructure and systems
Desired goal
SOP (Service
Oriented Platform)
Business Process
Architecture
IT Application
Landscape
SOP (Service
Oriented Platform)
SOP (Service
Oriented Platform)
Business Process
Architecture
IT Application
Landscape
10
Bank Teller analogy
Different types of tellers offer different services
Tellers specialized to perform certain types of transactions:
Account Management (Opening and closing accounts)
Credits (inquiries, consulting, applying for mortgages)
Cash Register (Withdrawals, deposits, funds transfers)
Currency exchange (buy and sell foreign currencies)
Several tellers may offer the same set of services (for
load balancing / failover)
What happens behind the counter is not your business
(but the IT systems need to support the tellers)
If you require a complex transaction, you may have to
visit several tellers (customer as transaction coordinator)
11
Move from monolithic applications in steps
Intermediate stage:
Break out individual services
Application
Application
service
service
Application
Application
service
Goal: Service-oriented
architecture
service
service
service
service
Application
Monolithic
applications
Application
12
Reasons to develop services
Not for the sake of the individual applications
Services don’t make sense in a mono-technology
environment
Focus on reusability, component design, data sharing
For the sake of the next level developers
Office workers, business analysts
Can share data without worrying about details of
underlying implementation
Lay the foundation for future applications
Infrastructure investment in “agility”
13
Service Contracts Are the Key
The key principles of
service-oriented architecture (SOA)
Services should be business-oriented
Services should have well-defined
interfaces (aka service contracts)
Service contracts should separate
interface from implementation
Service contracts are critical to achieve reuse
and abstraction
14
WSDL is best for service contracts
WSDL is very flexible:
Import existing WSDL contracts
Create new WSDL contracts using
XML Schema
Create new WSDL contracts from an
external metadata source such as
CORBA IDL
Annotate with policy metadata
Benefits
Abstraction
Encapsulation
Loose-Coupling
Separation of Concerns
Service
Port
Binding
XML Data Type
Part
Message
Operation
PortType
WSDL
Logical
Contract
Physical
Contract
•Logical Contract is what
other applications care
about
• Physical Contract is
extensible to support any
middleware binding
• XML Schema provides
independent type system
15
An important question: How to
decompose services?
Quality criteria used to measure the result:
1. Derived from top rank use cases (adequateness)
2. Balanced with existing assets: platform technology,
frameworks, components
3. Balanced with requirements (trade-offs, performance vs. security,…)
4. Compliance with (domain-specific) industry standards and
reference models (interoperability, readiness for merging)
5. Designed to make the system more resilient to future
changes (20 years?) (maintainability)
6. Designed for substantial reuse, and with substantial reuse
7. Intuitively understandable (people buy-in!) (usability)
16
Considerations for SOA design
FunctionalitySoftware
Architecture
Fault Tolerance
PerformanceCost
Throughput
Capacity
Availability
Interoperability Fail safe
Maintainability
Scalability
17
Take the example of the Web
Human to computer
interactions resolved
Standards in place for
programming (HTML) and
interoperability (HTTP)
Huge value adds
Highly productive, low cost
Standardization at the
network endpoints
18
Web Services: Composites for IT
Standards (WSDL &
SOAP) and approach
(SOA) need to be
deployed – at the
endpoints
Open source will help
drive adoption
Join Web 2.0 mashups
to enterprise data
CICS IMS
C, C++, COBOL, PL/I, Java, C#
19
Packaged
Applications
Message
Queuing/EAI
.NET, Java,
Application
Servers
Databases
and Files
WSDL
Leverage the power of the endpoints
WSDL WSDL WSDL
SOAP SOAP SOAP
Web
Services
layer
Add services
to the endpoints
to standardize them
Applications have a common interface/protocol for composites
Platform/
Legacy
layer
Legacy Legacy Legacy
20
Security
Service
Retailer
Service
Credit Card
Service
Billing &
Accounting
Service
Order
Service
Result – Order Entry/Service Delivery
Telephone/
Mobile Access
PC Access
Delivery
Service
Satellite TV
Voice over IP
TV over IP
Services can be anywhere on the network, running on any platform,
hosted by anyone
21
Summary
Enterprises want business agility
They become agile by investing in services
Key benefits include:
Rapid application integration
Multi-channel access
Obtaining service functionality over the Internet
Creating new business models
SOA requires a change in thinking and organization
The agile business embraces heterogeneity
Resolving differences via services and SOA
Best practices involve considering many capabilities

Contenu connexe

Tendances

Soa Primer
Soa PrimerSoa Primer
Soa Primer
vavasthi
 
Service Oriented Architecture Design Pattern
Service Oriented Architecture Design PatternService Oriented Architecture Design Pattern
Service Oriented Architecture Design Pattern
Shanto Rahman
 
SOA Fundamentals
SOA  FundamentalsSOA  Fundamentals
SOA Fundamentals
abhi1112
 
Cs 1023 lec 12 soa (week 4)
Cs 1023 lec 12 soa (week 4)Cs 1023 lec 12 soa (week 4)
Cs 1023 lec 12 soa (week 4)
stanbridge
 

Tendances (20)

Service-oriented Architecture with Respect to Reusability
Service-oriented Architecture with Respect to ReusabilityService-oriented Architecture with Respect to Reusability
Service-oriented Architecture with Respect to Reusability
 
Introduction to Service Oriented Architecture
Introduction to Service Oriented ArchitectureIntroduction to Service Oriented Architecture
Introduction to Service Oriented Architecture
 
Service oriented architecture 27 May 2014
Service oriented architecture 27 May 2014Service oriented architecture 27 May 2014
Service oriented architecture 27 May 2014
 
Soa Primer
Soa PrimerSoa Primer
Soa Primer
 
Service Oriented Architecture (SOA) [1/5] : Introduction to SOA
Service Oriented Architecture (SOA) [1/5] : Introduction to SOAService Oriented Architecture (SOA) [1/5] : Introduction to SOA
Service Oriented Architecture (SOA) [1/5] : Introduction to SOA
 
03 Service Oriented Architecture Series - Basic SOA Architecture
03 Service Oriented Architecture Series - Basic SOA Architecture03 Service Oriented Architecture Series - Basic SOA Architecture
03 Service Oriented Architecture Series - Basic SOA Architecture
 
Service Oriented Architecture
Service Oriented ArchitectureService Oriented Architecture
Service Oriented Architecture
 
Unit 2 -SOA design
Unit 2 -SOA designUnit 2 -SOA design
Unit 2 -SOA design
 
Service Oriented Architecture Design Pattern
Service Oriented Architecture Design PatternService Oriented Architecture Design Pattern
Service Oriented Architecture Design Pattern
 
Service oriented architecture characteristics of soa
Service oriented architecture characteristics  of soaService oriented architecture characteristics  of soa
Service oriented architecture characteristics of soa
 
SOA Fundamentals
SOA  FundamentalsSOA  Fundamentals
SOA Fundamentals
 
Open Group Conference 2011 - The Canonical Data Zone
Open Group Conference 2011 - The Canonical Data ZoneOpen Group Conference 2011 - The Canonical Data Zone
Open Group Conference 2011 - The Canonical Data Zone
 
Unit 4-SOA governance
Unit 4-SOA governanceUnit 4-SOA governance
Unit 4-SOA governance
 
Soa chapter 5
Soa chapter 5Soa chapter 5
Soa chapter 5
 
Unit 3-SOA Technologies
Unit 3-SOA TechnologiesUnit 3-SOA Technologies
Unit 3-SOA Technologies
 
Uunit 5-xml&web security
Uunit 5-xml&web securityUunit 5-xml&web security
Uunit 5-xml&web security
 
Service design principles and patterns
Service design principles and patternsService design principles and patterns
Service design principles and patterns
 
Cs 1023 lec 12 soa (week 4)
Cs 1023 lec 12 soa (week 4)Cs 1023 lec 12 soa (week 4)
Cs 1023 lec 12 soa (week 4)
 
SOA Service-oriented Architecture Fundamentals IBM Certification
SOA Service-oriented Architecture Fundamentals IBM CertificationSOA Service-oriented Architecture Fundamentals IBM Certification
SOA Service-oriented Architecture Fundamentals IBM Certification
 
Concept of SOA
Concept of SOAConcept of SOA
Concept of SOA
 

En vedette (14)

Yellow belt 001
Yellow belt 001Yellow belt 001
Yellow belt 001
 
Explosivos
ExplosivosExplosivos
Explosivos
 
Tips
TipsTips
Tips
 
Binder6 2
Binder6 2Binder6 2
Binder6 2
 
U4 Actividad 6
U4 Actividad 6U4 Actividad 6
U4 Actividad 6
 
Actividad 4 y 5 de unidad 2
Actividad 4 y 5 de unidad 2Actividad 4 y 5 de unidad 2
Actividad 4 y 5 de unidad 2
 
27
2727
27
 
Slide shareimagefb expotools
Slide shareimagefb expotoolsSlide shareimagefb expotools
Slide shareimagefb expotools
 
Foxconn CABG + HP Kaizen Shingijutsu 2015-09
Foxconn CABG + HP Kaizen Shingijutsu 2015-09Foxconn CABG + HP Kaizen Shingijutsu 2015-09
Foxconn CABG + HP Kaizen Shingijutsu 2015-09
 
Blog
BlogBlog
Blog
 
Simrat Sandhu Portfolio-for mobile phones
Simrat Sandhu Portfolio-for mobile phonesSimrat Sandhu Portfolio-for mobile phones
Simrat Sandhu Portfolio-for mobile phones
 
Act.4 u2
Act.4 u2Act.4 u2
Act.4 u2
 
ESL .PDF
ESL .PDFESL .PDF
ESL .PDF
 
Tableau Training in Hyderabad | Tableau Online Training
Tableau Training in Hyderabad | Tableau Online TrainingTableau Training in Hyderabad | Tableau Online Training
Tableau Training in Hyderabad | Tableau Online Training
 

Similaire à Migrating SOA

Ws Soa V6 Theory And Practice
Ws Soa V6 Theory And PracticeWs Soa V6 Theory And Practice
Ws Soa V6 Theory And Practice
Pini Cohen
 
Keynote-Service Orientation – Why is it good for your business
Keynote-Service Orientation – Why is it good for your businessKeynote-Service Orientation – Why is it good for your business
Keynote-Service Orientation – Why is it good for your business
WSO2
 
The New Enterprise Alphabet - .Net, XML And XBRL
The New Enterprise Alphabet - .Net, XML And XBRLThe New Enterprise Alphabet - .Net, XML And XBRL
The New Enterprise Alphabet - .Net, XML And XBRL
Jorgen Thelin
 

Similaire à Migrating SOA (20)

Services oriented architecture
Services oriented architectureServices oriented architecture
Services oriented architecture
 
Ws Soa V6 Theory And Practice
Ws Soa V6 Theory And PracticeWs Soa V6 Theory And Practice
Ws Soa V6 Theory And Practice
 
SOA in a nutshell by Abhilash
 SOA in a nutshell by Abhilash SOA in a nutshell by Abhilash
SOA in a nutshell by Abhilash
 
Keynote-Service Orientation – Why is it good for your business
Keynote-Service Orientation – Why is it good for your businessKeynote-Service Orientation – Why is it good for your business
Keynote-Service Orientation – Why is it good for your business
 
Integration with dynamics ax 2012
Integration with dynamics ax 2012Integration with dynamics ax 2012
Integration with dynamics ax 2012
 
soa ppt v7.ppt
soa ppt v7.pptsoa ppt v7.ppt
soa ppt v7.ppt
 
The New Enterprise Alphabet - .Net, XML And XBRL
The New Enterprise Alphabet - .Net, XML And XBRLThe New Enterprise Alphabet - .Net, XML And XBRL
The New Enterprise Alphabet - .Net, XML And XBRL
 
Soa web pres new
Soa web pres newSoa web pres new
Soa web pres new
 
WebSphere Message Broker Application Development Training
WebSphere Message Broker Application Development TrainingWebSphere Message Broker Application Development Training
WebSphere Message Broker Application Development Training
 
Soa 101
Soa 101Soa 101
Soa 101
 
CBSE VS SOA Presentation
CBSE VS SOA PresentationCBSE VS SOA Presentation
CBSE VS SOA Presentation
 
CBSE VS SOA SJSU Presentation
CBSE VS SOA SJSU PresentationCBSE VS SOA SJSU Presentation
CBSE VS SOA SJSU Presentation
 
Soa & Bpel With Web Sphere
Soa & Bpel With Web SphereSoa & Bpel With Web Sphere
Soa & Bpel With Web Sphere
 
Soa & Bpel With Web Sphere
Soa & Bpel With Web SphereSoa & Bpel With Web Sphere
Soa & Bpel With Web Sphere
 
#dbhouseparty - Should I be building Microservices?
#dbhouseparty - Should I be building Microservices?#dbhouseparty - Should I be building Microservices?
#dbhouseparty - Should I be building Microservices?
 
Web Services Foundation Technologies
Web Services Foundation TechnologiesWeb Services Foundation Technologies
Web Services Foundation Technologies
 
Soa best practice
Soa best practiceSoa best practice
Soa best practice
 
InterConnect 2015 session 2825 cics_and_the_new soa
InterConnect 2015 session 2825  cics_and_the_new soaInterConnect 2015 session 2825  cics_and_the_new soa
InterConnect 2015 session 2825 cics_and_the_new soa
 
Bpm soa
Bpm soaBpm soa
Bpm soa
 
SOA Course - Next Generation
SOA Course - Next GenerationSOA Course - Next Generation
SOA Course - Next Generation
 

Dernier

CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
masabamasaba
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
mohitmore19
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
shinachiaurasa2
 

Dernier (20)

OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the past
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
 
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 
%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg
%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg
%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 

Migrating SOA

  • 1. So You Want an SOA: Best Practices for Migrating to SOA in the Enterprise Eric Newcomer, CTO
  • 2. 2 Overview First of all: concepts and definitions Change your thinking about your IT environment Including organization and skill set Embrace heterogeneity and complexity Support businesses agility to: Reduce complexity Improve integration and data sharing Become more competitive Move toward services and SOA adoption: Map IT services to business services Start with incremental change Understand and apply architectural best practices
  • 3. 3 Concepts and definitions Services and SOA are technology independent They represent “styles of design” Have been mapped successfully to CORBA, WebSphere MQ, Web services N-tier technologies are the best fit CORBA, Web services A service includes: A requester A provider One or more message exchange patterns Requester Provider UDDI Registry SOAP WSDL
  • 4. 4 Concepts and definitions (cont) Services model human and business functions Not software artifacts such as databases or files Unlike objects, services are not “things” Services are defined by the messages they exchange Request list of customers Update the customer’s order Notify the call center operator Transfer my funds The design concept is the message schema
  • 5. 5 Credit Suisse: SOA pioneer Enterprise Services INFORMATION BUS MS - COM COMet MS - COM COMet Service ContractService Contract C++ CORBA (ORBIX 3) C++ CORBA (ORBIX 3) Service ContractService Contract Service ContractService Contract Java CORBA (ORBIX 3) Java CORBA (ORBIX 3) Service ContractService Contract Smalltalk-/ SecureBroker Smalltalk-/ SecureBroker Service ContractService Contract WebLogic- Orbix Java 3.3.1 WebLogic- Orbix Java 3.3.1 IIOP ----- SSL IIOP ----- SSL Mainframe PL1 Resources Mainframe PL1 Resources Service ContractService Contract Tivoli Management Tivoli Management Service ContractService Contract Service ContractService Contract HP OpenView Management HP OpenView Management Service ContractService Contract Mainframe CICS Resources Mainframe CICS Resources Service ContractService Contract Mainframe IMS Resources Mainframe IMS Resources Enterprise Services Enterprise ServicesEnterprise Services INFORMATION BUS MS - COM COMet MS - COM COMet Service ContractService Contract C++ CORBA (ORBIX 3) C++ CORBA (ORBIX 3) Service ContractService Contract Service ContractService Contract Java CORBA (ORBIX 3) Java CORBA (ORBIX 3) Service ContractService Contract Smalltalk-/ SecureBroker Smalltalk-/ SecureBroker Service ContractService Contract WebLogic- Orbix Java 3.3.1 WebLogic- Orbix Java 3.3.1 MS - COM COMet MS - COM COMet Service ContractService Contract C++ CORBA (ORBIX 3) C++ CORBA (ORBIX 3) Service ContractService Contract Service ContractService Contract Java CORBA (ORBIX 3) Java CORBA (ORBIX 3) Service ContractService Contract Smalltalk-/ SecureBroker Smalltalk-/ SecureBroker Service ContractService Contract WebLogic- Orbix Java 3.3.1 WebLogic- Orbix Java 3.3.1 IIOP ----- SSL IIOP ----- SSL Mainframe PL1 Resources Mainframe PL1 Resources Service ContractService Contract Tivoli Management Tivoli Management Service ContractService Contract Service ContractService Contract HP OpenView Management HP OpenView Management Service ContractService Contract Mainframe CICS Resources Mainframe CICS Resources Service ContractService Contract Mainframe IMS Resources Mainframe IMS Resources Enterprise Services
  • 6. 6 Services change the organization A service architect determines The overall plan and design for services Which services fit the model, which don’t Design principles for services, especially reuse Developers update their skills Learn to develop for future reuse Work with multiple technologies (Web services plus an execution environment – J2EE, CORBA, .NET) Business analysts may compose services Given right levels of abstraction and toolset
  • 7. 7 Services embrace heterogeneity Heterogeneity and complexity are constant Services can abstract across any software system Apply “veneer” using XML and Web services Extend for enterprise qualities of service Unique characteristics are valuable Make complexity work for you J2EE, .NET, CORBA, and Mainframe all have benefit Existing applications have functions with value Modernize without the expense of replacement Maintain enterprise QoS – reliability, transactions, security
  • 8. 8 Typical IT complexity map Source: Deutsche Post World Net, SAP SI
  • 9. 9 • A “plug and play” view of IT architecture and systems • Native interoperability and integration capabilities now available for every system end-point via a standards- base service interface • Orchestration of core business processes, independent of underlying systems and adaptable to changing business conditions • Investments in standards to help drive down long term operating costs and as a mechanism for insuring future interoperability between infrastructure and systems • A “plug and play” view of IT architecture and systems • Native interoperability and integration capabilities now available for every system end-point via a standards- base service interface • Orchestration of core business processes, independent of underlying systems and adaptable to changing business conditions • Investments in standards to help drive down long term operating costs and as a mechanism for insuring future interoperability between infrastructure and systems Desired goal SOP (Service Oriented Platform) Business Process Architecture IT Application Landscape SOP (Service Oriented Platform) SOP (Service Oriented Platform) Business Process Architecture IT Application Landscape
  • 10. 10 Bank Teller analogy Different types of tellers offer different services Tellers specialized to perform certain types of transactions: Account Management (Opening and closing accounts) Credits (inquiries, consulting, applying for mortgages) Cash Register (Withdrawals, deposits, funds transfers) Currency exchange (buy and sell foreign currencies) Several tellers may offer the same set of services (for load balancing / failover) What happens behind the counter is not your business (but the IT systems need to support the tellers) If you require a complex transaction, you may have to visit several tellers (customer as transaction coordinator)
  • 11. 11 Move from monolithic applications in steps Intermediate stage: Break out individual services Application Application service service Application Application service Goal: Service-oriented architecture service service service service Application Monolithic applications Application
  • 12. 12 Reasons to develop services Not for the sake of the individual applications Services don’t make sense in a mono-technology environment Focus on reusability, component design, data sharing For the sake of the next level developers Office workers, business analysts Can share data without worrying about details of underlying implementation Lay the foundation for future applications Infrastructure investment in “agility”
  • 13. 13 Service Contracts Are the Key The key principles of service-oriented architecture (SOA) Services should be business-oriented Services should have well-defined interfaces (aka service contracts) Service contracts should separate interface from implementation Service contracts are critical to achieve reuse and abstraction
  • 14. 14 WSDL is best for service contracts WSDL is very flexible: Import existing WSDL contracts Create new WSDL contracts using XML Schema Create new WSDL contracts from an external metadata source such as CORBA IDL Annotate with policy metadata Benefits Abstraction Encapsulation Loose-Coupling Separation of Concerns Service Port Binding XML Data Type Part Message Operation PortType WSDL Logical Contract Physical Contract •Logical Contract is what other applications care about • Physical Contract is extensible to support any middleware binding • XML Schema provides independent type system
  • 15. 15 An important question: How to decompose services? Quality criteria used to measure the result: 1. Derived from top rank use cases (adequateness) 2. Balanced with existing assets: platform technology, frameworks, components 3. Balanced with requirements (trade-offs, performance vs. security,…) 4. Compliance with (domain-specific) industry standards and reference models (interoperability, readiness for merging) 5. Designed to make the system more resilient to future changes (20 years?) (maintainability) 6. Designed for substantial reuse, and with substantial reuse 7. Intuitively understandable (people buy-in!) (usability)
  • 16. 16 Considerations for SOA design FunctionalitySoftware Architecture Fault Tolerance PerformanceCost Throughput Capacity Availability Interoperability Fail safe Maintainability Scalability
  • 17. 17 Take the example of the Web Human to computer interactions resolved Standards in place for programming (HTML) and interoperability (HTTP) Huge value adds Highly productive, low cost Standardization at the network endpoints
  • 18. 18 Web Services: Composites for IT Standards (WSDL & SOAP) and approach (SOA) need to be deployed – at the endpoints Open source will help drive adoption Join Web 2.0 mashups to enterprise data CICS IMS C, C++, COBOL, PL/I, Java, C#
  • 19. 19 Packaged Applications Message Queuing/EAI .NET, Java, Application Servers Databases and Files WSDL Leverage the power of the endpoints WSDL WSDL WSDL SOAP SOAP SOAP Web Services layer Add services to the endpoints to standardize them Applications have a common interface/protocol for composites Platform/ Legacy layer Legacy Legacy Legacy
  • 20. 20 Security Service Retailer Service Credit Card Service Billing & Accounting Service Order Service Result – Order Entry/Service Delivery Telephone/ Mobile Access PC Access Delivery Service Satellite TV Voice over IP TV over IP Services can be anywhere on the network, running on any platform, hosted by anyone
  • 21. 21 Summary Enterprises want business agility They become agile by investing in services Key benefits include: Rapid application integration Multi-channel access Obtaining service functionality over the Internet Creating new business models SOA requires a change in thinking and organization The agile business embraces heterogeneity Resolving differences via services and SOA Best practices involve considering many capabilities