28
SOA-24: WS-AlphabetSoup Making sense of SOA standards Jaime Meritt Director of Technology

SOA-24: WS-AlphabetSoup Making sense of SOA standards Jaime Meritt Director of Technology

Embed Size (px)

Citation preview

Page 1: SOA-24: WS-AlphabetSoup Making sense of SOA standards Jaime Meritt Director of Technology

SOA-24: WS-AlphabetSoup

Making sense of SOA standards

Jaime MerittDirector of Technology

Page 2: SOA-24: WS-AlphabetSoup Making sense of SOA standards Jaime Meritt Director of Technology

© 2008 Progress Software Corporation2 SOA-24: WS-AlphabetSoup

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-AlphabetSoup into WS-WorldPeace?

• A comprehensive, yet comprehensible overview of the SOA standards

Page 3: SOA-24: WS-AlphabetSoup Making sense of SOA standards Jaime Meritt Director of Technology

© 2008 Progress Software Corporation3 SOA-24: WS-AlphabetSoup

The SOA Promise

Agility: Respond faster to changing business needs; create and modify business processes

Integration: Eliminate boundaries between business functions and integrate value chains

Re-use: Make services broadly available, including across the Internet “cloud”

Page 4: SOA-24: WS-AlphabetSoup Making sense of SOA standards Jaime Meritt Director of Technology

© 2008 Progress Software Corporation4 SOA-24: WS-AlphabetSoup

The Need for SOA Standards

Great! Great! What’s the catch?What’s the catch?

Page 5: SOA-24: WS-AlphabetSoup Making sense of SOA standards Jaime Meritt Director of Technology

© 2008 Progress Software Corporation5 SOA-24: WS-AlphabetSoup

The WS-AlphabetSoup

XML

Messaging Metadata

TransactionsSecurity Reliability

Business Process Orchestration

Transport

The Fundamentals

- XML - SOAP

- XSD - WSDL

- JMS - WS-Addressing

- HTTP - WS-Policy

Page 6: SOA-24: WS-AlphabetSoup Making sense of SOA standards Jaime Meritt Director of Technology

© 2008 Progress Software Corporation6 SOA-24: WS-AlphabetSoup

The WS-AlphabetSoup

XML

Messaging Metadata

TransactionsSecurity Reliability

Business Process Orchestration

Transport

The Qualities of Service

- WS-Security - WS-Coordination

- WS-ReliableMessaging - WS-SecureConversation

- WS-AtomicTransaction - WS-Trust

- WS-BusinessActivity - WS-Federation

Page 7: SOA-24: WS-AlphabetSoup Making sense of SOA standards Jaime Meritt Director of Technology

© 2008 Progress Software Corporation7 SOA-24: WS-AlphabetSoup

The WS-AlphabetSoup

XML

Messaging Metadata

TransactionsSecurity Reliability

Business Process Orchestration

Transport

The Process Layer

-BPEL

-BPM

- XPDL

Page 8: SOA-24: WS-AlphabetSoup Making sense of SOA standards Jaime Meritt Director of Technology

© 2008 Progress Software Corporation8 SOA-24: WS-AlphabetSoup

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

Page 9: SOA-24: WS-AlphabetSoup Making sense of SOA standards Jaime Meritt Director of Technology

© 2008 Progress Software Corporation9 SOA-24: WS-AlphabetSoup

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

Page 10: SOA-24: WS-AlphabetSoup Making sense of SOA standards Jaime Meritt Director of Technology

© 2008 Progress Software Corporation10 SOA-24: WS-AlphabetSoup

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

Page 11: SOA-24: WS-AlphabetSoup Making sense of SOA standards Jaime Meritt Director of Technology

© 2008 Progress Software Corporation11 SOA-24: WS-AlphabetSoup

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

Page 12: SOA-24: WS-AlphabetSoup Making sense of SOA standards Jaime Meritt Director of Technology

© 2008 Progress Software Corporation12 SOA-24: WS-AlphabetSoup

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

Page 13: SOA-24: WS-AlphabetSoup Making sense of SOA standards Jaime Meritt Director of Technology

© 2008 Progress Software Corporation13 SOA-24: WS-AlphabetSoup

Fundamentals: Metadata

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

Port

Service

Binding

Data Type

Part

Message

Operation

PortType

WSDL

LogicalContract

PhysicalContract

Page 14: SOA-24: WS-AlphabetSoup Making sense of SOA standards Jaime Meritt Director of Technology

© 2008 Progress Software Corporation14 SOA-24: WS-AlphabetSoup

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

