Integratie Software Systemen Alonso, Casati, Kunu & Machiraju Web Services - Concepts, Architectures and Applications Hoofdstuk 5 – Webservices Danny Romme ( ) Jan Vogels ( )
Waar gaat het over? Introductie Web Services (Jan) Beperkingen conventionele middleware (Jan) Essentiële concepten Web Services (Jan) Overzicht middleware (Danny) Web Service architecture (Danny)
Definitie (1) Verscheidene definities van algemeen tot specifiek ” Definitie van het UDDI consortium: “self-contained, modular business applications that have open, Internet- oriented, standards-based interfaces” Nadruk op standaarden en internettoegang Nadruk op standaarden en internettoegang Niet precies genoeg Niet precies genoeg
Definitie (2) Definitie van W3C: “a software application identified by a URI, whose interfaces and bindings are capable of being well-defined, described, and discovered as XML artifacts. A web service supports direct interactions with other software agents using XML-based messages exhanged via Internet-based protocols”
Definitie (3) Definitie van Webopedia: “a standardized way of integrating web-based applications using the XML, SOAP, WSDL, and UDDI open standards over an internet protocol backbone. XML is used to tag the data, SOAP is used to transfer the data, WSDL is used for describing the services available, and UDDI is used for listing what services are available”
Definitie (4) Webopedia definitie specificeert standaarden Standaarden vormen niet de essentie Boek hanteert W3C definitie
B2B Integratie Voorbeeld supply chain Voorbeeld supply chain web server internal infrastructure warehouse web server internal infrastructure internal procurement requests B2B interactions occur by accessing Web pages, filling Web forms, or via .
Limitations of Conventional Middleware in B2B Integration Conventionele middleware in voorbeeld niet handig Conventionele middleware in voorbeeld niet handig 1 middleware systeem 1 middleware systeem Implementatie global workflow Implementatie global workflow
Limitations of Conventional Middleware in B2B Integration (2) internal infrastructure supplier customer warehouse internal infrastructure internal procurement requests message broker WfMS adapter WfMS a “global” workflow is executed here the combination of message broker and adapters enables interoperability third party customer’s adapters warehouse’s adapters supplier’s adapters
Limitations of Conventional Middleware in B2B Integration (3) Conceptueel mogelijk, maar praktisch lastig Conceptueel mogelijk, maar praktisch lastig Gebrek aan vertrouwen (Lack of trust) Gebrek aan vertrouwen (Lack of trust) Autonomie Autonomie Confidentialiteit Confidentialiteit Mogelijke oplossing: Point-to-point Mogelijke oplossing: Point-to-point
Point-to-Point (1) internal infrastructure supplier customer internal infrastructure customer’s adapters supplier’s adapters message broker XYZ message broker XYZ
Point-to-Point (2) Waarborgt confidentialiteit Waarborgt confidentialiteit Voor elke partner nieuwe afspraken Voor elke partner nieuwe afspraken Heterogeniteit Heterogeniteit Integratie noodzakelijk Integratie noodzakelijk
Point-to-Point (3) internal infrastructure supplier warehouse middleware for supplier-customer interaction middleware for supplier-warehouse interaction middleware for supplier-XYZ interaction middleware for integrating the middleware customer another party (XYZ) yet another party (ABC) middleware for supplier-ABC interaction supplier’s adapters
Middleware perikelen Conventionele middleware schiet te kort Conventionele middleware schiet te kort EAI transacties meestal van korte duur EAI transacties meestal van korte duur Transacties tussen organisaties vaak langer van duur Transacties tussen organisaties vaak langer van duur Asynchroon Asynchroon Locking van resources Locking van resources Gebrek aan vertrouwen Gebrek aan vertrouwen
Integration before Web Services Fundament middleware: gecentraliseerd en veilig Fundament middleware: gecentraliseerd en veilig Gaat niet op voor B2B Gaat niet op voor B2B Point-to-point duur door gebrek standaardisatie Point-to-point duur door gebrek standaardisatie Enkele succesgevallen (Walmart) Enkele succesgevallen (Walmart) Ad-hoc Ad-hoc Pogingen tot standaardisatie Pogingen tot standaardisatie
Integration with Web Services (1) Bijdrage van het web Bijdrage van het web –service-oriented architectures –redesign van middleware protocollen –standaardisatie
Service-oriented architectures Aanroepbare procedures Aanroepbare procedures Aanroepen via web Aanroepen via web Niet elke service op het web is een webservice Niet elke service op het web is een webservice Webservice: software applicatie met gepubliceerde en stabiele API Webservice: software applicatie met gepubliceerde en stabiele API
Redesign Middleware protocollen Conventionele protocollen moet herontworpen worden Conventionele protocollen moet herontworpen worden Decentralisatie Decentralisatie Confidentialiteit Confidentialiteit
Standaardisatie Noodzakelijk voor veelvuldig gebruikt Noodzakelijk voor veelvuldig gebruikt Web services benadrukt belang van standaard Web services benadrukt belang van standaard
Integration with Web Services (2) internal infrastructure supplier customer warehouse internal infrastructure internal procurement requests internal functionality made available as a service Web service interactions based on protocols redesigned for peer to peer and B2B settings languages and protocols standardized, eliminating need for many different middleware infrastructures (need only the Web services middleware)
Integration with Web Services (3) Webservices dienen als entrypoints naar locale informatiesystemen Webservices dienen als entrypoints naar locale informatiesystemen Communicatie gebeurt peer-to-peer Communicatie gebeurt peer-to-peer Gestandaardiseerde protocollen als gedecentraliseerde middleware Gestandaardiseerde protocollen als gedecentraliseerde middleware
Webservices en EAI (1) Webservices als entrypoint Webservices als entrypoint Functionaliteit vinden en benaderen op gecontroleerde manier Functionaliteit vinden en benaderen op gecontroleerde manier Wrapper Wrapper
Webservices en EAI internal service middleware client internal service Web service Company A (provider) wide area network (Internet) internal service middleware internal service Company B (client)
Wrappers Homogeen Homogeen Kern middleware ondersteunende applicaties Kern middleware ondersteunende applicaties
Locale webservice (1) Webservice kan locaal zijn Webservice kan locaal zijn Integratie enterprise applicaties Integratie enterprise applicaties
Locale webservice (2) DBMS applications Web service-enabled broker sendmail application SmartQuotation SmartForecasting XYZ integrating application (contains the composition logic) assumes all back-end systems are accessible as Web services Company A (or a LAN within Company A)
Web Services Technologies Service Description Service Description Service Discovery Service Discovery Service Interactions Service Interactions Combining Web Services: Composition Combining Web Services: Composition
Service Description properties and semantics interfaces common base language vertical standards business protocols directories
Service Discovery
Service Interactions Transport Transport Messaging Messaging Protocol Infrastructure (meta-protocols) Protocol Infrastructure (meta-protocols) Middleware (horizontal) protocols Middleware (horizontal) protocols
Combining Web Services: Composition
Web Services Architecture The two facets of Web Services architecture The two facets of Web Services architecture Internal architecture of Web Services Internal architecture of Web Services External architecture of Web Services External architecture of Web Services
Vragen? Nee? Mooi!