Service-Oriented Architectures (SOA) werden seit einiger Zeit intensiv diskutiert, wenn es um die architektonische Basis verteilter unternehmensweiter bzw. –übergreifender Anwendungen geht. Sie gelten inzwischen als das Mittel der Wahl, um die Infrastruktur für unternehmensübergreifende Anwendungen (B2B), aber auch Lösungen zur Integration interner Anwendungen (Enterprise Application Integration) bereitzustellen. SOAs zielen nicht nur auf fertige, isolierte Anwendungen wie etwa einen elektronischen Buchladen oder ein Flugbuchungssystem eines einzelnen Anbieters ab. Vielmehr ermöglichen sie es, weltweit verfügbare Dienste zu implementieren, die entweder direkt vom Endanwender genutzt oder von „Zwischenhändlern“ in neue Anwendungen integriert werden können.
Das Konzept SOA muss natürlich in reale Software umgesetzt werden. Auch wenn es hierzu viele Möglichkeiten gibt, so hat sich doch inzwischen der Ansatz der Web Services als technische Grundlage von SOAs auf breiter Front durchgesetzt. Beim Design der Web-Services-Technologie wurde konsequent auf die Verwendung offener Standards und möglichst einfacher und damit leicht umzusetzender Protokolle geachtet. Und dabei zogen praktisch alle Großen der Software-Branche an einem Strang!
Die Basistechnik für Web Services, auf der praktisch alles andere beruht, ist XML. Es wird naheliegenderweise zur Beschreibung der Daten verwendet, die als Ein- oder Ausgabe eines Web Service dienen. Es werden aber auch die verfügbaren Dienste - also die Operationsnamen, die auszutauschenden Nachrichten und die Dienstadressen - in XML kodiert, genauer in WSDL (Web Service Description Language). Und auch das XML-Protokoll SOAP (Simple Object Access Protocol), das an die Stelle von proprietären, komplexen Protokollen aus der CORBA-, DCOM- oder RMI-Welt tritt, beruht allein auf XML, ist also textbasiert. Schließlich steht als weitere grundlegende Komponente der Verzeichnisdienst UDDI (Universal Description, Discovery and Integration) bereit, um Web Services registrieren bzw. weltweit bekannt und verfügbar zu machen. Auch UDDI besitzt ein offen gelegtes API, das auf XML bzw. SOAP beruht.
Bereits heute unterstützen alle auf J2EE bzw. .NET beruhenden Produkte die Entwicklung bzw. die Integration von Web Services. Damit ist abzusehen, dass in Kürze, bei immer größerer Verfügbarkeit von einzelnen Web Services, mächtige neue, auf SOA basierende Anwendungen im Internet auftauchen werden, die sich im Wesentlichen aus der Nutzung einer Reihe von Web Services zusammensetzen (Beispiel: Employee-Portale werden bald die Buchungsdienste von Fluglinien, Hotels und Taxi- bzw. Mietwagenzentralen zum Planen und kurzfristigen Ändern von Reisen nutzen).
Es ist also offensichtlich, dass sich Software- und Anwendungsentwickler sowie ihre Auftraggeber sehr bald und intensiv mit dieser neuen Technologie vertraut machen müssen.
Die Teilnehmenden werden am Ende des Seminars verstehen, was Service-Oriented Architectures sind und warum Web Services eine wichtige Grundlage dafür bilden. Sie werden die Unterschiede zwischen heutiger Web-Anwendungsentwicklung und derjenigen von SOA-Anwendungen einschätzen können und die grundlegenden Entwicklungstechniken für Web-Service-Anwendungen verstanden haben. Sie werden ein solides theoretisches Fundament gebildet haben und argumentieren können, warum die grundlegenden Techniken XML, WSDL, SOAP/XMLP und UDDI Vorteile bieten, wie sie aufgebaut und eingesetzt werden müssen.
Ferner werden sie einen Überblick über eine Reihe von Werkzeugen bekommen haben, die bei der Implementierung eines Web Service von großem Nutzen sind. Basierend auf diesen Kenntnissen werden sie verstehen, wie man einen Web Service entwirft und praktisch einsetzt.
Im weiterführenden Teil des Seminars werden wichtige SOA-Techniken und deren Umsetzung mit Web Services beschrieben. Im Vordergrund stehen hier Fragen der Sicherheit der Web-Service-Kommunikation, die Modellierung von Geschäftsprozessen oder die Verwendung von Transaktionen.