Service Oriented Architecture

1,599 views

Published on

0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,599
On SlideShare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
Downloads
148
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Service Oriented Architecture

  1. 1. Marcelo Fernández Software Practice Manager Email: marcelo.fernandez@sun.com Service Oriented Architecture
  2. 2. Agenda • SOA Big Rules • Understanding SOA • ESB • JBI • Registry & Repository • Security
  3. 3. Section Introduction to SOA
  4. 4. Hype or Reality? So What? SOA!? Reuse Encapsulate The New EDI? Remember CORBA? Web Services Aligned Cross-Platform Vendor Neutral Multi-Vendor Register & Discover Described Standards Flexible IT XML Wrap & Reuse Composability Legacy Layering Agile Stateless Loosely Coupled Messaging Integration QoS Federation Transformation On Demand Autonomous Interoperable Extensible Location Transparency
  5. 5. What is SOA? • Service Oriented Architecture implies that the IT organization of an enterprise pursue business and technical strategies which promote the exposure of business functionality and data within and between enterprises in a manner which is: >Consistent >Published >Secure >Contractual
  6. 6. Accidental Architecture? Silo Oriented Architecture • Rigid • Complex • Expensive • Slow to Market • Monolithic • Hard to Integrate Mature information systems grow old disgracefully as successive waves of hacking result in accidental architectures which resist the reflection of on-going business process change. - Anthony Lauder & Stuart Kent; University of Kent. (2000)
  7. 7. Promise of SOA • Interoperability • Federation • Dynamic Discovery • Loose Coupling • Reuse and Composition • Evolution, not Revolution • Wrap and Reuse; Not Rip and Replace • Standards based approach • Alignment of Business and Technology
  8. 8. SOA Conceptual Model
  9. 9. Elements of SOA 1st Class Artifacts QoS Explicitly Specified
  10. 10. Layering Principle • Shared Network-based Layered Services Process Layer Access Layer Service Layer Resource Layer
  11. 11. The “Move” to Service Orientation Accidental Rigid Silo-Oriented Layered Extensible Service-Oriented
  12. 12. The SOA Shift
  13. 13. SOA and Standards Reliable Messaging Security Policy Quality of Services Registry & RepositoryDiscovery Service DescriptionDescription Integration Orchestration Choreography Addressing & Notifications Messages Messaging Transport Protocols Context Transaction Coordination PortalAccess Management Management
  14. 14. SOA and Standards Reliable Messaging: WS-Reliability WS-ReliableMessaging Security WS-Security, WS-Trust SAML, XACML, XKMS XML-Signature XML-Encryption Liberty ID-FF, ID-WSF, ID-SIS WS-Federation WS-I Basic Security Profile Policy WS-PolicyQuality of Services Registry UDDI, ebXML RS Repository ebXML RS/RIMDiscovery Service Description Language WSDLDescription Integration Business Process Languages: Orchestration WS-BPEL*, WFMC XPDL Business Collaboration Languages: Choreography WS-CDL, ebXML BP Addressing & Notifications WS-Addressing, WS-Notification, WS-Topics, WS-Eventing Messages SOAP, WS-MetadataExchange, XML, XML Schema, Encoding Messaging Transport Protocols HTTP, IIOP, Other Context WS-Context (WS- CAF) Transaction WS-AtomicTransaction WS-TXM (WS-CAF) Coordination WS-Coordination WS-CF (WS-CAF) Portal WSRPAccess Management Management WS-Management, WS-DistributedManagement (WSDM)
  15. 15. Section SOA Big Rules
  16. 16. Layered Modular & Autonomous Service Reuse Interoperable Coarse-Grained Business Services Composable Stateless XML Doc-Based Asynchronous Conversational Reliable Messaging Secure Policy-Driven Described Orchestrated SOA Big Rules – Eye Chart Registered & Discovered Loosely Coupled Versioned Self HealingChoreographed
  17. 17. SOA Big Rule Layered Process Service Resource Access
  18. 18. SOA Big Rule Modular & Autonomous ● Cohesive ● Independent
  19. 19. SOA Big Rule Reuse Service Reused ● Different Applications ● Different Use Cases ● Operation Level Reuse
  20. 20. SOA Big Rule Interoperable Interoperability ● Platform ● Vendor ● Protocol ● Data
  21. 21. SOA Big Rule Coarse Grained Business Services Application Services ● Relative: Coarser to Finer ● Defined by real business needs
  22. 22. SOA Big Rule Composable ● Reuse & Modularity ● Assembly ● Orchestration
  23. 23. SOA Big Rule Stateless ● State not in Service ● Document Exchange
  24. 24. SOA Big Rule XML Document-Based Exchanges Note: Coordinator is optional
  25. 25. SOA Big Rule Mostly Asynchronous Interactions Note: Coordinator is optional
  26. 26. SOA Big Rule Conversational Services ● Conversational state is outside the service ● Intermediary Coordinator
  27. 27. SOA Big Rule Reliable Messaging Note: Coordinator is optional ● Acknowledgement ● Failure Handling ● Sequencing ● Assurance
  28. 28. SOA Big Rule Secure Note: Coordinator is optional ● AuthN/AuthZ ● Federation ● Identity & Trust ● Non-Repudiation ● Message (Enc/Sig) ● Integrity ● Transport-Level ● Message-Level
  29. 29. SOA Big Rule Policy Driven Note: Coordinator is optional ● Security ● QoS ● Other
  30. 30. SOA Big Rule Described Services Note: Coordinator is optional ● Contract ● Endpoint ● Operation ● MEP ● Policies
  31. 31. SOA Big Rule Orchestrated Services Orchestration Interactions that a given service can engage in with other services from the viewpoint of that service, includes internal steps.
  32. 32. SOA Big Rule Choreographed Services WS-CDLChoreography Global view of multiple services interacting (observable behavior) towards a common goal. No internal steps.
  33. 33. SOA Big Rule Registered & Discovered ● Service Description ● Dynamically Found ● Dynamically Bound
  34. 34. SOA Big Rule Loosely Coupled 1 = Lookup 2 = Bind and Invoke ● Implementations (Interfaces) ● Requestor & Provider (Contracts) ● Business Process and Application Logic (Services) ● Hardware/OS/Tools/Middleware/Applications/...
  35. 35. SOA Big Rule Versioned ● Multiple Versions ● Deprecation & Retiring ● Routing & Transformation ● Automated Deployment
  36. 36. SOA Big Rule Self Healing ● Client Transparency
  37. 37. Layered Modular & Autonomous Service Reuse Interoperable Coarse-Grained Business Services Composable Stateless XML Doc-Based Asynchronous Conversational Reliable Messaging Secure Policy-Driven Described Orchestrated SOA Big Rules – Eye Chart Registered & Discovered Loosely Coupled Versioned Self HealingChoreographed Combine & Inter-Relate to create SOA
  38. 38. Section SOA And ... Enterprise Service Bus (ESB) JBI Registry/Repository Security Composite Applications
  39. 39. Section SOA and the Enterprise Service Bus (ESB)
  40. 40. ESB Features Security Logging Monitoring Alerting Transactions Routing Load Balancing Synchronization Correlation Messaging Communication Transformation BPM BAM Resource Adapters Channel Adapters ServiceProviders ServiceConsumers Open standards, reliable, message-based, distributed, integration solution and mediation services Enterprise Service Bus
  41. 41. SOA and ESB • ESB is a technology to implement SOA > Multiple connection types (Web Services, MOM, ...) > Multiple service protocols (Sync/Async) • ESB alone is not enough to implement SOA > Application Platforms, Integration Platforms, and MOMs that support services • A pluggable ESB architecture supports > Many value-added technical & application services
  42. 42. Section SOA and Java Business Integration (JBI) JSR-208
  43. 43. SOA and Java Business Integration JBI (JSR 208) • Current Integration Industry > Proprietary Approaches > Converging on a service-based model > Converging on standard messaging model >> Ready for Standardization >> JBI
  44. 44. What is JBI? • Standard “meta-container” for integrated services • Service-Oriented Architecture infrastructure • Provides for plug-in: > Engines—providing business logic and functions > Bindings—providing communications protocols: > Access to remote services > Allowing access to other services
  45. 45. What is JBI? JBI Core Services J2SE™/J2EE™ Platforms System Management Installation Deployment Management Normalized Message RouterNormalized Message Router Protocol Binding Components Service Engines
  46. 46. Example SEs & BEs JBI Core Services Normalized Message RouterNormalized Message Router J2EE™ Platform System Management Orchestration (BPEL) Transformation (XSLT) J2EE Platform AS2 JMSWS-I Basic SOAP
  47. 47. Service Provider Self-Description JBI Core Services Normalized Message Router J2EE Platform System Management Orchestration (BPEL) Transformation (XSLT) J2EE Platform AS2 JMSWS-I Basic SOAP WSDL WSDL WSDL WSDLWSDLWSDL Components register the services they provide
  48. 48. Engines Bindings Admin Rules EDI xForm JMS BPE WS-I Java Business Integration Rules/PoliciesBPEL Service Service Service Service Service Service Service Service Evolution of the Platform to Enable SOA
  49. 49. Section SOA and Registry / Repository
  50. 50. Why a SOA Registry? SOA Project Inter-dependent Artifacts: ● XML Schemas, XSLT Transforms, etc. ● Descriptions: WSDL, WSRP, etc. ● Definitions: BPEL, etc. & Policies
  51. 51. SOA Governance: Role of Registry/Repository SOA Artifacts Need Governance • Centralized manageability & Point of Control • Policy Management Enforcement > Service Management > Security > Versioning, Deprecation/Retiring, etc. • ebXML Registry standard includes functions supporting governance use
  52. 52. Section SOA and Security
  53. 53. SOA and Security Shared Application Components/ Services Shared Infrastructure Services + Secure Network Enclaves Secure Execution Containers Service s Logical and Physical System and Storage Service s Service s Service s Service s Value Added Business Services + Business Process Management Secure Presentation Services (e.g., Portals, Proxies) E-Mail (SMTP/IMAP) Servic es Servic es Web Services (HTTP/S) Servic es Servic es Servic es Servic es Directory (LDAP) Servic es Servic es Identity/Access Servic es Servic es Database (SQL) Servic es Servic es Policy Identit y AuditTrust AuthN AuthZ Privac y Integri ty Security WS-Security, WS-Trust SAML, XACML, XKMS XML-Signature XML-Encryption Liberty ID-FF, ID-WSF, ID-SIS WS-Federation WS-I Basic Security Profile
  54. 54. Section SOA and Composite Applications
  55. 55. Composite Application • Set of reusable services composed into a new application • Consumes existing services • Exposes new service interfaces • Encapsulates business processes/collaboration • Unit of deployment for services • May or May not expose a user interface
  56. 56. Composite Application Equation Monolithic Application Service-Oriented Applications Services CA 1 CA 2 CA 3 CA 4 + = + = . . . Composite Applications Two Monolithic Applications Monolithic Application
  57. 57. Monolithic Application with Business Logic Built-in • Monolithic Applications – Poor Fit Business Process
  58. 58. Composite Applications – Best Fit Orchestrated Business Services: Composite Applications • Closely aligned with business • Easy to maintain • Easy to change Business Process
  59. 59. Composite Applications – Best Fit Orchestrated Business Services: Composite Applications Business Process • Closely aligned with business • Easy to maintain • Easy to change
  60. 60. Solution Build and Development Testing Deployment Project Management Project Contingency Total Design-to-Deploy Time Maintenance Years 2 and 3 Total Savings Design Phase Benefit SOA Composite Application Development Butler Customer Study on Sun Java CAPS Suite Percentage Saving Source: Butler Group October 2004 58% 70% 50% 57% 60% 37% 50% 86% 25%
  61. 61. IT Silo Check Customer Status Determine Product Availability Check Customer Status Determine Product Availability Verify Customer Credit Order Status Calculate Shipping Charges Order Status Verify Customer Credit Data Repository External Trading Partner Another Business Unit Red Prairie Warehouse Mgmt. System SAP Finance System Oracle CRM System AS400 Sales System Custom Marketing System Monolithic Applications Accounts Management Order Processing Field Service Scheduling
  62. 62. IT Silo Check Customer Status Determine Product Availability Order Status Calculate Shipping Charges Verify Customer Credit Data Repository External Trading Partner Another Business Unit Red Prairie Warehouse Mgmt. System SAP Finance System Oracle CRM System AS400 Sales System Custom Marketing System Monolithic Applications Accounts Management Order Processing Field Service Scheduling Check Customer Status Determine Product Availability Order Status Verify Customer Credit
  63. 63. External Trading Partner Another Business Unit Red Prairie Warehouse Mgmt. System SAP Finance System Oracle CRM System AS400 Sales System Custom Marketing System Reuse Services Via Re-composition Elemental Business Services Accounts Management Order Processing Field Service Scheduling Data Repository Check Customer Status Check Credit Check Inventory Check Order Status Create Invoice External Trading Partner Another Business Unit Red Prairie Warehouse Mgmt. System SAP Finance System Oracle CRM System AS400 Sales System Custom Marketing System
  64. 64. Reuse Services Via Re-composition Accounts Management Order Processing Field Service Scheduling Data Repository Composed Business ProcessesInstallation Scheduling Process Customer Order Bill Presentment/Payment External Trading Partner Another Business Unit Red Prairie Warehouse Mgmt. System SAP Finance System Oracle CRM System AS400 Sales System Custom Marketing System Elemental Business Services Check Credit Check Order Status Create Invoice Check Customer Status Check Inventory Installation Scheduling Check Customer Status Check Inventory
  65. 65. Reuse Services Via Re-composition Elemental Business Services Accounts Management Order Processing Field Service Scheduling Data Repository Composed Business ProcessesInstallation Scheduling Process Customer Order Bill Presentment/Payment Create Invoice Check Credit Check Order Status Check Inventory Check Customer Status External Trading Partner Another Business Unit Red Prairie Warehouse Mgmt. System SAP Finance System Oracle CRM System AS400 Sales System Custom Marketing System Process Customer Order Check Customer Status Check Credit Check Inventory Check Order Status
  66. 66. Reuse Services Via Re-composition Elemental Business Services Accounts Management Order Processing Field Service Scheduling Data Repository Composed Business ProcessesInstallation Scheduling Process Customer Order Bill Presentment/Payment Check Customer Status Check Credit Check Inventory Check Order Status Create Invoice Bill Presentment/Payment External Trading Partner Another Business Unit Red Prairie Warehouse Mgmt. System SAP Finance System Oracle CRM System AS400 Sales System Custom Marketing System Check Order Status Create Invoice
  67. 67. Elemental Business Services Data Repository External Trading Partner Another Business Unit Red Prairie Warehouse Mgmt. System SAP Finance System Oracle CRM System AS400 Sales System Custom Marketing System Business Processes Are Composed Hierarchically to Create Composite Applications Accounts Management Order Processing Field Service Scheduling Composite Apps Check Customer Status Check Credit Check Inventory Check Order Status Create Invoice
  68. 68. Check Customer Status Check Credit Check Inventory Check Order Status Create Invoice Data Repository External Trading Partner Another Business Unit Red Prairie Warehouse Mgmt. System Oracle Finance System Siebel CRM System AS400 Sales System Custom Marketing System Shared Services – Composite Apps – Increased Functionality Accounts Management Order Processing Field Service Scheduling Another One Manage Exception Orders Submit Change Order Elemental Business Services
  69. 69. Check Customer Status Check Credit Check Inventory Check Order Status Create Invoice Elemental Business Services SOA Principles Data Repository External Trading Partner Another Business Unit Red Prairie Warehouse Mgmt. System SAP Finance System Oracle CRM System AS400 Sales System Custom Marketing System Accounts Management Order Processing Field Service Scheduling Another One Manage Exception Orders Submit Change Order • Registered and discoverables • Coarse-grained services • WSDL-described • JBI-based • Document-based • Mostly asynchronous • Conversational • Reliable
  70. 70. Check Customer Status Check Credit Check Inventory Check Order Status Create Invoice Elemental Business Services SOA Principles Data Repository External Trading Partner Another Business Unit Red Prairie Warehouse Mgmt. System SAP Finance System Oracle CRM System AS400 Sales System Custom Marketing System Accounts Management Order Processing Field Service Scheduling Another One Manage Exception Orders Submit Change Order • Secure • Policy-driven • Orchestrated
  71. 71. Service Oriented Architecture GRACIAS !!

×