Not logged in.

Contribution Details

Type Master's Thesis
Scope Discipline-based scholarship
Title Feature Unweaving. Semi-Automated Aspect Extraction in Product Line Requirements Engineering
Organization Unit
Authors
  • Michael Jehle
Supervisors
  • Martin Glinz
  • Reinhard Stoiber
Institution University of Zurich
Faculty Faculty of Economics, Business Administration and Information Technology
Date 2010
Abstract Text This master’s thesis relates to the field of requirements engineering for software product lines. Compared to single-system modeling, the creation of product line models is more challenging. This work bases on the ADORA language, a graphical modeling language for requirements and architecture that also supports the modeling of software product lines. Whereas this modeling language is relatively easy for single system models, the modeling of variability is more complicated, as sophisticated weaving semantics Mei09 have to be applied. Additionally, the creation of variants in ADORA is very unhandy, as a lot of klicking has to be done by the modeler. In this thesis we introduce a new approach that simplifies the creation of a product line model, called Feature Unweaving. This feature unweaving function allows the user to select model elements that should be extracted into a variant. According to the selection, the function is then able to create a variant with correct weaving semantics automatically. The automation concentrates on the model elements that define the weaving semantics of a variant. The development of this function was based on two real-world exemplars. Additionally, we have analyzed and extended the current weaving semantics to make sure that they were feasible to model such real-world software product lines. In a last step, we evaluated the feature unweaving function on the basis of the real-world product line exemplars. During this evaluation, we could conclude that the unweaving function was able to extract all the variants that occurred in the exemplars. Furthermore, the process of feature extraction in ADORA could be made more efficient, less effort is required to create variants. Additionally, modelers that don’t have detailed knowledge about ADORA’s weaving semantics yet, can introduce variability into an ADORA model more easily, this makes the ADORA language more accessible.
Zusammenfassung Diese Masterarbeit bezieht sich auf das Gebiet der Anforderungsmodellierung für Software Produktlinien. Verglichen mit der Modellierung für einzelne Systeme, ist die Erstellung von Produktlinienmodellen anspruchsvoller. Diese Arbeit basiert auf der ADORA Sprache. ADORA ist eine graphische Modellierungssprache für Anfoderungen und Architektur, welche auch die Modellierung von Software Produktlinien unterstützt. Die Sprache ist für einzelne Systeme relativ einfach, das Modellieren von Variability hingegen ist kompliziert, da komplexe Weaving Semantiken angewendet werden müssen Mei09. Zusätzlich ist die Erzeugung von Varianten in ADORA eine unhandliche Aufgabe, die eine Vielzahl von Klicks benötigt. In dieser Thesis wir ein neuer Ansatz eingeführt, der das Erstellen eins Produktlinien Modells vereinfachten soll, das sogenannte Feature Unweaving. Diese Feature Unweaving Funktion erlaubt es dem Benutzer Elemente im Modell auszuwählen, welche in eine Variante extrahiert werden sollen. Anhand dieser Auswahl ist die Funktion dann in der Lage eine entsprechende Variante mit korrekten Weaving Semantiken automatisch zu erzeugen. Diese Automatisierung betrifft vor allem die Modellelemente, welche die weaving Semantiken abbilden. Die Entwicklung dieser Funktion wurde durch zwei reale Fallbeispiele unterstützt. Anhand dieser Beispiele wurden die gegebenen Weaving Semantiken analysiert und stellenweise erweitert, um der Modellierung von realen Produktlienen gerecht zu werden. Schliesslich wurde das Feature Unweaving mittels der zwei Fallbeispiele evaluiert. Bei dieser Evaluation konnte festgestellt werden, dass die Feature Unweaving Funktion alle Varianten, welche in den Fallbeispielen vorkamen, extrahieren konnte. Das Erzeugen von Varianten in ADORA konnte zudem merklich beschleunigt werden, da der manuelle Aufwand des Benutzers reduziert wurde. Durch die teilweise Automatisierung der Variantenerstellung konnte zudem erreicht werden, dass auch Modellierer, welche die Weaving Semantiken noch nicht im Detail kennen, in der Lage sind, in ADORA Variabilität einzufügen, was die ADORA Sprache zugänglicher macht.
PDF File Download
Export BibTeX