Technische Universität München, Institut für Informatik


Externe Diplomarbeit: Architektur für transaktionssichere und performante Web-Service-Anwendungen


Thematische Einordnung:

Web-Services sind in aller Munde, aber was sich dahinter verbirgt ist vielen noch unklar. Betrachtet man bisherige Web-Anwendungen, so werden diese in den meisten Fällen durch dynamische erzeugte HTML Seiten realisiert. Die zum Einsatz kommenden Technolgoien wie HTTP, HTML und XML sind sehr einfach zu beherrschen und mittlerweile überall etabliert. Ein völlig anderes Szenario stellten bisher verteilte Anwendungen dar, bei denen die beteiligten Komponenten durch die Kommunikation über eine gemeinsame Middleware wie RMI oder CORBA eng miteinander verknüpft sind.

Web-Services versuchen hier einen Brückenschlag, indem sie die Idee der Kommunikation von verteilten Anwendungen mit der Einfachheit von Webserver-Aufrufen verknüpfen. Bei Web-Services tauschen die Anwendungen über ein offenes Protokoll plattform- und programmiersprachen-neutrale Nachrichten aus. Die derzeit favorisierte Variante ist der Austausch von XML-Nachrichten, die dem SOAP-Protokoll genügen. Im einfachsten Fall beschränkt sich die Kommunikation auf Request/Response-Aufrufe, ähnlich wie bei RPC-Aufrufen. Beispielsweise antwortet ein Web-Service auf die Anfrage, ob die Kreditkartennummer 1235711 gültig ist,  mit einer SOAP-Nachricht die "True" oder "False" enthält. In komplexeren Web-Service- Anwendungen erfolgt der asynchrone Austausch mehrerer Nachrichten, um beispielsweise nach bestimmten Wertpapieren zu suchen und deren Kauf zu veranlassen.

Durch die Verwendung von Web-Services werden die verteilten Anwendungen nur lose gekoppelt, im Extremfall finden sie sich zur Laufzeit dynamisch. Zusätzliche Dienste wie Transaktionssicherheit, Authentifizierungs-  und Authorisierungsmechanismen sind in den etablierten Web-Service-Standards noch nicht enthalten. Dies unterscheidet Web-Services  von weiter ausgereiften Middlewaretechnologien. Der entscheidende Vorteil sind die Plattform- und Programmiersprachenunabhängigkeit, die durch die Verwendung etablierter Standards wie HTTP, XML und die geringe Komplexität der Web-Service-Standards erreicht wird.

Die grundlegenden Standards sind die folgenden drei:

Die positiven Aspekte werden aber derzeit noch von einigen für den praktischen Einsatz entscheidenden Anforderungen getrübt, die noch unzureichend erfüllt sind. Hier soll - wie im Folgenden beschrieben - die Diplomarbeit Probleme und Lösungsmöglichen aufzeigen.

Konkrete Themenstellung:

Das Ziel der Diplomarbeit ist die Analyse, welche unterschiedlichen Anforderungen Web-Service-Anwendungen an die Transaktionssicherheit stellen, und die Erarbeitung von Vorschlägen, wie diese Anforderungen praktisch erfüllt werden können.

Im Rahmen der Diplomarbeit erfolgt zunächst eine Literaturrecherche, um mögliche Einsatzszenarien, grundlegende Web-Service-Standards und den Vergleich zu anderen Middleware-Technologien zu erfassen und in verständlicher Form zusammenzufassen.

Aufbauend auf diesen Grundlagen wird eine mögliche Grobarchitektur für Service-basierte Anwendungen skizziert. Hierzu werden wesentliche Fragestellungen für den praktischen Einsatz der Web-Service-Technologie identifiziert und erste gängige Lösungsansätze aufgezeigt. Neben einem Überblick über die verschiedenen Einsatzszenarien werden insbesondere wichtige Anforderungen wie Sicherheit, Transaktionen und Performance diskutiert. Auch weitere Themen wie z.B. Zuverlässigkeit, Management, Logging und Datentransformation können an dieser Stelle behandelt werden, soweit sie für das Ziel der Arbeit relevant sind.

Im Hauptteil der Diplomarbeit wird aus dieser Gesamtarchitektur der Ausschnitt für die Transaktionssicherheit detailiert erarbeitet. Hierzu soll zunächst eine Problemanalyse und eine Evaluierung bestehender Transaktionsprotokolle vorgenommen werden. Auf Basis der hier gewonnen Erfahrungen ist eine Architektur bzw. eine Reihe von Architekturvarianten für transaktionssichere Web-Service-Anwendungen zu erarbeiten. Die Lösung soll  insbesondere die zuvor identifizierten technischen Rahmenbedingungen und die daraus resultierenden Anforderungen an Performance, etc. berücksichtigen. Ziel ist es einem Entwickler von Web-Service-Anwendungen geeignete Ansätze zur Verfügung zu stellen, die es ihm erlauben seine Applikation transaktionssicher zu gestalten.

Das Lösungskonzept wird schließlich Anhand eines Prototyps überprüft. Bei der Evaluierung der Ergebnisse am Prototypen werden auch die Auswirkungen der Transaktionssicherheit auf die Performance untersucht.

Im einzelnen:

Voraussetzungen:

Besonderheit:

Die Diplomarbeit wird bei sd&m research, der Forschungsabteilung von sd&m, durchgeführt.

Betreuer:

Frank Marschall, TU München
Carsten Klein, sd&m AG

 Aufgabensteller:

Prof. Dr. Manfred Broy