Vorlesung „SOA – Entwicklung verteilter Systeme auf Basis serviceorientierter Architekturen“ 2. Technologien Dr.-Ing. Iris Braun Gliederung • Anforderungen an die Technologien zur Umsetzung von SOA • Vorstellung geeigneter Technologien – Klassischer RPC – Middleware – Komponentenplattformen – Web Services – RESTful Services • Bewertung Dr.-Ing. Iris Braun Vorlesung SOA, 2. Technologien Folie 2 Bewertung der Technologien zur Umsetzung von SOA • Anforderungen: – Effect: Funktionalität kapseln – Visibility: Über wohldefinierte Schnittstelle anbieten – Interaction: Lose Kopplung über Nachrichtenaustausch – Interoperabilität – Transparenz der zugrundeliegenden Implementierung • Geeignete Technologien? – Klassischer RPC – Middleware – Komponentenplattformen – Web Services – RESTful Services Dr.-Ing. Iris Braun Vorlesung SOA, 2. Technologien Folie 3 Client-Server-Paradigma Aufrufender (Nutzer) Middleware Client (z.B. Java RMI, CORBA, (z.B. Kasse) .NET, SOAP) Transportorientierte Schichten (z.B. TCP/IP, UDP) Phys. Netzwerk (z.B. Ethernet, WLAN, UMTS) Dr.-Ing. Iris Braun Aufgerufener (Anbieter) Anwendungsinteraktion Kommunikationsprotokoll Datenübertragung Vorlesung SOA, 2. Technologien Server Middleware (z.B. Kontenserver) Transportorientierte Schichten Phys. Netzwerk Folie 4 Remote Procedure Call (RPC) • Erweiterung des Prozeduraufrufs zum Fernaufruf • Ziel: Syntaktische und semantische Uniformität (Aufrufmechanismus, Sprachumfang, Fehlerfälle) • Definition (nach Nelson) • • • • • Synchrone Übergabe des Kontrollflusses Auf Ebene der Programmiersprache Getrennte Adressräume Kopplung über relativ schmalen Kanal Datenaustausch: Aufrufparameter und Ergebnisse Dr.-Ing. Iris Braun Vorlesung SOA, 2. Technologien Folie 5 RPC: Beispielarchitektur • Beispielsystem: DCE (Distributed Computing Environment) Netz Client-Rechner Client ClientStub Laufzeitsystem lokaler Aufruf Aufrufkodierung sende warten lokales Ergebnis Dekodierung Server-Rechner Laufzeitsystem Ruf- empf. ServerStub Dekodierung Paket Server Aufruf Ausführung Ergebnisempf. Paket sende Import Kodierung Ergebnis Export Directory Service Dr.-Ing. Iris Braun Vorlesung SOA, 2. Technologien Folie 6 RPC für SOA + Interaction, Effect: Aufrufparameter und Ergebnisse + Visibility: Schnittstellenbeschreibung: IDL (Interface Definition Language) + Visibility: Verzeichnisdienst (Directory Service) + Getrennte Adressräume + Kopplung über relativ schmalen Kanal möglich – Plattform- und programmiersprachenabhängig – Synchrone Übergabe des Kontrollflusses, Client muss auf Server warten – Strenge Client- / Server Semantik – Nicht für Austausch größerer Datenmengen geeignet Dr.-Ing. Iris Braun Vorlesung SOA, 2. Technologien Folie 7 XML-RPC + + + - Aufruf entfernter Prozeduren (RPC) über XML-Nachrichten W3C-Standard Interoperabel, Module in vielen Programmiersprachen verfügbar Beschränkt auf RPC, synchrone Kommunikation: + Einfacher implementierbar, - weniger flexibel - Keine SOAP-vergleichbare Industrieunterstützung Client Server Daten XML XML Daten Daten Dr.-Ing. Iris Braun Daten HTTP Vorlesung SOA, 2. Technologien Folie 8 Middleware im Client-Server-Paradigma Client (z.B. Kasse) Middleware Client (z.B. Java RMI, CORBA, (z.B. Kasse) .NET, SOAP) Anwendungsinteraktion Objektinteraktion Server (z.B. Kontenserver) Server Middleware (z.B. Kontenserver) Transportorientierte Schichten (z.B. TCP/IP, UDP) Transportorientierte Schichten Phys. Netzwerk (z.B. Ethernet, WLAN, UMTS) Phys. Netzwerk Definition von Middleware: “Infrastrukturdienste für verteilte Anwendungen zur Überbrückung der Heterogenität unterschiedlicher Systeme und Netze.” Dr.-Ing. Iris Braun Vorlesung SOA, 2. Technologien Folie 9 Java Remote Method Invocation (RMI) • Interaktion auf Objekt-Ebene Server Client Naming Lookup Remote Object Registry uB Referenz z Lokales Objekt (RemoteInterface) A Laden von KlassenInformationen zu B Aufruf von B B RemoteObjekt Antwort Objekt-Interface, von A und B implementiert Dr.-Ing. Iris Braun Vorlesung SOA, 2. Technologien Folie 10 Java RMI: Interne Systemarchitektur Anwendung ClientObjekte ServerObjekte Stub RMI System Remote Reference Layer Transport Layer Remote Reference Layer: • Verwaltung entfernter Objektreferenzen • Aufruf replizierter Objekte • Aktivierung von Objekten bei Bedarf Dr.-Ing. Iris Braun Vorlesung SOA, 2. Technologien Folie 11 Java RMI für SOA - Nur zur Vernetzung von verteilten Java-Anwendungen - auf Java-Umgebung beschränkt - Schnittstellenbeschreibung in Java, keine spezielle IDL - Visibility: Sehr einfacher Namensdienst + Keine Umwandlung in spezielles Übertragungsformat, hohe Performanz + Kann wie lokales Objekt aufgerufen werden C++ Dr.-Ing. Iris Braun Java Vorlesung SOA, 2. Technologien Folie 12 CORBA - Architektur • ORB: Object Request Broker, zentrale CORBA-Komponente, ermöglicht transparente Kommunikation über GIOP / IIOP (General / Internet Inter-ORB Protocol) • AO: Application Objects, nutzen den ORB zur Kommunikation • CORBA definiert Standarddienste, u.a. Naming Service (findet Objekte über Name), Persistence Service (nichtflüchtiges Speichern/Laden von Objekten), Trader Service (Gelbe Seiten), Transaction Service AO Dienst AO ORB Dienst AO ORB Dr.-Ing. Iris Braun GIOP / IIOP Vorlesung SOA, 2. Technologien ORB Folie 13 CORBA - Architektur • standardisierte Schnittstelle: IDL (Interface Definition Language), enthält u.a. Datentypen, Schnittstellen von Objekten und Instanzvariablen • Ermöglicht automatische Codegenerierung: IDL-Compiler erzeugt „Übersetzer“ für Client (Stub) und Server (Skeleton) • Implementierung von Objekten: sprachunabhängig • Auch dynamische Schnittstellen möglich Objektreferenz Server Client Stub Dr.-Ing. Iris Braun durch den ORB durchgeführt Vorlesung SOA, 2. Technologien Skeleton Folie 14 CORBA für SOA + Ermöglicht plattform- und sprachenunabhängige Kommunikation durch IDL und standardisierten ORB + Visibility: Namensdienst-Lösung (mittlerweile von URI verdrängt) - Komplexe Spezifikation -> Entstehung inkompatibler Lösungen • Best Practice Credit Suisse AG: – Seit 1999 CORBA-Implementierung nach SOAPrinzipien – Rund 800 „Public Services“, 44 Prozent mehrfach verwendet Dr.-Ing. Iris Braun Vorlesung SOA, 2. Technologien Folie 15 Komponentenarchitekturen Komponente – funktional/technisch abgeschlossene ausführbare Einheit innerhalb eines Komponentencontainers – eindeutige Klassifizierung – als Einheit entwickel- und konfigurierbar – klar spezifizierte Schnittstelle (Kapselung) – Granularität der Anwendung (Komplexität vs. Wiederverwendbarkeit) „Software-Komponenten sind ausführbare Software-Einheiten, die unabhängig hergestellt, erworben und konfiguriert werden und aus denen sich funktionierende Gesamtsysteme zusammensetzen lassen.“ – Szyperski [SZY02] Dr.-Ing. Iris Braun Vorlesung SOA, 2. Technologien Folie 16 Komponentenframeworks • Java (Sun u.a.): - Java Applets - Enterprise Java Beans (EJB) - OSGi (Open Service Gateway Initiative) • CORBA (Common Object Request Broker Architecture): - CORBA Components - Standard der Object Management Group (OMG) • Microsoft .NET: - .Net Remoting – RPC ähnlich Java RMI - .Net Assemblies - Sprachunabhängige Laufzeitumgebung Dr.-Ing. Iris Braun Vorlesung SOA, 2. Technologien Folie 17 Enterprise Java Beans (EJB) • • Java Bean: Komponente mit – Öffentlichen Methoden, Attributen (getProperty/setProperty) – Events: Ereignis- und EventListener-Klassen – BeanInfo: Introspection (Informationen über Bean abfragen) Enterprise Java Beans: Serverkomponenten, nichtvisuell – Ausführung in EJB-Container (Laufzeitumgebung) – Session Beans: nicht persistent, Steuerung der Dialoge mit Business-Objekten, Schnittstelle zum Client, Varianten: Stateless / Stateful – Entity Beans: persistent, Business-Objekte mit Schnittstelle zur Datenebene, Primärschlüssel-Mapping auf Datenbank – Message Driven Beans: ermöglichen asynchrone Kommunikation über Java Messaging Service Client Session Bean (z.B. Überweisung) Entity Bean (z.B. Konto) EJB-Container Dr.-Ing. Iris Braun Vorlesung SOA, 2. Technologien Folie 18 EJB für SOA + Interface-Beschreibung in Java + Stateless Session Beans können über Web Service-Schnittstelle aufgerufen werden + Enterprise Beans können als Client auf WS zugreifen + Komposition / Wiederverwendbarkeit + Lose Kopplung (dependency injection) + Plattformunabhängig - Sprachabhängig (Java) (mit WS-Schnittstelle auch Interoperabilität möglich) - Kein zentrales Repository - EJB-Container sehr „schwergewichtig“ Dr.-Ing. Iris Braun Vorlesung SOA, 2. Technologien Folie 19 OSGi (Open Service Gateway Initiative) • komponentenbasierte Framework-Architektur – 1999 gegründetes Non-Profit-Konsortium • BMW, Telekom, Ericsson, IBM, Intel, Oracle, Sun, Siemens, … – verschiedene „Expert Groups“ erstellen Spezifikationen • Heimvernetzung, Automobile, Fabrikautomation, mobile Geräte • Eigenschaften: – Kommunikationsstandard für Vernetzung von Endgeräten • Fernsteuerung, Diagnose und Wartung – – – – Verwaltung von Diensten auf Komponentenbasis Bundles sind wiederverwendbar, plattformunabhängig integrieren und verändern von Komponenten zur Laufzeit Plattform bietet Basisdienste an Log-/Config-/User-Management, Device Access, Web-Server – mehrere Komponenten in VM, geringer Ressourcenbedarf – Java basiert Dr.-Ing. Iris Braun Vorlesung SOA, 2. Technologien Folie 20 OSGi Framework - Kernelemente • Bundles (Komponenten) – dynamisches Bereitstellen und Nutzen von Services – in standardisierten .jar-Dateien verpackt • enthält Manifest-Datei für Metadaten • OSGi-Framework – Layer 3: Service Registry (Steuerung der Interaktion) – Layer 2: Life Cycle (dynamische Verwaltung von Bundles) – Layer 1: Modules (Klassen, Ressourcen des Frameworks) – Layer 0: Execution Environment (Laufzeitumgebung) – verwendet Java 2 Security Model Dr.-Ing. Iris Braun Vorlesung SOA, 2. Technologien Folie 21 OSGi für SOA + + + + Bundles bieten Services an Beschreibung der Interfaces in Java Schnittstelle zu anderen Sprachen über JNI Registry zum Suchen und Nutzen der Services durch andere Bundles + Core Services als Bundles in Plattform integrierbar + Hohe Dynamik: Services und Bundles können zur Laufzeit integriert, verändert oder entfernt werden - Bundles laufen innerhalb eines Containers – keine Kommunikation mit entfernten Services - SOA-Umsetzung für lokale Maschinen (Fokus auf Embedded Systems) - Java-basiert - programmiersprachenabhängig Dr.-Ing. Iris Braun Vorlesung SOA, 2. Technologien Folie 22 Microsoft .NET Platform .NET Anwendungen (Assemblies) .NET Entwicklungswerkzeuge .NET 3.0 WCF WPF WCS WWF Klassenbibliotheken (Basisklassen, ASP.NET, ADO.NET, WinForms) Common Language Runtime Betriebssystem Windows Windows Windows Windows Communication Foundation (WCF) Presentation Foundation (WPF) Card Space (WCS) Workflow Foundation (WWF) Dr.-Ing. Iris Braun Vorlesung SOA, 2. Technologien Folie 23 Microsoft .NET • Erweiterung des DCOM-Konzeptes • wichtigste Elemente: – Common Language Runtime (CLR): sprachunabhängige Laufzeitumgebung (virtuelle Maschine), bietet u.a. Typprüfung und Garbage Collection – Microsoft Intermediate Language (MSIL): ermöglicht Interoperabilität, Übersetzung: Source Code (C#, VB.net, Visual C++, J#) -> Intermediate Language -> Machine Code – Assemblies: selbstbeschreibende Komponenten, enthalten Schnittstellen als Metadaten, Programmcode und Ressourcen, Versionierung, Signierung möglich – Umfangreiche Klassenbibliothek (Base Class Library BCL), in Namensräume gegliedert (z.B. System.Collections) – Unterstützt Web-Service-Technologien Dr.-Ing. Iris Braun Vorlesung SOA, 2. Technologien Folie 24 .NET für SOA + + + + + Visibility: Schnittstelle der Assemblies als Metadaten Kapselung: .NET Enterprise Services und .NET Remoting Services Interoperabilität: sprachunabhängige Laufzeitumgebung (CLR) Standardisiert Unterstützt Web-Service-Technologien: + Erzeugung von Schnittstellenbeschreibung in WSDL + Stub-Generierung aus WSDL - Laufzeitumgebung plattformabhängig Dr.-Ing. Iris Braun Vorlesung SOA, 2. Technologien Folie 25 Lernaufgaben Sie haben jetzt ein paar Minuten Zeit für die Beantwortung einiger Lernaufgaben. http://tud.invote.de/24042 Dr.-Ing. Iris Braun Vorlesung SOA, 2. Technologien Folie 26 Web Services: Begriffsdefinition • World Wide Web Consortium (W3C): „A Web service is a software application identified by a URI, whose interfaces and bindings are capable of being defined, described, and discovered as XML artifacts. A Web service supports direct interactions with other software agents using the XML-based messages exchanged via Internet-based protocols.” • IBM: „Web Services are self-contained, modular applications that can be described, published, located and invoked over a network, generally, the World Wide Web.” • Cerami: „A Web Service is any piece of software that makes itself available over the Internet and uses a standardized XML messaging system.” Dr.-Ing. Iris Braun Vorlesung SOA, 2. Technologien Folie 27 Web Services: Architektur UDDI Verzeichnis publizieren finden SOAP WSDL interagieren Dienstnutzer Dienstanbieter : Dienstschnittstellenbeschreibung Dr.-Ing. Iris Braun Vorlesung SOA, 2. Technologien Folie 28 Discovery UDDI (Universal Description, Discovery and Integration) Description WSDL (Web Services Description Language) Messaging SOAP (Simple Object Access Protocol*) XML-RPC (XML Remote Procedure Call) Transport HTTP (Hyper Text Transfer Protocol) SMTP (Simple Mail Transfer Protocol) FTP (File Transfer Protocol) JMS (Java Message Service) Management Security Web Services: Basic Protocol Stack *: ursprüngliche Abkürzung, die nicht mehr verwendet wird Dr.-Ing. Iris Braun Vorlesung SOA, 2. Technologien Folie 29 SOAP • W3C-Standard, aktuelle Version: 1.2 • Setzt auf vorhandenen Protokollen auf: HTTP, HTTPs, SMTP, ... • SOAP-Envelope: besteht aus – Header: optional, enthält MetaInformationen wie Transaktionsund Verschlüsselungsattribute – Body: enthält „Nutzdaten“ und Bereich für Fehlermeldungen (fault messages) Dr.-Ing. Iris Braun Vorlesung SOA, 2. Technologien soapenv:envelope soapenv:header Header 1 Header 2 soapenv:body Body (message payload) Folie 30 SOAP • Teilnehmer eines SOAP-Austauschs: – Sender – Intermediary (Vermittler) – Receiver (Empfänger) Sender Nachricht A Als Empfänger • Vermittler erscheint je nach Sicht als Empfänger oder als Sender • Wenn A‡B: Active Intermediary – Vermittler verändert Header der SOAP-Nachricht (z.B. Verschlüsselung, Re-Routing zum Lastausgleich) Dr.-Ing. Iris Braun Vorlesung SOA, 2. Technologien Intermediary Als Sender Nachricht B Receiver Folie 31 WSDL • Web Services Description Language: allgemeingültige, programmiersprachenunabhängige Schnittstellenbeschreibung • W3C-Standard, aktuelle Version: Version 2.0, aber von vielen Engines/Tools noch nicht unterstützt (WSDL 1.1) • 6 Hauptelemente (WSDL 2.0): – Type: alle Datentypen, die zwischen Client und Server ausgetauscht werden – Message: abstrakte Beschreibung der Nachrichten – Interface: Menge von abstrakten Operationen – Binding: legt konkretes Protokoll und Datenformate für Operationen und Nachrichten eines Port Types fest – Endpoint: Adresse für ein Binding (KommunikationsEndpunkt) – Service: Menge von Endpoints Dr.-Ing. Iris Braun Vorlesung SOA, 2. Technologien Folie 32 WSDL (2.0) Operation Operation Operation Abstraktes Interface Interface Message Message Message realisiert durch Operation Operation Operation Konkrete Implementierung Binding Message Message Message adressiert durch Endpoint Dr.-Ing. Iris Braun Vorlesung SOA, 2. Technologien Folie 33 UDDI • Universal Description, Discovery and Integration • OASIS-Standard, aktuell Version 3.0 • Ziel: Standardisierte Methode zum Veröffentlichen und Auffinden von Web Services • 3 Hauptkategorien: – White Pages: Namensregister, Kontakt zum Anbieter, mehrsprachige Unternehmenvorstellung, Klassifizierungscode (z.B. „Bank“) – Yellow Pages: „Branchenbuch“, Einordnung der Web Services in standardisierte Geschäftskategorien (z.B. UNSPSC) – Green Pages: technische Informationen zu den angebotenen Web Services (tModel), Geschäftsmodell und -prozesse UDDI White Pages (Business) Yellow Pages (Services) Green Pages (technische Spezifikation) UNSPSC: United Nations Standard Products and Services Code Dr.-Ing. Iris Braun Vorlesung SOA, 2. Technologien Folie 34 UDDI • Mögliche Anfragen an UDDI-Registry (via SOAP-Nachrichten) – Authentifikation (bei Nutzeranmeldung) – Suchen (Nachrichten zum Auffinden von Diensten, SOAPBody beginnt mit find) – Detailinformationen abfragen (von Entities) – Hinzufügen und Ändern (gleich aufgebaut, automatische Erkennung durch die Registry ob Änderung oder Erstellung) – Löschen (erfordert wie Hinzufügen/Ändern Authentifikation) • Unabhängiges Konsortium verwaltet frei zugängliche UDDIRegister, automatischer Abgleich der öffentlichen Informationen + Globales „öffentliches“ Register UBR (UDDI Business Registry) - Hat aber in den letzten Jahren an Bedeutung verloren Dr.-Ing. Iris Braun Vorlesung SOA, 2. Technologien Folie 35 Zusammenfassung Web Services Client Anwendung Server Anwendung Web Service Client Web Service Provider UDDIRegistry bind XML WSDL find WSDL publish XML SOAP HTTP Dr.-Ing. Iris Braun Vorlesung SOA, 2. Technologien Folie 36 Web Services für SOA + Ansatz von XML-RPC: Kopplung heterogener Softwaresysteme + XML-Technologien (allgemein verfügbare Standards) für Schnittstellenbeschreibung und Nachrichtenaustausch + Möglichst einfache, leicht umsetzbare Protokolle + Interoperabilität von Plattformen und Programmiersprachen + Idee weltweiter Verzeichnisdienste und Service Marketplaces Ø Vision „Internet der Dienste“: Sammlung von Diensten, die von Menschen, Maschinen und Anwendungen effizient genutzt werden können - XML-Overhead Internetprotokolle XML Dienstnutzer z.B. HTTP Dienstanbieter XML XML Dr.-Ing. Iris Braun Dienstbeschreibung Vorlesung SOA, 2. Technologien Folie 37 RESTful Services REST: Representational State Transfer § Architekturstil, beschrieben in der Dissertation von Roy T. Fielding [Fie00] § Client verändert seinen Anwendungszustand, indem er Repräsentationen von Ressourcen von einem Server bezieht Grundlegende Konzepte: § Eindeutige Identifikation von Ressourcen (z.B. über URIs) § Repräsentationen von Ressourcen (z.B. in XML, JSON) § Selbstbeschreibende Nachrichten (z.B. mittels HTTP) § Hypermedia zur Veränderung des Anwendungszustands http://holtin.com/ hotels HotelListe Resource Identifier Resource Dr.-Ing. Iris Braun Vorlesung SOA, 2. Technologien XML JSON Representation Folie 38 RESTful Services: Hypermedia Client Server HotelListe GET http://holtin.com/hotels Accept: text/html XML HTML Holtin Hotels F Holtin Dresden Holtin Hamburg Hotel Dresden GET …/hotels/dresden Holtin Hotel Dresden XML HTML Direkt am Elbufer ab 99€! Adresse Buchung F GET …/hotels/dresden/buchung Buchung Dresden Dr.-Ing. Iris Braun Buchung Dresden Vorlesung SOA, 2. Technologien HTML Folie 39 REST: Uniform Interface § Bedingung: alle Komponenten nutzen einheitliche Schnittstelle, d.h. begrenzte Anzahl an Methoden (CRUD) Beispiel SOAP Web Service REST Web Service http://holtin.com/ HotelService • getHotelList • checkRoomAvailability • bookHotelRoom • cancelBooking • obtainInvoice HotelListe GET PUT POST DELETE Hotel Details Liste Buchungen Buchung § Z.B. cancelBooking = DELETE Buchung Dr.-Ing. Iris Braun Rechnung Vorlesung SOA, 2. Technologien Folie 40 Das REST-Missverständnis § Häufig: „REST ist XML über HTTP“ (HTTP+POX: „HTTP and plain old XML“) • Query-Parameter kaschieren spezielle Methodenaufrufe, oft gibt es nur eine Ressource, die die gesamte Funktionalität bereitstellt § Kein REST im eigentlichen Sinn! § Besser: Ressourcen-orientierte Architektur (ROA) [RR07] GET …/rest?action=cancelbooking&bid=1 Accept: application/xml … <?xml version=“1.0“?> <booking id=“1“> <state>cancelled</state> </booking> Dr.-Ing. Iris Braun Vorlesung SOA, 2. Technologien Folie 41 RESTful Services für SOA + Interaction: Client-Server, Nachrichtenaustausch über standardisierte Protokolle (HTTP) + lose Kopplung, Zustandslosigkeit + Uniform Interface (Einheitliche Schnittstelle) + Plattformunabhängig, Transparenz der Implementierung - Visibility: Dienstbeschreibung: - WSDL ungeeignet (beschreibt hauptsächlich Operationen) + mögliche Alternative WADL (noch wenig verbreitet) - Geringe Werkzeugunterstützung (verglichen mit SOAP WS) - Browser machen optimale Umsetzung schwierig (z.B. fehlende PUT-/DELETE-Unterstützung bei Formularen) - Kaum zusätzliche Unterstützung für geschäftskritische Anwendungen (Sicherheit, Zuverlässigkeit, Zusammenarbeit mehrerer Partner etc.) Dr.-Ing. Iris Braun Vorlesung SOA, 2. Technologien Folie 42 Bewertung der Technologien zur Umsetzung von SOA XMLRPC Java RMI .NET CORBA OSGi Web Serv. REST Serv. Kapselung der Funktionalität + + + + + + + wohldefinierte Schnittstelle + + + + + + + Transparenz der zugrundeliegenden Implementierung + + + + + + Lose Kopplung + + + + + + Standardisierung + + + Interoperabilität + + + ++ (+) Industrieunterstützung Dr.-Ing. Iris Braun + + (+) (+) + + + Vorlesung SOA, 2. Technologien (+) Folie 43 Standardisierungsgremien W3C OASIS WS-I Gründung 1994 1993 (SGML Open), 1998 2002 Mitglieder (ca.) 400 600 200 Gesamtziel (in Bezug auf SOA) Entwicklung des Web, fundamentale Standards für Online-Business und Informationsaustausch Onlinehandel fördern durch spezialisierte Web Services Standards Standardisierte Interoperabilität Wichtige Ergebnisse (in Bezug auf SOA) XML, XML-Schema, XQuery, XPath, XSLT, WSDL, SOAP, XML Encryption, XML Signature, Web Services Architektur UDDI, SAML, ebXML, WSSecurity, WSBPEL, XACML Basic Profile, Basic Security Profile Dr.-Ing. Iris Braun Vorlesung SOA, 2. Technologien Folie 44