4. Which one would you pick? ERP/ AS-400 CRM / Siebel Oracle Server PO System/ IBM Mainframe E-Commerce / Web sphere on Solaris Scenario 1
5. Which one would you pick? Service Bus Scenario 2 CRM/ Oracle Server ERP/ AS-400 E-Commerce/ WebSphere- Solaris PO System/ IBM Mainframe
6.
7.
8.
9. Application Service Evolution Class Layer Service Layer Component Layer Structured design Service Oriented Design (Inter-Enterprise Scope) Component Oriented Design (Inter-Application Scope) Object Oriented Design
10.
11. Example IBM Mainframe Middleware XML XHTML Campus Users Example of a “Service” that incorporates Mainframe code COBOL Application 1989 & Service for retrieving updating travel Information
12.
13.
14. Benefits of SOA Independence from technology Adequate business infrastructure Agility Reuse Risk mitigation Evolutionary approach Cost savings More efficient development process Feedback at different levels
30. Key components of SOA SOA Business Services Enterprise Service Bus Service Repository Contract Implementation Interface Governance Front-End Data Business Logic
31.
32. SOA architecture Finds and Retrieves Registers Invokes Service Directory Service Consumer Service Provider
35. Associated Terminology Service Oriented Architecture SOA Service Oriented Development of Applications SODA Service Oriented Business Applications SOBA Web Services WS Service Oriented Enterprise SOE Global Delivery Model GDM Enterprise Service Provider ESP Business Process Management BPM Business Process Outsourcing BPO
37. Using a Service Developer Service Repository Service Contract Service Client ( Application front-end or services ) Service Stub Contains Creates Searches in Based on Invokes Uses Fulfills Describes
38.
39. SOA Stack- Based on Standards Source : Network Computing Magazine
48. Structure of BPEL <process> <!– Definition and roles of process participants --> <partnerLinks> ... </partnerLinks> <!- Data/state used within the process --> <variables> ... </variables> <!- Properties that enable conversations --> <correlationSets> ... </correlationSets> <!- Exception handling --> <faultHandlers> ... </faultHandlers> <!- Error recovery – undoing actions --> <compensationHandlers> ... </compensationHandlers> <!- Concurrent events with process itself --> <eventHandlers> ... </eventHandlers> </process> Process Language
49. <switch> <faultHandlers> Determine if Can Fulfill 10:00am Handle Negative Credit Exception Discount Service start end BPEL Flow ? Credit Service Inventory Service Get Discount Send Credit Application Receive Credit Result 03:00pm Send Inventory Request Receive Inventory Result <process> </process> <variable> <partnerLink> <partnerLink> <partnerLink> <receive> <invoke> <invoke> <flow> </flow>
50. Model View Controller Revisited View Query UI Controller Task Engine Business Process Controller Task Request Select Task Service Request Change State Controller Model Changed Model Changed Select View WS WS WS WS Model
51. SOA requirements View ERP PLM CRM UI Controller Task Engine Business Process Controller Service Request WS Query Engine WS WS WS WS WS WS A Complete Separation of the Business Logic and UI