Sebastian Götz

Multi-Quality Auto-Tuning by Contract Negotiation

Dokumente und Dateien


Bitte nutzen Sie beim Zitieren immer folgende Url:

Kurzfassung in Englisch

A characteristic challenge of software development is the management of omnipresent change. Classically, this constant change is driven by customers changing their requirements. The wish to optimally leverage available resources opens another source of change: the software systems environment. Software is tailored to specific platforms (e.g., hardware architectures) resulting in many variants of the same software optimized for different environments. If the environment changes, a different variant is to be used, i.e., the system has to reconfigure to the variant optimized for the arisen situation. The automation of such adjustments is subject to the research community of self-adaptive systems. The basic principle is a control loop, as known from control theory. The system (and environment) is continuously monitored, the collected data is analyzed and decisions for or against a reconfiguration are computed and realized. Central problems in this field, which are addressed in this thesis, are the management of interdependencies between non-functional properties of the system, the handling of multiple criteria subject to decision making and the scalability.

In this thesis, a novel approach to self-adaptive software--Multi-Quality Auto-Tuning (MQuAT)--is presented, which provides design and operation principles for software systems which automatically provide the best possible utility to the user while producing the least possible cost. For this purpose, a component model has been developed, enabling the software developer to design and implement self-optimizing software systems in a model-driven way. This component model allows for the specification of the structure as well as the behavior of the system and is capable of covering the runtime state of the system. The notion of quality contracts is utilized to cover the non-functional behavior and, especially, the dependencies between non-functional properties of the system. At runtime the component model covers the runtime state of the system. This runtime model is used in combination with the contracts to generate optimization problems in different formalisms (Integer Linear Programming (ILP), Pseudo-Boolean Optimization (PBO), Ant Colony Optimization (ACO) and Multi-Objective Integer Linear Programming (MOILP)). Standard solvers are applied to derive solutions to these problems, which represent reconfiguration decisions, if the identified configuration differs from the current. Each approach is empirically evaluated in terms of its scalability showing the feasibility of all approaches, except for ACO, the superiority of ILP over PBO and the limits of all approaches: 100 component types for ILP, 30 for PBO, 10 for ACO and 30 for 2-objective MOILP. In presence of more than two objective functions the MOILP approach is shown to be infeasible.

weitere Metadaten

Selbst-optimierende Systeme, Nicht-funktionale Eigenschaften, Ganzzahlige lineare Programmierung, Mehrzieloptimierung
Self-optimizing systems, Non-functional Properties, Integer Linear Programming, Multi-objective optimization
DDC Klassifikation004
RVK KlassifikationST 230
HochschuleTechnische Universität Dresden
FakultätFakultät Informatik
ProfessurProfessur für Softwaretechnologie
BetreuerProf. Dr. rer. nat. Uwe Aßmann
GutachterProf. Dr. rer. nat. Uwe Aßmann
Prof. Dr. rer. nat. Heinrich Hußmann
Tag d. Einreichung (bei der Fakultät)30.04.2013
Tag d. Verteidigung / Kolloquiums / Prüfung17.07.2013
Veröffentlichungsdatum (online)13.08.2013
persistente URNurn:nbn:de:bsz:14-qucosa-119938

Hinweis zum Urheberrecht

Diese Website ist eine Installation von Qucosa - Quality Content of Saxony!
Sächsische Landesbibliothek Staats- und Universitätsbibliothek Dresden