Cuvillier Verlag

Publications, Dissertations, Habilitations & Brochures.
International Specialist Publishing House for Science and Economy

Cuvillier Verlag GmbH

De En Es
Ausführung und Entwicklung adaptiver Komponentenbasierter Anwendungen

Hard Copy
EUR 28.00 EUR 26.60

E-book
EUR 0.00

Download
PDF (1.5 MB)

Ausführung und Entwicklung adaptiver Komponentenbasierter Anwendungen (English shop)

Andreas Rasche (Author)

Preview

Table of Contents, Datei (38 KB)
Extract, Datei (110 KB)

Adaptive applications are able to adapt in response to changes in their environment, among other things in order to guarantee application properties specified by users that are violated by the varying availability of resources of the underlying infrastructures. One solution strategy for adaptation is the selection of appropriate software components, which — within the framework of component orientation, a method for constructing complex software from units of independent production, procurement and deployment — are available in alternative variants with differing properties. While the functional requirements of an application can often be met by several valid compositions, the resulting application properties vary in different environmental situations. Executing the best alternative for a given set of available resources is thus the basis for guaranteeing desired application properties. When the environment changes, adaptation can be realised by replacement with a better alternative.

In the Java and .NET component platforms, the abstraction of the software component is initially defined for the period of deployment. In order to enable the exchangeability of components at runtime as well, the present work introduces the concept of capsules, which group together a set of objects belonging to the same deployment units. At runtime, a component-based application is understood as a directed graph of connected capsules that are executed by networked computers. Changes to the configuration of an application’s capsules are referred to as dynamic reconfiguration, which must be integrated into current component platforms in order to use component orientation as the basis of adaptation, and which forms the focus of this work.

In dynamic reconfiguration, change operations and application activities must be synchronised. For this purpose, this work presents a new algorithm that improves on existing approaches with respect to the complexity of the additional costs while supporting applications with multiple threads and cyclic connection structures. For a special case of dynamic reconfiguration, dynamic updating, which allows new versions of software components to be installed at runtime, the present work describes a new procedure for the necessary state transfer which, through the use of identified base technologies, does not require any manipulation of the virtual runtime environment. The developed procedure can also be used for installing bug-fixed software versions without restarting the application and is easily integrable into existing applications, as this work demonstrates in the context of complex case studies.

A further important contribution of this work is the use of aspect-oriented programming for the reusable generation of complex (re-)configuration-specific logic, which simplifies the development of adaptive component-based applications. The techniques developed were used, among other things, in the Distributed Control Lab, an infrastructure for the remote execution of control experiments over the Internet, for protection against malicious software. In this context, controllers are monitored at runtime and, in the event of an error, the control application is dynamically reconfigured.

ISBN-13 (Printausgabe) 3867276986
ISBN-13 (Hard Copy) 9783867276986
ISBN-13 (eBook) 9783736926981
Language German
Page Number 206
Edition 1 Aufl.
Volume 0
Publication Place Göttingen
Place of Dissertation Potsdam
Publication Date 2008-08-20
General Categorization Dissertation
Departments Informatics
Keywords Components, dynamic reconfiguration, updates, adaptation