200 likes | 400 Views
Web Services A look to the future. By Dr Colin Adam. WebServices.Org. 33K members 12 Sponsors Over 1000 articles 300K page views per month All Open Source Editorials by Alan Kotok, David Orchards, Eric Newcomer. Web Services Today.
E N D
Web Services A look to the future By Dr Colin Adam
WebServices.Org • 33K members • 12 Sponsors • Over 1000 articles • 300K page views per month • All Open Source • Editorials by Alan Kotok, David Orchards, Eric Newcomer.
Web Services Today • SOAP provides message interoperability between software components • WSDL provides description of service to provide interoperability between development tools • These successes have lead to developers wanting more capabilities So where do we go from here?
We Need More Standards [WS-Acknowledgement][WS-ActiveProfile][WS-Addressing][WS-Attachments][WS-Authorization][WS-AtomicTransaction][WS-BusinessActivity][WS-CAF][WS-Callback][WS-Coordination] [WS-Federation][WS-Inspection][WS-Manageability] [WS-PassiveProfile] [WS-EndpointResolution][WS-MessageData] [WS-MetadataExchange] [WS-Policy][WS-PolicyAssertions][WS-PolicyAttachment] [WS-Provisioning][WS-Privacy][WS-Referral][WS-Reliability][WS-ReliableMessaging] [WS-Routing][WS-Referral][WS-SecureConversation][WS-Security][WS-SecurityPolicy][WS-Transaction][WS-TransmissionControl][WS-Trust][BPEL4WS][WS-Choreography][WSRP][WSXL]
Standards are good.. "These are the infrastructure pieces that will lead to an explosion in web services“ Bill Gates BUT “We face a key engineering challenge: How do we give Web services new security, reliability, and transaction capabilities without adding more complexity than needed” Donald Ferguson, IBM
A basis for the future • A general-purpose, composable protocol framework • Protocols are factored from both transports and application semantics • Architecture is metadata-driven, policy-based • Broad industry partnership
The Protocol Framework SecurityWS-Security WS-Trust WS-Federation … ReliabilityWS-Reliable Messaging … TransactionsWS-Transaction WS-Coordination … Metadata WSDL, WS-Policy, … Messaging SOAP, WS-Addressing, … XML XML, XSD, XPath, … Transports HTTP, UDP, …
Composing a message <S:Envelope … > <S:Header> <wsa:ReplyTo> <wsa:Address>http://business456.com/User12</wsa:Address> </wsa:ReplyTo> <wsa:To>http://fabrikam123.com/Traffic</wsa:To> <wsa:Action>http://fabrikam123.com/Traffic/Status</wsa:Action> <wssec:Security> <wssec:BinarySecurityToken ValueType="wssec:X509v3" EncodingType=“wssec:Base64Binary"> dWJzY3JpYmVyLVBlc…..eFw0wMTEwMTAwMD </wssec:BinarySecurityToken> </wssec:Security> <wsrm:Sequence>zzz <wsu:Identifier>http://fabrikam123.com/seq1234</wsu:Identifier> <wsrm:MessageNumber>10</wsrm:MessageNumber> </wsrm:Sequence> </S:Header> <S:Body> <app:TrafficStatus xmlns:app="http://highwaymon.org/payloads"> <road>520W</road><speed>3MPH</speed> </app:TrafficStatus> </S:Body> </S:Envelope> Addressing Security Reliability
Then What? Assume we have the standards and architecture • Standards are no good without implementations • Standards need to be “policed” • How will any developer possibly use them since they are complicated and numerous?
Implementations • Java Community Process – lots of JSRs on the go • Microsoft’s Indigo • New tools such as Sun Java Studio Creator (out soon), Microsoft Visual Studio, BEA WebLogic Workshop, Eclipse
Developer Utopia • Drop down menu of Web services specific to his/her IDE settings • Intellisense Web services calls • Automatic serialisation of data into XML • Automatic performance tweaking • Orchestration/Business Logic mapping • Visual Data Mapping to legacy • Automatic handling of security, reliability, transactions. • Constraints placed on declarations possible
Indigo • “Indigo unifies a wide range of transports (HTTP, TCP, UDP, IPC), security mechanisms (public and symmetric keys, certificates), topologies (point-to-point, end-to-end through intermediaries, peer-to-peer, publish-and-subscribe), and assurances (transacted, reliable, durable) enabling Indigo to provide rich connectivity to many existing systems. “ Don Box
What Microsoft Says • "Indigo" is a new approach to building and running connected systems built from the ground up around the Web services architecture. “ BillG • “You can either do a lot in declarative statements to let you build these services. If you go to the next level down in the architecture, there are connectors and channels for you to import “ Jim Allchin
Policing The Standards • Standards are held at different organisations • Implementations need to interoperate • Vendors needs somewhere to “talk” • Test tools for compatibility “WS-I fulfills a need by providing clarifications and constraints on those de facto standards that will enable vendors and developers to implement and use these technologies in an interoperable manner. “ Chris Ferris speaking to ws.org
A few challenges for the future • Extensibility - Need to avoid “big-bang” upgrades – The Web does this well • Evolvability – Need to work on versioning – forwards-backwards compatibility • Early binding – re-use tried and trusted semantics and stick to them • Asynchronous – let’s not wait for each other
My predications • 2004 will see some final specifications on QoS going through OASIS/W3C • 2005 Indigo will go head to head with Java and win a lot of hearts and minds • 2006 80% code on new projects will be WS-I complaint • 2007 Peoples lives will be made easier with Web services • 2010 nearly all software created from within a SOA and XML natural language tools • 2020 NHS changes its name to NHWS (National Health Web Service) • 2030 - Last mainframe sold.
NHS -> NHWS • The NHS requires new protocols and implementations now, not later. • Stay away from RYO approaches. • Open source has a lot of advantages and is just as good, if not better • Think in terms of loose coupling and constraints therein • Get some good IT Architects • Decide what will join the web services together
The end • Any Questions?