Independent Guidance for Service Architecture and Engineering Standardizing SOA David Sprott
© 2008 Everware-CBDI Inc 2 Everware-CBDI Independent specialist SOA firm Merger of established UK and US companies in 2006 25,000+ subscribing architects worldwide Enabling structured, enterprise level SOA Facilitating SOA standards Widely used best practices, reference architecture, repeatable processes SOA Solution Business including Education, Consulting, Knowledge products
© 2008 Everware-CBDI Inc 3 Agenda What is an SOA standard? Why the confusion? Why so many standards? What SOA standards does an enterprise need? And not need? Today / Tomorrow? Where’s the business value? Are industry standards sufficient? What does an enterprise need to do to create and integrate standards.. ... establish common vocabulary, practices, patterns, technologies, gateways, frameworks, lifecycle metadata, specification, semantics, data content, components, services? What does a standardization Roadmap look like?
© 2008 Everware-CBDI Inc 4 Technology Backplane What is SOA? WS Standards SOA Design Principles SOA Meta Model A set of architecture and design principles governing separation of concerns Implemented and managed using: Consistent vocabulary Standard protocols for interoperability Life cycle automation
© 2008 Everware-CBDI Inc 5 WS Standards Evolution Source Thomas Erl
© 2008 Everware-CBDI Inc 6 The Web Service Protocol Stack Messaging Transactions and Business Process Security SecurityWS-Security Message PackagingSOAP, MTOM OrchestrationBPEL4WS, WS-CDL TransactionWS-Transactions, WS-Coordination, WS-CAF Reliable MessagingWS-ReliableMessaging, WS-Reliability Routing/AddressingWS-Addressing, WS-MessageDelivery Security PolicyWS-SecurityPolicy Secure ConversationWS-SecureConversation Trusted MessageWS-Trust Federated IdentityWS-Federation Metadata Base Service and Message DescriptionWSDL PolicyWS-Policy, WS-PolicyAssertions Publication and DiscoveryUDDI, WSIL Portal and Presentation Portal and PresentationWSRP Events and NotificationWS-Eventing, WS-Notification Asynchronous ServicesASAP Management Distributed ManagementWSDM, WS-Manageability ProvisioningWS-Provisioning Business Domain Business Domain Specific extensionsVarious Multiple message SessionsWS-Enumeration, WS-Transfer Metadata RetrievalWS-MetadataExchange
© 2008 Everware-CBDI Inc 7 Numbers Don’t Matter - Multiple Standards are Normal Source OASIS
© 2008 Everware-CBDI Inc 8 Making Sense of WS Standards Forrester Research report 115 standards floating around SOA and Web services in its most recent study on that topic.. .. just confirming which vendors support which standards is nearly impossible. Advise: construct just a key list of standards, not a comprehensive one, as you do your SOA planning. For instance, standards such as SOAP and WSDL have been broadly adopted and others, including WS-Security, are ready for wide adoption the specifications needed to build Web services that operate with high quality of service—such as standards for management, transactions and advanced security—are mature enough only for aggressive technology adopters CIOs should focus on the following: SOAP 1.1, WSDL 1.1, WS-I Basic Profile 1.0 or 1.1, UDDI 3.0.2, WS-Security 1.0 or 1.1, WS-BPEL 2.0, BPMN, WSRP 1.0, XML Schema 1.0, XSLT 1.0, XPath 1.0, XQuery 1.0, XML Signature and XML Encryption.
© 2008 Everware-CBDI Inc 9 Oracle and SOA Standards Orchestrating services that have been implemented in J2EE and.NET Building.NET app using J2EE implemented functionality Web Portal including portlets created with J2EE and.NET – using WSRP Microsoft Office document that calls BPEL based process that calls J2EE and.NET services Source Oracle Technology Network
© 2008 Everware-CBDI Inc 10 Service Documentation WSDL is Not Enough Behaviour has to be deduced by Looking at inputs and outputs Reading any embedded comments Guessing Trial-and-error Does not indicate: Business rules implemented Business algorithms applied Business data stored Validation done And it does not define composite operations that must combine specific operations of other services Subset of WSDL 2.0 Metamodel © 2008 HBOS plc
© 2008 Everware-CBDI Inc 11 Service = Black Box Attribution: ICON Computing ( Catalysis workshop) List Service add (in Item, in Number) remove (in Number, out Item) Thingamy Service frob (in Thing, in Number) fritz (in Number, out Thing) Nuclear Reactor Service add (in ControlRod, in Number) remove (in Number, out ControlRod ) Which of these services am I prepared to use? the operations of the service
© 2008 Everware-CBDI Inc 12 Service = Black Box Nuclear Reactor Service add (in ControlRod, in Number) remove (in Number, out ControlRod ) Invariants Unchanging rule defined by SIM status Mandatory Operation Sequences aConsumeraQuotationSer vice requestQuote( ) pollForQuoteResult( ) sendQuoteResult( ) Operation Names Asynchronous request operation Asynchronous notification operation Synchronous request- response operation Service Information Model Part Type identifier: Number6 name: String25 totalItems: Number11 * 1 Warehouse code: Number6 name: String25 address: Line[4] 1 * Stock Item actual: Number9 available: Number9 allocated: Number9 location: String8 1 * holds 1 * stored as knows about knows about Parts Service allocate Parts( ) order Parts( ) new Part Type( ) etc Pre and Post Conditions IF TRUE at start THEN TRUE at end means PRE: POST: PreCondition: Reactor temperature in optimal range PreCondition: Rod slot available Maximum number of operational rods Rod operating data in range 1. Check temperature 2. Validate configuration 3. Verify new rod operating data 4. Remove (rod) 5. Add (rod) CONTROL ROD REACTOR CONFIGURATION OPERATING DATA DEPLOYMENT
© 2008 Everware-CBDI Inc 13 Service = Black Box – Enables Key Principles Nuclear Reactor Service add (in ControlRod, in Number) remove (in Number, out ControlRod ) Abstract Virtualised – abstracted away from the current implementation to reduce dependency Autonomous Independence from outside influences Loose Coupled Encapsulates underlying resource Composable Fractal architecture allows solution flexibility using alternative, specialized and or orchestrated services Reusable Context neutral – must contain and offer functionality that is agnostic of specific contexts Modular Service forms basis for reduction in dependency and componentization Stateless A complete interaction Discoverable Inherently reusable assets Contract Based Formal specification informs consumer external behaviours
© 2008 Everware-CBDI Inc 14 SAE TM SOA Meta Model (Fragment) Initiatives include: OASIS RM – Reference Model OMG UPMS –Unified Profile for Modeling Services CBDI – SAE TM Meta Model CBDI – SAE TM UML Profile
© 2008 Everware-CBDI Inc 15 Comprehensive Service Specification Enables Automation Opportunities Planned Specified Certified Published Operational Retired Being Provisioned Provisioned Archived Service Automated testing and validation Comprehensive information available for potential consumers Comprehensive contract with builders Direct linkage with business requirements Early stage awareness of opportunity/cost Component based development – llel’ism Runtime validation against preconditions and invariants
© 2008 Everware-CBDI Inc 16 Dispersal of Service Metadata Service Service Specification Artefacts Specification Models Service Deployment Artefacts Endpoint Configurations WSDL etc Service Realization Artefacts Service Design Message Schemas Test cases Participants Consumers Providers Accessibility Permissions Security Operational Resources Network Servers Databases Contracts SLA Commercial SAU Deployment Artefacts Executable Data Policies Assertions Rules System Mngmt CMDB SCM Service Registry - Repository IDE LDAP Service Mngmt SAU Artefacts Software Design Software Code Test cases SDAM
© 2008 Everware-CBDI Inc 17 Sample Artifacts and Service Perspectives by View of the SAE Reference Framework Architecture Business View Service Perspective Service Catalog Logical Specification of Software Services Service = Service Specification Service = Software Service Impl. Service Packaging into Automation Units Deployment of Automation Units Service = Run-Time Software Service Business Service = Services offered by Organizational Units Business Service, Context for Software Services Sample Artifacts Specification Implementation Deployment Infrastructure e.g. Network Layout, ESB Infrastructure Service = Run-Time Platform Logical Network Services Physical Network Automation Unit Specification Service Platform Design Specification SO Business Plan Service Implementation Architecture Service Deployment Architecture Service Specification Architecture Technical Architecture Service Specification Service Level Agreement SO Business Model Service Implementation SO Security Architecture Service Portfolio Plan
© 2008 Everware-CBDI Inc 18 Specification Architecture Diagram - Example
© 2008 Everware-CBDI Inc 19 Implementation Architecture Diagram - Example
© 2008 Everware-CBDI Inc 20 Deployment Architecture Diagram - Example
© 2008 Everware-CBDI Inc 21 Reference Architecture – Industry Standards Domains Business Specification Implementation Deployment & Infrastructure Messaging Discovery Description Security Orchestration Reference Model Meta data Management Data Content Composition Planned Specified Certified Published Operational Retired Being Provisioned Provisioned Archived
© 2008 Everware-CBDI Inc 22 SOA/Service Operational Infrastructure Key Infrastructure Capabilities for SOA Life Cycle IDE, ESB Registry Requirements Management Configuration & Asset Management Policy Management Provision/Host Messaging Mediation Orchestration Service ManagementSecurity Policy Management Delivery Infrastructure Planned Specified Certified Published Operational Retired Being Provisioned Provisioned Archived
© 2008 Everware-CBDI Inc 23 Reference Architecture – Enterprise Standard Framework Business Specification Implementation Deployment & Infrastructure Specification templates Vocabulary Reference Architecture Framework Life cycle metadata Usage Contract templates Implementation Contract templates Implementation Patterns Specification patterns Business process patterns patterns Deployment Patterns Business semantics Integration Patterns Protocols and Profiles Assembly Framework Patterns
© 2008 Everware-CBDI Inc 24 SOA Capability Maturity Model Early Learning Initial SOA activity Experimental Integrated Shared services integrate silos, rationalize EAI contracts Integrated approach reduces complexity, cost and increases adaptability Ecosystem Common ecosystem services eliminate organizational boundaries and enable broader economic activity Service concepts standardized across industry sectors and or LOBs Enterprise Enterprise level shared services create enterprise adaptability and consistency SOA enables enterprise wide consistency of business information and processes Applied Project based SOA activity Service architecture enables business adaptability for limited scope Project Structure Next Generation EAI Business Integration Federation
© 2008 Everware-CBDI Inc 25 Standards EARLY LEARNINGAPPLIEDINTEGRATEDENTERPRISEECOSYSTEM Messaging Discovery Description Security Orchestration Reference Model Meta data Management Data Content Composition Industry Standards
© 2008 Everware-CBDI Inc 26 Why Industry Standards Future proofing Platform neutrality Interoperability Automation Reuse
© 2008 Everware-CBDI Inc 27 Standards EARLY LEARNINGAPPLIEDINTEGRATEDENTERPRISEECOSYSTEM Messaging Discovery Description Security Orchestration Reference Model Meta data Management Data Content Composition Vocabulary Reference Architecture Protocols and Profiles Lifecycle metadata Specification Patterns Business Semantics Industry Standards Enterprise Standard
© 2008 Everware-CBDI Inc 28 Why Enterprise Standards? Communications Leverage skills and knowledge Avoid reinventing the wheel. Cost. Reuse (patterns, knowledge, components, code, services) Interoperability Governance, Quality
© 2008 Everware-CBDI Inc 29 Summary Industry standards are foundational Enterprise standards are essential enablers of effective architecture Structured service architecture is key enabler of component based business: Heterogeneous implementation and deployment Offshore, Outsourced, Custom, Commodity... Multi-year transformation
© 2008 Everware-CBDI Inc 30 Discussion & Poll What phase of roadmap adoption? What level of adoption of WS standards? What approach to service specification? Enterprise framework and standards?
© 2008 Everware-CBDI Inc 31 Independent Guidance for Service Architecture and Engineering