TU Darmstadt / ULB / TUprints

Automatisierte Analyse integrierter Software-Produktlinien-Spezifikationen

Weckesser, Markus Tobias (2019)
Automatisierte Analyse integrierter Software-Produktlinien-Spezifikationen.
Technische Universität
Ph.D. Thesis, Primary publication

[img]
Preview
Text
2019-06-28_Weckesser_MarkusTobias.pdf - Accepted Version
Copyright Information: CC BY-SA 4.0 International - Creative Commons, Attribution ShareAlike.

Download (12MB) | Preview
Item Type: Ph.D. Thesis
Type of entry: Primary publication
Title: Automatisierte Analyse integrierter Software-Produktlinien-Spezifikationen
Language: German
Referees: Schürr, Prof. Dr. Andreas ; Becker, Prof. Dr. Christian
Date: 28 June 2019
Place of Publication: Darmstadt
Date of oral examination: 28 June 2019
Abstract:

Der Trend zur Digitalisierung führt zu neuen Anwendungsszenarien (z.B. Industrie 4.0, Internet der Dinge, intelligente Stromnetze), die laufzeitadaptive Software-Systeme erfordern, die sich durch kontinuierliche Rekonfiguration an verändernde Umgebungsbedingungen anpassen. Integrierte Software-Produktlinien-Spezifikationen ermöglichen die präzise Beschreibung von Konsistenzeigenschaften derartiger Systeme in einer einheitlichen Repräsentation. So bietet die Spezifikationssprache Clafer sowohl Sprachmittel zur Charakterisierung der Laufzeitvariabilität eines Systems als auch für die rekonfigurierbaren Bestandteile der Systemarchitektur sowie komplexer Abhängigkeiten. In Clafer-Spezifikationen werden hierzu Sprachkonstrukte aus UML-Klassendiagrammen und Meta-Modellierungssprachen zusammen mit Feature-orientierten Modellierungstechniken und Constraints in Prädikatenlogik erster Stufe kombiniert. Durch die beträchtliche Ausdrucksstärke neigen derartige integrierte Produktlinien-Spezifikationen in der Praxis dazu, sehr komplex zu werden (z.B. aufgrund versteckter Abhängigkeiten zwischen Konfigurationsoptionen und Komponenten). Sie sind daher äußerst anfällig für Spezifikationsfehler in Form von Inkonsistenzen oder Entwurfsschwächen in Form von Anomalien. Inkonsistenzen und Anomalien müssen jedoch möglichst früh im Entwurfsprozess erkannt und behoben werden, um drastische Folgekosten zur Laufzeit eines Systems zu vermeiden. Aus diesem Grund sind statische Analysetechniken zur automatisierten Analyse integrierter Software-Produktlinien-Spezifikationen unabdingbar.

Existierende Ansätze zur Konsistenzprüfung erfordern, dass der Suchraum für die Instanzsuche vorab entweder manuell oder durch heuristisch identifizierte Schranken eingeschränkt wird. Da, falls keine Instanz gefunden werden kann, nicht bekannt ist, ob dies durch einen zu klein gewählten Suchraum oder eine tatsächliche Inkonsistenz verursacht wurde, sind existierende Analyseverfahren inhärent unvollständig und praktisch nur eingeschränkt nutzbar. Darüber hinaus wurden bisher noch keine Analysen zur Identifikation von Anomalien vorgeschlagen, wie sie beispielsweise in Variabilitätsmodellen auftreten können. Weiterhin erlauben existierende Verfahren zwar die Handhabung von ganzzahligen Attributen, ermöglichen jedoch keine effiziente Analyse von Spezifikationen die zusätzlich reellwertige Attribute aufweisen.

