Title: SOA-6: Standards for Service-Oriented Architecture
1SOA-6 Standards for Service-Oriented Architecture
Glen Daniels
Standards Strategist, Sonic
2Agenda
- SOA in a Nutshell
- The Need for Standards
- The Standards Landscape
- Key Standards for SOA Today
- Mediation A Brief Interlude
- Key Standards for SOA Tomorrow
- Summary
3SOA in a Nutshell (ities)
- Same Old Architecture?
- Modularity
- Composability
- Interoperability
- Coarse-grained businesscomponents
- OpenEdge Reference Architecture
Java
.NET
OpenEdge
4Shared Models Interoperability
- Physical communication channels
- Data formats
- Protocol framing / MEPs
- QoS (security, reliability, etc)
- Component interfaces
- Policies
- Semantics
- ALL of this needs to be agreed upon!
5The Need for Standards
- Standards provide the common structure components
require in order to work together - Standards are the fuel which makes SOA go
6Agenda
- SOA in a Nutshell
- The Need for Standards
- The Standards Landscape
- Key Standards for SOA Today
- Mediation A Brief Interlude
- Key Standards for SOA Tomorrow
- Summary
7Landscape Types of Standards
- De Facto / De Jure
- Wire-level standards (WS-, EDI)
- Data standards (XML, SQL, ProDataSet)
- API standards (DOM, JAX-RPC, Apache)
- Metadata standards (WSDL, WS-Policy)
- Design standards (UML)
8Landscape Whos Working on What?
- World Wide Web Consortium (W3C)
- XML, Web Services core, Semantic Web
- OASIS
- WS-
- IETF
- Email, HTTP, TCP, etc.
- WS-I
- Interoperability profiles
- JCP
- Java APIs
- Open Source Communities
- De facto standards (Apache, Eclipse, etc)
9Specifications ! Standards
- Open Standards consortia are the best places to
get tech - IPR policy is clear
- Community has had a chance to vet specs
- but innovation requires that consortia arent
the only place to get tech - Individual companies or small groups publish
specs before de jure standardization - Distributed evolution
10Agenda
- SOA in a Nutshell
- The Need for Standards
- The Standards Landscape
- Key Standards for SOA Today
- Mediation A Brief Interlude
- Key Standards for SOA Tomorrow
- Summary
11SOA and Web Services
- Web Services have broad industry agreement
- Based on XML, common data model
- Composability baked in to the core
- Versioning
- Distributed evolution
12Web Service Patterns Bindings
Binding
Service
Abstract OpenEdge
Concrete SOAPHTTPWS-Security
- Web services can be bound to different
underlying protocols - Bindings also provide the ability to control
policy/metadata - Separation of concerns
- This provides a lot of flexibility the same
abstract model can be used while the underlying
implementation is switched/updated over time
13Web Service Patterns MustUnderstand
- Extensions can be optional (this is available) or
mandatory (you must do this). - Allows extensions to CHANGE critical behaviors in
a safe way - Must understand allows distributed extensibility
- Different extensions at different times, from
different sources - This model allows fast fail, which really helps
us humans do debugging
14Key Standards For SOA Today WSDL
- Web Service Description Language
- W3C
- Machine readable contract
- Metadata about services
- Address of endpoints
- Interface
- Message structure
- Data types
15Key Standards For SOA Today SOAP
ltHeadersgt
- W3C
- XML Envelope with Headers and Body
- Headers contain extensions security,
transactions, etc
- Processing Model with mandatory or optional
extensions - Bindings to protocols like HTTP, Email, JMS, etc
ltBodygt
16Key Standards For SOA Today WS-Addressing
- W3C
- SOAP version of familiar concepts TO, FROM,
REPLY-TO, etc - Endpoint References can contain policies,
metadata, cookies (Reference Parameters)
- Allows responses to be delivered along separate
connections (asynchronously) - Allows composition of multiple interactions
(process)
17Key Standards For SOA Today WS-Policy
- W3C (finally!)
- Capabilities and Requirements metdata
- I support reliability
- I require authentication
- Group sets of assertions into policies
- Refer to policies from WSDL, in EPRs, etc.
ltwspPolicygt lt/wspPolicygt
18Key Standards For SOA Today WS-Security
- OASIS
- Message-level security
- Encryption
- Authentication (XML Digital Signature)
- End-to-end, not point-to-point
- Profiles for simple uname/password, SAML,
Kerberos, etc
19Key Standards For SOA Today WS-RM
A
B
- OASIS
- Builds reliable sequences of messages over
unreliable transports
- Needed to ensure duplicate detection, ordering,
etc
20Wheres My Flying Car?
- How far along is all this anyway?
- Basic WS mostly works today
- Advanced WS almost there
- Policy-driven process-oriented integration will
take a little longer - Even when a stack has stabilized, change will
be a factor (thank goodness!)
21Mediation A Brief Interlude
Service
Consumer
Intermediary
22Mediation Benefits
- Limits unnecessary tight coupling
- Separates concerns
- Manages evolution
- Insulates you from external changes
- Allows you to make internal changes
- Leverage existing assets in new ways
- Adapts message patterns, protocols, data formats,
etc.
23Mediation The Enterprise Service Bus
24Agenda
- SOA in a Nutshell
- The Need for Standards
- The Standards Landscape
- Key Standards for SOA Today
- Mediation A Brief Interlude
- Key Standards for SOA Tomorrow
- Summary
25WS-Eventing / WS-Notification
- Asynchronous event processing
- Specs will eventually merge
EventGeneratorService
Consumer
1. Subscribe()
2. Notify()
26Management (WSDM/WS-Management)
- Interoperable control and monitoring
- Specs will eventually merge
27WS-SecureExchange (WS-SX)
- WS-SecureConversation
- Secure sessions
- WS-Trust
- Allow different domains to vouch for users
- In OASIS now
28WS-Transactions (WS-TX)
- Coordinating multiple resources over SOAP
- AtomicTransactions 2-phase commit
- BusinessActivity long running transactions
- In OASIS now
29Business Process Execution Language (BPEL)
- Process definition/execution language
- Allows sharing process descriptions
- OASIS
30SCA
- Language-neutral application assembly model
31XQuery
- Rich language for manipulating XML data
- Turing-complete (control flow, functions, etc)
32Progress Plays Here
- Participants from the Progress family are active
in many of these specs/groups - As the landscape evolves, well help you get there
33In Summary
- SOA is an architectural pattern that needs
standards to make it real and interoperable - Web Services are the way that happens (for today)
- Architecture lasts, though individual standards
will evolve - Use OpenEdge Reference Architecture
- Progress/Sonic has your back
- Mediate and insulate!
34Relevant Exchange Sessions
- SOA-12 OpenEdge Web Services
- David Lund
- INNOV-10 Introduction to XQuery
- Gus Bjorklund
35Questions?
36Thank you foryour time
37(No Transcript)