why can’t we all just get along?
DESCRIPTION
Why Can’t We All Just Get Along?. Glen Daniels Progress Software. Application Platforms. Services Infrastructure. Data Infrastructure. Progress Software. Business Application Platform. OpenEdge. Integrated platform optimized for business. Event Processing. Apama. - PowerPoint PPT PresentationTRANSCRIPT
Why Can’t We All Just Get Along?
Glen Daniels
Progress Software
© 2006 Progress Software Corporation2
DataXtend Data Integration
EasyAskNatural Language Search and Query
DataDirectData Connectivity
ObjectStore
OpenEdge
Apama
Actional
Shadow
Sonic
Object Data Management
Business Application Platform
Event Processing
Enterprise Service Bus
SOA & Web Services Management
Mainframe Integration
Application Platforms
Data Infrastructure
Services Infrastructure
First model-driven semantic data integration
First unified mainframe integration platform
Market leading ESB
Market leading event processing platform
First and leading natural language query
Market leader in data connectivity
Integrated platform optimized for business
Leading enterprise-class SOA management
Market leading object database
Progress Software
© 2006 Progress Software Corporation3
A Little About Sonic
We’re all about Integration• Message-centric (async)
• Highly distributed
• Legacy / Mainframe
• Data adaptation
• Orchestration
“Connect everything… achieve anything”
© 2006 Progress Software Corporation4
Different Strokes
We live in a multi-protocol world• JMS, FTP, UDP, Jabber, etc.
Not always necessary to switch…• Services rarely move from one to another
…but necessary to adapt!• You never know who you might be talking to
• Data formats, protocols, semantics
© 2006 Progress Software Corporation5
External or Internal?
Sometimes integrating units within the same company can be “external”• Regulatory compliance requires IT diffs
• Organizational opacity
Bringing in a new acquisition can make formerly disparate systems “internal”.• Newly shared security domains, registries, etc
Shared models can really help here• WSDL, Bindings
© 2006 Progress Software Corporation6
The Promise
Web Services as common “glue” for talking to a variety of platforms
Wire-level interoperability to avoid the “many adapters” issue
A composible set of specs which smoothly take you from simple to richly-featured
Distributed extensibility and evolution Interop… also WRT Skills and Tools
© 2006 Progress Software Corporation7
The Reality
Lack of community architectural consistency• No standard for how to write/use extensions
• No real framework for bindings with various capabilities
Interoperability problems• Whither Soapbuilders/WS-I?
Perception as bloated, vendor-controlled
…and some great successes too
© 2006 Progress Software Corporation8
URIs
URI == Endpoint?• Metadata about resources is critical
– Content-type is NOT enough
• …but you shouldn’t require EPRs to get it
Single URI -> single resource• Need stronger curb on use of RefPs
• Policy, Sem Web assertions, etc.
Benefits of URIs are well-understood, let’s not throw them out
© 2006 Progress Software Corporation9
Bindings
We love bindings!• Design a service in the abstract (types,
operations)
• Bind to particular formats, policies, addresses
Great for managing change• Evolution
• Apply policies
© 2006 Progress Software Corporation10
A Common View : Benefits
You get a lot from a common service model• Manageability / governance
• Registries
• Interoperability
• Tooling (codegen, orchestration)
• Composibility (intermediaries/mediation)
Is WSDL it?
© 2006 Progress Software Corporation11
We’re Not Highlanders
“There can be only one” – NOT!
There is a place for WS next to the Web
Can we get to a place where enterprise “ility-enabled” apps, over a variety of underlying protocols, gain from what we’ve learned from the Web?• URIs, Proxies, Uniform IF
© 2006 Progress Software Corporation12
So Where Do We Go From Here?
Collect “enterprisey” use cases• Build taxonomy and best practices• Demonstrate the same story with WS and
REST?• Picking the right tool for the right job
Push harder for architectural coherence• EPRs/URIs – please let’s get the word out• Is “composibility” a myth?• Versioning
Interop work?