Contract-based web service composition
Mathematisch-Naturwissenschaftliche Fakultät II
Dienstorientierte Architekturen (SOA = Service Oriented Architecture) dienen dem Aufbau von lose miteinander verbundenen, verteilten Systemen, deren Komponenten eine minimale gemeinsame Systemsicht haben. Die wichtigsten Bausteine der SOA sind Dienste. Dienste sind selbstbeschreibende, eigenständige, plattform-unabhängige und frei verfügbare Komponenten, die über das Netzwerk interagieren. Das Hauptziel der SOA ist die transparente, flexible und dynamische Interaktion von Diensten und deren Benutzern innerhalb mehrerer zusammenhängender Domänen. Während die nativen Fähigkeiten von dienstorientierten Architekturen, wie Beschreibung, Entdeckung, Kommunikation und Bindung, bereits gut erfasst und standardisiert worden sind, ist das Problem der Dienstkomposition bisher noch nicht zufriedenstellend gelöst worden. Diese Dissertation hinterfragt die Grundvoraussetzung der SOA, die darin besteht, dass lediglich die Grundfunktionsweise von Diensten offen gelegt werden sollte, und demonstriert, dass auf der Grundlage einer semantischen Dienstbeschreibung (einschließlich funktionaler und nichtfunktionaler Eigenschaften) eine praktikable Lösung zur Dienstkomposition entwickelt werden kann (komponierbare Dienstarchitektur). Diese Lösung erfordert 1) erweiterte deskriptive Fähigkeiten und Suchmöglichkeiten durch die Entwicklung einer vertragsbasierten Beschreibungssprache einschließlich nichtfunktionaler Eigenschaften wie Sicherheit, Verlässlichkeit und Rechtzeitigkeit; 2) das Feststellen der Kompositionskorrektheit durch die Modellierung von Diensten als abstrakte Maschinen und die Entwicklung einer formalen Kompositionssprache und 3) automatische Dienstkomposition, indem Suchalgorithmen für die automatisierte und dynamische Selektion von Kompositionspartnern entwickelt werden. Abschließend wird der Prototyp eines Kompositionsservers für Web Services einschließlich Design und Implementierung beschrieben, um die Realisierbarkeit der vorgeschlagenen Architektur aufzuzeigen. Service-oriented architecture (SOA) is focused on building loosely coupled distributed systems with minimal shared understanding among system components. The main building blocks in SOA are services. Services are self-descriptive, self-contained, platform-independent and openly-available components that interact over the network. The main goal of SOA is transparent, flexible and dynamic interaction of services and their clients over multiple interconnected domains. While native capabilities of service-oriented architectures, such as description, discovery, communication and binding, have been well understood and standardized, the issue of service composition has not yet been satisfactorily solved. This dissertation challenges the SOA postulate that service should disclose only basic functional signature, and demonstrates that based on semantic service description, including functional and non-functional properties, a viable solution for service composition can be developed (composable service architecture), that supports: 1) Extended descriptive and search capabilities by developing contract-based description language including non-functional properties such as security, dependability, timeliness; 2) Verification of composition correctness by modeling services as abstract machines and developing a formal composition language, and 3) Automatic service composition by treating automated and dynamic selection of composition partners as a search problem and developing search algorithms for that purpose. Finally, in order to show the viability of the proposed architectural solution, a prototype of Web Services composition server is described including design and implementation.
Files in this item