SOA24 WSAlphabet Soup Making sense of SOA standards
SOA-24: WS-Alphabet. Soup Making sense of SOA standards Jaime Meritt Director of Technology
Goals for Today § Web services protocols and specifications have grown in number and complexity over the last decade • How do you know what they all do? • How do you know which are the important ones for you? § Too many combinations = cognitive overload for developers • How do you make sense of today’s Web services and turn WS-Alphabet. Soup into WS-World. Peace? • A comprehensive, yet comprehensible overview of the SOA standards 2 SOA-24: WS-Alphabet. Soup © 2008 Progress Software Corporation
The SOA Promise Agility: Respond faster to changing business needs; create and modify business processes Re-use: Make services broadly available, including across the Internet “cloud” Integration: Eliminate boundaries between business functions and integrate value chains 3 SOA-24: WS-Alphabet. Soup © 2008 Progress Software Corporation
The Need for SOA Standards Great! What’s the catch? 4 SOA-24: WS-Alphabet. Soup © 2008 Progress Software Corporation
The WS-Alphabet. Soup The Fundamentals - XML - SOAP - XSD - WSDL - JMS - WS-Addressing - HTTP - WS-Policy 5 SOA-24: WS-Alphabet. Soup © 2008 Progress Software Corporation
The WS-Alphabet. Soup The Qualities of Service 6 - WS-Security - WS-Coordination - WS-Reliable. Messaging - WS-Secure. Conversation - WS-Atomic. Transaction - WS-Trust - WS-Business. Activity - WS-Federation SOA-24: WS-Alphabet. Soup © 2008 Progress Software Corporation
The WS-Alphabet. Soup The Process Layer -BPEL -BPM - XPDL 7 SOA-24: WS-Alphabet. Soup © 2008 Progress Software Corporation
Two Standards are Better than One § Web service standards are layered and extensible • Individual standards are often simple, complexity is in combination • Each endpoint binds a particular set of standards to an access point § Web Services may expose a variety of endpoints to maximize reuse • Clients choose the optimal communications mechanism • Choice is often dictated by the platform in use 8 SOA-24: WS-Alphabet. Soup © 2008 Progress Software Corporation
Fundamentals: Transport § § § HTTP most widely deployed protocol for Internet communications • Messages are standard MIME • Multipart messages facilitate attachments Intra-enterprise is a mix of protocols beyond HTTP • MOM Providers • SMTP • FTP Transport security and reliability mechanisms can be used as an alternative to SOA standards • Often provides performance advantages • Reduces the reusability of components 9 SOA-24: WS-Alphabet. Soup © 2008 Progress Software Corporation
Fundamentals: Data Format § XML • Provides a neutral representation of data • Supported across all platforms and programming environments § XML Schema • Syntax and structural rules • Object-oriented language with rich extensibility 10 SOA-24: WS-Alphabet. Soup © 2008 Progress Software Corporation
Fundamentals: Data Format § Security • XML Encryption for privacy • XML Digital Signature for integrity § Query and Transformation • XPath allows simple indexing into a document • XSLT provides transformation from one format to another • XQuery provides rich capabilities to inquire into collections of documents 11 SOA-24: WS-Alphabet. Soup © 2008 Progress Software Corporation
Fundamentals: Messaging § SOAP • Enveloping structure to identify header and body contents • Higher level protocols build on header extensibility § WS-Addressing • To, from, reply, fault, action • Can be used for asynchronous server to server interactions § Attachments and MTOM • Arbitrary payload optimized for binary data • Integrates content into XML infoset 12 SOA-24: WS-Alphabet. Soup © 2008 Progress Software Corporation
Fundamentals: Metadata § § § 13 Web Services Description Language Define the logical interface of a service in terms of messages and operations Doc/literal vs. RPC/encoded Specifies endpoint addresses and policy WSDL compilers hide the complexity from clients SOA-24: WS-Alphabet. Soup WSDL Port. Type Operation Logical Contract Message Part Data Type Binding Physical Contract Service Port © 2008 Progress Software Corporation
Fundamentals: Metadata § WS-Policy Framework • Attach constraints and interaction options to services • Defines a set of requirements that have to be met in order to consume a web service • Individual dialects specify the actual policy assertions § UDDI • • 14 A catalog of services – think LDAP for WS Browsing and query interfaces Synchronization between registries Subscriptions to change notifications SOA-24: WS-Alphabet. Soup © 2008 Progress Software Corporation
Qualities of Service: Security § WS-Security • Integrates authentication, integrity, and encryption into SOAP • Security profiles support a wide array of authentication mechanisms – Username/Password, X 509 certificates, Transport • Security. Policy defines specific requirements § Emerging • WS-Secure. Conversation to optimize encryption • SAML for single-sign-on 15 SOA-24: WS-Alphabet. Soup © 2008 Progress Software Corporation
Qualities of Service: Reliability WS-Reliable. Messaging § § § 16 Allows separation of transport from reliability Client and server buffer messages Message ordering and acknowledgement Peer to peer model Widely supported but not yet widely deployed SOA-24: WS-Alphabet. Soup © 2008 Progress Software Corporation
Qualities of Service: Transactions § WS-Transaction • Base standard establishes the role of a coordinator and completion protocols • WS-Atomic. Transaction is the next XA • Business Activity provides a compensating model • The Microsoft Factor § BPEL Transactions are more prevalent in the ecosystem • What is BPEL? 17 SOA-24: WS-Alphabet. Soup © 2008 Progress Software Corporation
The Process Layer Two different forms of process management BPEL ≠ BPM Should really be Service Orchestration Language! 18 SOA-24: WS-Alphabet. Soup © 2008 Progress Software Corporation
The Process Layer: BPM “What is the impact on the business if I automate three steps? ” § § § 19 Model the whole, real business process, not just the IT systems (people, roles, scheduling, cost) to optimize the business User: business analyst or other business user Requires minimal knowledge of IT systems Tools for business-level simulation, monitoring, optimization Few standards due to wide spectrum of offerings • See Lombardi presentation for more information… SOA-24: WS-Alphabet. Soup © 2008 Progress Software Corporation
The Process Layer: BPEL “How do I connect and orchestrate IT systems? ” § Compose processes out of SERVICES 20 SOA-24: WS-Alphabet. Soup existing services and processes § Correlate events within and across running processes § Control flow: conditionals, loops, delays, scoped state § Manage concurrent (often long-running) service interactions § Compensate for completed activities in the event of failure © 2008 Progress Software Corporation
Profiles: Standards for Standards § How have others tried to add structure to this chaos? § WS-I provides a least common denominator for interoperability § Widely supported but sometimes insufficient § Platforms are the new standards • WCF 3. 5 sets the bar 21 SOA-24: WS-Alphabet. Soup © 2008 Progress Software Corporation
What if I wasn’t listening? Progress infrastructure removes the rocket science § Progress SOA Portfolio • ESB to normalize disparate communications protocols to establish a secure and reliable foundation • Actional® to implement and enforce security policies across a heterogeneous infrastructure • Rich SOA standards support across portfolio § Progress® Open. Edge® • Expose business applications to a variety of consumers over standard web services protocols • Integration with Sonic™ ESB and Sonic. MQ® allows for extended standards support from OE 22 SOA-24: WS-Alphabet. Soup © 2008 Progress Software Corporation
In Summary A working knowledge of SOA standards will improve architecture decisions SOA standards enable rich interaction models between heterogeneous platforms SOA Standards are constantly in flux, let middleware worry about it so you don’t have to 23 SOA-24: WS-Alphabet. Soup © 2008 Progress Software Corporation
Relevant Exchange Sessions § § § 24 SOA-8: BPM – What Is It and How Can I Use It with SOA to Maximize IT and Business Success? SOA-11: Common Applications of Sonic ESB SOA-26: Extending your application with Open. Edge Web services SOA-27: Practical Approaches for Implementing a Service Oriented Architecture SOA-39: Securing Your SOA: Mitigating Security Risks of a De-coupled Infrastructure SOA-24: WS-Alphabet. Soup © 2008 Progress Software Corporation
For More Information, go to… § § Wikipedia is a great source for high level overviews Countless articles and many books are available for detailed coverage. For Java Geeks… • Java Web Services. David Chappell and Tyler Jewell, O’Reilly, March 2002, ISBN 0596002696. • Building Web Services in Java: Making Sense of XML, SOAP, WSDL, and UDDI. Steve Graham, Doug Davis, Simeonov, and Glen Daniels , Sams, July 2004, ISBN 0672326418 25 SOA-24: WS-Alphabet. Soup © 2008 Progress Software Corporation
? Questions 26 SOA-24: WS-Alphabet. Soup © 2008 Progress Software Corporation
Thank You 27 SOA-24: WS-Alphabet. Soup © 2008 Progress Software Corporation
28 SOA-24: WS-Alphabet. Soup © 2008 Progress Software Corporation
- Slides: 28