• A catalog of services – think LDAP for WS• Browsing and query interfaces• Synchronization between registries• Subscriptions to change notifications

Page 15: SOA-24: WS-AlphabetSoup Making sense of SOA standards Jaime Meritt Director of Technology

© 2008 Progress Software Corporation15 SOA-24: WS-AlphabetSoup

Qualities of Service: Security

WS-Security • Integrates authentication, integrity, and

encryption into SOAP

• Security profiles support a wide array of authentication mechanisms – Username/Password, X509 certificates, Transport

• SecurityPolicy defines specific requirements

Emerging• WS-SecureConversation to optimize encryption

• SAML for single-sign-on

Page 16: SOA-24: WS-AlphabetSoup Making sense of SOA standards Jaime Meritt Director of Technology

© 2008 Progress Software Corporation16 SOA-24: WS-AlphabetSoup

Qualities of Service: Reliability

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

WS-ReliableMessaging

Page 17: SOA-24: WS-AlphabetSoup Making sense of SOA standards Jaime Meritt Director of Technology

© 2008 Progress Software Corporation17 SOA-24: WS-AlphabetSoup

Qualities of Service: Transactions

WS-Transaction• Base standard establishes the role of a

coordinator and completion protocols• WS-AtomicTransaction is the next XA • Business Activity provides a compensating

model• The Microsoft Factor

BPEL Transactions are more prevalent in the ecosystem • What is BPEL?

Page 18: SOA-24: WS-AlphabetSoup Making sense of SOA standards Jaime Meritt Director of Technology

© 2008 Progress Software Corporation18 SOA-24: WS-AlphabetSoup

The Process Layer

BPEL ≠ BPMShould really be Service Orchestration Language!

Two different forms of process management

Page 19: SOA-24: WS-AlphabetSoup Making sense of SOA standards Jaime Meritt Director of Technology

© 2008 Progress Software Corporation19 SOA-24: WS-AlphabetSoup

The Process Layer: BPM

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…

“What is the impact on the business if I automate three steps?”

Page 20: SOA-24: WS-AlphabetSoup Making sense of SOA standards Jaime Meritt Director of Technology

© 2008 Progress Software Corporation20 SOA-24: WS-AlphabetSoup

Compose processes out of 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

SERVICES

SERVICES

The Process Layer: BPEL

“How do I connect and orchestrate IT systems?”

Page 21: SOA-24: WS-AlphabetSoup Making sense of SOA standards Jaime Meritt Director of Technology

© 2008 Progress Software Corporation21 SOA-24: WS-AlphabetSoup

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

Page 22: SOA-24: WS-AlphabetSoup Making sense of SOA standards Jaime Meritt Director of Technology

© 2008 Progress Software Corporation22 SOA-24: WS-AlphabetSoup

What if I wasn’t listening?

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® OpenEdge®

• Expose business applications to a variety of consumers over standard web services protocols

• Integration with Sonic™ ESB and SonicMQ® allows for extended standards support from OE

Progress infrastructure removes the rocket science

Page 23: SOA-24: WS-AlphabetSoup Making sense of SOA standards Jaime Meritt Director of Technology

© 2008 Progress Software Corporation23 SOA-24: WS-AlphabetSoup

In Summary

A working knowledge of SOA standards will improve architecture decisions

SOA Standards are constantly in flux, let middleware worry about it so you don’t have to

SOA standards enable rich interaction models between heterogeneous platforms

Page 24: SOA-24: WS-AlphabetSoup Making sense of SOA standards Jaime Meritt Director of Technology

© 2008 Progress Software Corporation24 SOA-24: WS-AlphabetSoup

Relevant Exchange Sessions

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

OpenEdge 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

Page 25: SOA-24: WS-AlphabetSoup Making sense of SOA standards Jaime Meritt Director of Technology

© 2008 Progress Software Corporation25 SOA-24: WS-AlphabetSoup

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, Simeon Simeonov, and Glen Daniels , Sams, July 2004, ISBN 0672326418

Page 26: SOA-24: WS-AlphabetSoup Making sense of SOA standards Jaime Meritt Director of Technology

© 2008 Progress Software Corporation26 SOA-24: WS-AlphabetSoup

Questions?

Page 27: SOA-24: WS-AlphabetSoup Making sense of SOA standards Jaime Meritt Director of Technology

© 2008 Progress Software Corporation27 SOA-24: WS-AlphabetSoup

Thank You

Page 28: SOA-24: WS-AlphabetSoup Making sense of SOA standards Jaime Meritt Director of Technology

© 2008 Progress Software Corporation28 SOA-24: WS-AlphabetSoup