Rosenberg, F. (2009). QoS-aware composition of adaptive service-oriented systems [Dissertation, Technische Universität Wien]. reposiTUm. https://resolver.obvsg.at/urn:nbn:at:at-ubtuw:1-25266
Service-Oriented Computing, Service Composition, Quality of Service, Adaptive Systems, Web Services
en
Service-Oriented Computing, Service Komposition, Quality of Service, Adaptive Systeme, Web Services
de
Abstract:
Service-Oriented Computing (SOC) gilt als aufstrebende Disziplin in der Forschung sowie Industrie und befasst sich mit den Möglichkeiten lose-gekoppelte, verteilte und adaptive Softwaresysteme zu entwickeln.<br />Software Services bilden die Kernbausteine im SOC und zeichnen sich u.a.<br />durch ihre Plattformunabhängigkeit und einer einheitlichen Schnittstelle aus. Dadurch wird eine einfachere Integration und Benutzung über Unternehmensgrenzen hinweg ermöglicht. Eine der wichtigsten Eigenschaften ist die Komponierbarkeit (composability) um funktional höherwertige Services durch Wiederverwendung existierender Services einfach und rasch zu implementieren. In verteilten Szenarien besteht allerdings das Problem, dass Serviceanbieter keine Qualitätsgarantien in Form von Dienstgüteattributen -- im folgenden auch Quality of Service oder abgekürzt QoS genannt -- zur Verfügung stellen (wie Antwortzeit, Verfügbarkeit, usw.). Dies kann vor allem in Kompositionen, die verschiedenste Services diverser Anbieter verwenden, zum Problem werden, da die Performance und Verfügbarkeit der einzelnen Services auch die gesamte Komposition gefährden kann. Ein Hauptproblem ist das Fehlen eines umfassenden QoS Modells und Techniken zur Messung verschiedener QoS Attribute. Die Verfügbarkeit akkurater QoS Information ermöglicht eine QoS-getriebene und optimierte Komposition durch automatisches Selektieren und Ersetzen von Services. Existierende Ansätze fokussieren hauptsächlich auf die Optimierung von Kompositionen hinsichtlich deren QoS. Es ist aber umso wichtiger die ganzheitliche Sicht und Integration von QoS Eigenschaften über die verschiedenen Ebenen wie Choreographie, Komposition und Ausführung eines Service-orientierten Systems zu betrachten. Dies bietet den Vorteil einer End-to-End Sicht auf QoS und ermöglicht eine bessere Integration und Optimierung über den ganzen Applikationslebenszyklus um die Vision von adaptiven Service-orientierten Systemen zu verwirklichen.<br />Diese Arbeit leistet einen Beitrag zur Lösung der oben genannten Probleme.<br />Erstens wird ein erweiterbares QoS-Modell sowie ein Ansatz und das dazugehörige Werkzeug vorgestellt, um diese laufzeit-spezifischen QoS-Attribute automatisch messen zu können. Zweitens wird ein Verfahren vorgestellt wie Service Level Agreements (SLAs) in Choreographien eingebunden werden können. Diese werden in der Folge automatisch auf Kompositionen für die verschiedenen Partner abgebildet. Drittens wird ein Verfahren präsentiert, dass die Spezifikation von QoS-getriebenen Kompositionen verbessert. Dazu wird eine domain-spezifische Sprache VCL (Vienna Composition Language) beschrieben, die es erlaubt den gewünschten QoS einer Komposition in Form von harten und weichen Constraints zu spezifizieren und somit eine weitaus flexiblere Form der Spezifikation zu ermöglichen. Aufbauend darauf werden Verfahren und Algorithmen präsentiert um auf Basis von VCL ausführbare und QoS-optimierte Kompositionen zu erstellen die den Constraints in der Spezifikation entsprechen. Um diese Ausführung zu realisieren wird eine neuartige Web Service Laufzeitumgebung, genannt VRESCo, vorgestellt, die typische SOC Konzepte implementiert und damit die Grundlage für die QoS-getriebene Komposition darstellt.<br />
de
Service-Oriented Computing (SOC) increasingly gains momentum in academia and industry as a means to develop adaptive distributed software applications in a loosely coupled way. Software services, as the main entities in SOC, have some distinct properties such as platform-independence or a uniform interface description enabling an easier integration and use within and across organizational boundaries. One of the main assets of service-orientation is composability to develop higher-level services, so-called composite services, by re-using well-known functionality provided by other services in a low-cost and rapid development process. However, in distributed environments, the use of services without any quality guarantees from the service providers can negatively affect a composite service by raising intermittent failures or having a slow performance of one of the services. One of the main problems is the lack of an integrated Quality of Service (QoS) model combined with an automated monitoring technique.<br />The availability of accurate and up-to-date QoS information enables a QoS-aware composition and optimization of composite services by automatically selecting well-performing services and dynamically replace services that reduce the performance or lead to failures in a composition. However, existing QoS-aware composition approaches mainly focus on the optimization aspect to find the best composition in terms of QoS. Therefore, QoS should be seamlessly integrated into multiple layers of the SOC stack, such as choreography, orchestration and execution. This enables an end-to-end view on QoS and allows a better integration and optimization throughout the application lifecycle to achieve the vision of adaptive service-oriented systems.<br />This thesis contributes a set of methods and tools to address these issues.<br />Firstly, it proposes an extensible multi-layer QoS model for services and an automated QoS monitoring approach. Secondly, it describes the integration of Service Level Agreements (SLAs) into choreographies and proposes an automated mapping to orchestrations annotated with QoS policies to enable SLA enforcement.<br />Thirdly, it addresses a set of issues related to the overall development lifecycle of QoS-aware service composition. Specifically, a domain-specific language, called VCL, is introduced to enable the specification of QoS-aware composite services with a focus on hard and soft constraints in form of constraint hierarchies. Based on VCL, a set of methods and algorithms are presented to generate an executable composite service that is optimized with regard to the QoS constraints specified by the user. To this end, this thesis also introduces a novel Web service runtime environment, called VRESCo, which implements a number of important SOC concepts (such as dynamic binding or invocation) that are foundational for the presented QoS-aware service composition approach.