Moser, O. (2012). Holistic monitoring and domain specific adaptation in composite services [Dissertation, Technische Universität Wien]. reposiTUm. http://hdl.handle.net/20.500.12708/159566
Service oriented systems; Composite services; Monitoring; Adaptation; Event Processing; DSL
en
Abstract:
Dienst-Orientierte Systeme teilen die Verantwortlichkeiten innerhalb eines Software Systems in lose gekoppelte und durch de finierte Schnittstellen ansprechbare Entitäten, genannt Dienste (engl.<br />Services). Diese Dienste stellen jeweils eine bestimmte Menge an zusammenhängenden Funktionalitäten dar. Dienste konnen strukturiert zusammengeschalten werden um sogenannte Zusammengesetzte Dienste (engl.<br />composite services) zu erstellen, mit Hilfe derer unternehmensweite Geschäftsprozesse abgebildet und automatisiert werden konnen. Sowohl einzelne Dienste als auch Zusammengesetzte Diensten zeichnen sich durch ihre Dienstgüte (engl. Quality of Service, QoS) aus. Um diese Art der Quanti zierung zu bestimmen müssen unterschiedliche Parameter gemessen werden, beispielsweise die Antwortzeiten oder Verfügbarkeiten.<br />Diese Parameter haben daher direkten Einfluss auf das Laufzeit Verhalten eines Dienstes. Im Zusammenhang mit Zusammengesetzten Diensten beeinflusst die Dienstgüte der einzelnen, zusammengeschaltenen Dienste auch die Dienstgüte des daraus resultierenden Zusammengesetzten Dienstes. Neben diesen technischen Dienstgüte Parametern mussen geschäfts-relevante Parameter berücksichtigt werden, beispielsweise die Anzahl an Vertragsaktivierungen innerhalb der Geschaftsstunden in einem Telekom Unternehmen. Es ist wichtig, Schwankungen in den Werten dieser Parameter frühzeitig zu erkennen und entsprechend zu behandeln.<br />Eine Möglichkeit um mit diesen Schwankungen umzugehen ist die Ersetzung von Diensten mit suboptimaler Dienstgute durch funktional äquivalente, alternative Dienste. Findet die Feststellung der hinsichtlich ihres Laufzeitverhaltens problematischen Dienste, ebenso wie deren Ersetzung durch funktional äquivalente Dienste, zur Ausführungszeit des Zusammengesetzten Dienstes statt, können potentielle Probleme verhindert und die Dienstgüte des Zusammengesetzten Dienstes positiv beeinflusst werden.<br />Die vorliegende Arbeit behandelt die Anforderungen an ein System, das die oben beschriebenen Messungen und Anpassungen an Zusammengesetzten Diensten zu deren Ausführungszeit vornehmen kann. Unsere Arbeit besteht im Wesentlichen aus drei Eckpfeilern: (1) einem erweiterbaren Modell um Dienstgüte von Zusammengesetzten Diensten darzustellen, (2) einem ereignisgesteuerten System zur Messung von Dienstgüte und geschäftsrelevanten Dienstparametern, und (3) einer Domänen-spezifi schen Methode um Dienste eines Zusammengesetzten Dienstes zu dessen Ausführungszeit zu ersetzen. Die spezifi schen Anforderungen an die Methoden werden an Hand eines Fallbeispiels aus dem Telekom Umfeld erarbeitet und validiert.<br />
de
Service orientation emerged as an ubiquitous paradigm to tackle large scale software systems. In this regard, service oriented systems represent application functionalities and responsibilities by the means of loosely coupled, computational elements, called services. Services can be combined in a structured fashion, resulting in composite services that are used to align enterprise business processes to information technology. Hence, composite services represent a paramount concern in today's enterprise landscapes. Quality of Service (QoS) provides a means to quantify certain performance and dependability related metrics that are crucial for the normal operation of composite services, in addition to various business related concerns.<br />Therefore, monitoring QoS and business related concerns of composite services is an important challenge in service oriented systems.<br />Moreover, such a QoS based quantification can be leveraged to dynamically adapt composite services to changing requirements. Runtime service selection represents one possibility for such dynamic adaptations. QoS can be used to determine slow and unreliable services that affect the overall performance. Consequently, if alternative service instances are available and provide better QoS, a bad performing service can be substituted with a better performing alternative.<br />This thesis addresses the challenges of managing monitoring and adaptation requirements of composite services. Our contributions are threefold. First, we introduce an adaptive QoS model to tackle short term requirements with regard to additional QoS attributes. In this model, we combine both domain-agnostic and domain-specific QoS attributes. Second, we propose an approach for managing holistic monitoring requirements in composite services. Our approach represents the message exchange within a composite service as a stream of events, and leverages event stream processing technology to address QoS and business related monitoring requirements. Additionally, we treat data that is created outside the scope of a composite service as first class citizens. This enables us to provide a holistic view on all monitoring data that is available in enterprise environments. Third, we present a method for runtime service selection that leverages our adaptive QoS model. For specifying the service selection strategy, we propose a domain-specific language. This language can be used to specify selector implementations based on the available QoS attributes. A genuine case study from the telecommunication domain is used to derive the requirements for such a monitoring and service selection framework. Finally, we provide a proof of concept implementation of our approach for WS-BPEL. This prototype is further used for a performance and qualitative validation of our method.