In dieser Arbeit präsentieren wir einen Ansatz zur automatisierten Analyse integrierter Software-Produktlinien-Spezifikationen, die in der Sprache Clafer spezifiziert sind. Hierfür präsentieren wir eine ganzheitliche Spezifikation der strukturellen Konsistenzeigenschaften laufzeitadaptiver Software-Systeme und schlagen neuartige Anomalietypen vor, die in Clafer-Spezifikationen auftreten können. Wir charakterisieren eine Kernsprache, die eine vollständige und korrekte Analyse von Clafer-Spezifikationen ermöglicht. Wir führen zusätzlich eine neuartige semantische Repräsentation als mathematisches Optimierungsproblem ein, die über die Kernsprache hinaus eine effiziente Analyse praxisrelevanter Clafer-Spezifikationen ermöglicht und die Anwendung etablierter Standard-Lösungsverfahren erlaubt. Die Methoden und Techniken dieser Arbeit werden anhand eines durchgängigen Beispiels eines selbst-adaptiven Kommunikationssystems illustriert und prototypisch implementiert. Die experimentelle Evaluation zeigt die Effektivität unseres Analyseverfahrens sowie erhebliche Verbesserungen der Laufzeiteffizienz im Vergleich zu etablierten Verfahren.

Alternative Abstract:
Alternative AbstractLanguage

Emerging trends for digital transformations (e.g., Smart Factories, Internet of Things, Smart Grids) lead to new usage scenarios that require software systems being able to reconfigure themselves continuously to meet changing environmental conditions. Integrated software product line specifications allow for precisely describing consistency properties of such systems in a uniform representation. To this end, the specification language Clafer provides means for both characterizing structural run-time variability as well as specifying re-configurable elements of the system architecture and complex dependencies. For this purpose, Clafer combines UML-like class- and meta-modeling with feature-oriented variability modeling and first-order logic constraints. This considerable expressiveness leads to complex specifications in practice (e.g. due to hidden dependencies between configuration options and components of the system architecture). As a result, integrated software product line specifications tend to be prone to specification errors such as inconsistencies or anomalies (e.g., dead configuration options that can never be selected). However, inconsistencies and anomalies should be identified and rectified as early as possible in the development process to avoid critical system states and involved follow-up costs in case of system failures. For this reason, static analysis techniques for automated validation of integrated product line specifications are crucially needed.

Recent analysis techniques for checking model consistency of integrated product line specifications impose an a priori finite search space with either manually or heuristically adjusted bounds. However, these techniques are inherently incomplete thus yielding results for which it is unknown whether initially chosen bounds are sufficient and, therefore, have limited practical applicability. Furthermore, no techniques for automated anomaly detection in Clafer specifications that have been proposed so far go beyond inconsistency analysis and allow for identifying more sophisticated anomaly types (as e.g., dead multiplicity intervals). Moreover, existing approaches for consistency checking provide only limited support for analyzing specifications with complex integer attributes and almost no support for real-valued attributes.

In this thesis, we present an approach for automated analysis of integrated product line specifications that are specified in Clafer. To this end, we present a uniform specification of structural consistency properties of self-adaptive systems and lift existing notions of more sophisticated anomaly types to Clafer specifications. To tackle the completeness problem, we present a restricted, yet sufficiently expressive sublanguage of Clafer for which complete and correct consistency checks are feasible. Additionally, we introduce a novel semantic representation as a mathematical optimization problem enabling the efficient analysis of practically relevant specifications and allowing to apply well-established off-the-shelf solvers. The methods and techniques presented in this thesis are illustrated by means of a running example from the communication network domain. Furthermore, we provide a prototypical implementation of the presented approach. Our experimental evaluation shows remarkable improvements of run-time efficiency as well as effectiveness of anomaly detection as compared to existing techniques.

English
URN: urn:nbn:de:tuda-tuprints-88750
Classification DDC: 000 Generalities, computers, information > 004 Computer science
600 Technology, medicine, applied sciences > 620 Engineering and machine engineering
Divisions: 18 Department of Electrical Engineering and Information Technology > Institute of Computer Engineering > Real-Time Systems
Date Deposited: 06 Aug 2019 14:05
Last Modified: 09 Jul 2020 02:40
URI: https://tuprints.ulb.tu-darmstadt.de/id/eprint/8875
PPN: 45289235X
Export:
Actions (login required)
View Item View Item