240 likes | 346 Views
XML web services. Henrik Lykke Nielsen Softwarearkitekt Microsoft Regional Director for Danmark http://www.captator.dk lykke@captator.dk Tlf: 8748 0202 Mobil: 2237 3311. Indhold. Hvorfor lave og benytte webservices ? Forretningsmæssige og tekniske begrundelser Automatisering
E N D
XML web services Henrik Lykke Nielsen Softwarearkitekt Microsoft Regional Director for Danmark http://www.captator.dk lykke@captator.dk Tlf: 8748 0202 Mobil: 2237 3311 XML web services ved Henrik Lykke Nielsen
Indhold • Hvorfor lave og benytte webservices ? • Forretningsmæssige og tekniske begrundelser • Automatisering • Standarder for webservices • SOAP • WSDL • UDDI • Teknologier XML web services ved Henrik Lykke Nielsen
Målsætning med IT-infrastrukturen Produktivitet Simpel administration, udrulning og anvendelse Effektivisere brugeres arbejde – rigtig information Robust og understøttende implementation (for brugere) Pålidelig Sikkerhed Stabilitet, tilgængelighed og skalerbarhed Performance Sammenhæng Integration mellem applikationer Brug af tilgængelige resourcer og funktionalitet Brug af standarder Økonomi Samlet omkostning - Total Cost og Ownership Udbytte - Return on Investment Simpel og effektiv brug XML web services ved Henrik Lykke Nielsen
Gartner konklusioner • Application integration will be, arguably, the most important IS deliverable during the next five years. • The most common mistake in application integration is treating it as the responsibility of individual development teams - it is an enterprise-wide issue. • The two keys to implementing great business processes are “zero-latency enterprise” and “straight-through processing” strategies. • The most successful businesses will deploy a real-time, middleware-based “enterprise nervous system” for integrating applications. • Create an integration competency center, maintain an evolving integration architecture (e.g., city plan) and implement a shared technical infrastructure for integration. • All of the business units, application systems, people and automated devices throughout a virtual enterprise should be viewed as participants in one holistic system. XML web services ved Henrik Lykke Nielsen
Agility – evne til forandring “As we see it, enterprise technologies need to do far more than serve up the essential ‘abilities’ – availability, reliability, scalability, and manageability; they also need to provide businesses with the agility to understand, anticipate, and respond to changing customer needs.” – Steve Ballmer XML web services ved Henrik Lykke Nielsen
Service baseret forretning Design Credit Call Centre Manufacturing Finance Logistics XML web services ved Henrik Lykke Nielsen
Forretningsprocesser hænger sammen på kryds og tværs… Credit Call Centre Potential Customer Logistics email EDI Satisfied Customer email Manufacturing Billing Logistics Logistics XML web services ved Henrik Lykke Nielsen
... så det skal teknologien også gøre XML web services ved Henrik Lykke Nielsen
XML - et lille eksempel <Book title=”Bluffers guide til .NET"> <Authors> <Author>Henrik Lykke Nielsen</Author> <Author>Bill G</Author> </Authors> <Price currency="Dkr">17.42</Price> <ElectronicSource web="www.books.com"/> </Book> XML web services ved Henrik Lykke Nielsen
XML web service arkitektur Partner XML web service XML web service Building Blocks Partner XML web service Internet + XML DitFirma.dk XML web services platform Applikations logik Andre apps Data tilgang XML web services ved Henrik Lykke Nielsen
XML web service arkitektur Vertikale/portal XML web services Applikationskode Applikations specifikkeXML web services Lokale services XML web service infrastruktur XML Building blockXML web services Browsere Devices XML web services ved Henrik Lykke Nielsen
XML web service arkitektur Applikationskode Building block XML web services Passport Lagerplads Lokale services XML web service infrastruktur XML Email/kalender Instant messaging Notificering Skalering og administration Integration og meget mere… XML web services ved Henrik Lykke Nielsen
Hvorfor XML web services? • Minimere udviklingsomkostninger og udviklingstid • Beslutning: Købe eller udvikle selv • Integration af forretningsprocesser • Automatisering af processer • Integration mellem forskellige platforme • Nye internet-baserede forretningsområder • Personalisering • Nye services/nye pengestrømme XML web services ved Henrik Lykke Nielsen
SOAP – Cleaning up calls • XML • Simpelt generisk data format • SOAP – Simple Object Access Protocol • XML baseret standard for metode kald SOAP XML web services ved Henrik Lykke Nielsen
SOAP • Designet til metode kald på webben • Giver komponenter global rækkevidde • OS, objektmodel, programmeringssprogs neutral, arkitektur uafhængigt • Virker på eksisterende internet infrastruktur • Baseret på • W3C XML standards • (IETF HTTP standards) • SOAP spec v1.2 • XML Protocol Working Group • http://www.w3.org/2000/xp/Group/ XML web services ved Henrik Lykke Nielsen
Eksempel på et SOAP kald <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/” SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"> <SOAP-ENV:Body> <m:GetLastTradePrice xmlns:m="Some-URI"> <symbol>DIS</symbol> </m:GetLastTradePrice> </SOAP-ENV:Body> </SOAP-ENV:Envelope> XML web services ved Henrik Lykke Nielsen
Eksempel på et SOAP svar <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"> <SOAP-ENV:Body> <m:GetLastTradePriceResponsexmlns:m="Some-URI"> <Price>34.5</Price> </m:GetLastTradePriceResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope> XML web services ved Henrik Lykke Nielsen
WSDL • WSDL: Web Services Description Language • Beskriver XML web service operationer • Mapninger mellem operationer (metoder) og SOAP messages • Parametre: navne, datatyper, in/out • Transportprotokol bindinger • Service definitioner • Forudsætning (!) for avancerede services og udviklingsværktøjer XML web services ved Henrik Lykke Nielsen
UDDI visionen Discovery via portalerog markedspladser UDDI Registries and Protocol Marketplace Almindelige brugere Marketplace Marketplace Search Portal Search Portal Tekniske brugere XML web services ved Henrik Lykke Nielsen
Implementering af SOAP • Text parsning • XML manipulation (XMLDOM, SAX, …) • SOAP toolkits og komponenter • Low level API’er • Proxy’er • SOAP tillægsstandarder – og teknologier • .NET frameworket XML web services ved Henrik Lykke Nielsen
XML web services i Visual Studio .NET <WebMethod()> attribut i VB.NET syntaks: <WebMethod()> Public Function HelloWorld() As String Return "Hello World” End Function XML web services ved Henrik Lykke Nielsen
Federation Privacy Reliable Messaging Transactions Udvidetfundament Coordination Attachments Routing Security WSDL (beskrivelse)og UDDI (katalog) Fundamentet SOAP (besked format) XML og transport protokoller XML web services – what’s next? XML web services ved Henrik Lykke Nielsen
Overvejelser • Intern integrationsteknologi • Ikke en universalløsning • Eksterne XML web services • Design services rigtigt – gør det generelt brugbart • Kræver nogle gange redesign og refactoring • Tænk på sikkerhed • Krav om 100% oppetid • Kræver commitment! XML web services ved Henrik Lykke Nielsen
Spørgsmål http://www.captator.dknyheder, artikler, information, ... XML web services ved Henrik Lykke Nielsen