Directly to content
  1. Publishing |
  2. Search |
  3. Browse |
  4. Recent items rss |
  5. Open Access |
  6. Jur. Issues |
  7. DeutschClear Cookie - decide language by browser settings

Interaction-Based Creation and Maintenance of Continuously Usable Trace Links

Hübner, Paul

German Title: Interaktionsdaten-basierte Erstellung und Wartung von kontinuierlich verwendbaren Rückverfolgbarkeitsverbindungen

[img] PDF, English (PhD Thesis) - main document
Download (1MB) | Lizenz: Creative Commons LizenzvertragInteraction-Based Creation and Maintenance of Continuously Usable Trace Links by Hübner, Paul underlies the terms of Creative Commons Attribution 4.0

Citation of documents: Please do not cite the URL that is displayed in your browser location input, instead use the DOI, URN or the persistent URL below, as we can guarantee their long-time accessibility.

Abstract

Traceability is a major concern for all software engineering artefacts. The core of traceability are trace links between the artefacts. Out of the links between all kinds of artefacts, trace links between requirements and source code are fundamental, since they enable the connection between the user point of view of a requirement and its actual implementation. Trace links are important for many software engineering tasks such as maintenance, program comprehension, verification, etc. Furthermore, the direct availability of trace links during a project improves the performance of developers.

The manual creation of trace links is too time-consuming to be practical. Thus, traceability research has a strong focus on automatic trace link creation. The most common automatic trace link creation methods use information retrieval techniques to measure the textual similarity between artefacts. The results of the textual similarity measurement is then used to judge the creation of links between artefacts. The application of such information retrieval techniques results in a lot of wrong link candidates and requires further expert knowledge to make the automatically created links usable, insomuch as it is necessary to manually vet the link candidates. This fact prevents the usage of information retrieval techniques to create trace links continuously and directly provide them to developers during a project.

Thus, this thesis addresses the problem of continuously providing trace links of a good quality to developers during a project and to maintain these links along with changing artefacts. To achieve this, a novel automatic trace link creation approach called Interaction Log Recording-based Trace Link Creation (ILog) has been designed and evaluated. ILog utilizes the interactions of developers with source code while implementing requirements. In addition, ILog uses the common development convention to provide issues' identifiers in a commit message, to assign recorded interactions to requirements. Thus ILog avoids additional manual efforts from the developers for link creation.

ILog has been implemented in a set of tools. The tools enable the recording of interactions in different integrated development environments and the subsequent creation of trace links. Trace link are created between source code files which have been touched by interactions and the current requirement which is being worked on. The trace links which are initially created in this way are further improved by utilizing interaction data such as interaction duration, frequency, type, etc. and source code structure, i.e. source code references between source code files involved in trace links. ILog's link improvement removes potentially wrong links and subsequently adds further correct links.

ILog was evaluated in three empirical studies using gold standards created by experts. One of the studies used data from an open source project. In the two other studies, student projects involving a real world customer were used. The results of the studies showed that ILog can create trace links with perfect precision and good recall, which enables the direct usage of the links. The studies also showed that the ILog approach has better precision and recall than other automatic trace link creation approaches, such as information retrieval.

To identify trace link maintenance capabilities suitable for the integration in ILog, a systematic literature review about trace link maintenance was performed. In the systematic literature review the trace link maintenance approaches which were found are discussed on the basis of a standardized trace link maintenance process. Furthermore, the extension of ILog with suitable trace link maintenance capabilities from the approaches found is illustrated.

Translation of abstract (German)

Rückverfolgbarkeit ist für alle Artefakte im Software Engineering wichtig, Verbindungen zwischen Artefakten bilden hierfür die Grundlage. Besonders wichtig sind Verbindungen zwischen Anforderungen und Quellcode, da diese die Verbindung zwischen der Nutzersicht in den Anforderungen und deren Implementierung darstellen. Diese Verbindungen sind für viele Aufgaben im Software Engineering, wie z.B. Wartung, Programmverständnis, Verifikation, etc. wichtig. Stehen solche Verbindungen direkt während der Softwareentwicklung zur Verfügung, wirkt sich dies positiv auf die Produktivität aus, da Aufgaben effizienter bearbeitet werden können.

Manuelles Erstellen von Artefakt-Verbindungen ist jedoch u.a. wegen des dafür notwendigen Zeitaufwands nicht praktikabel. Daher widmet sich die Rückverfolgbarkeits-Forschung intensiv Methoden zur automatischen Verbindungserstellung. Hierbei verwenden die meisten Ansätze Information Retrieval Techniken, um durch textuelle Ähnlichkeit von Artefakten zusammengehörige Artefakte zu ermitteln und zu verbinden. Das Verwenden von Information Retrieval Techniken zur Verbindungserstellung führt zum Erstellen vieler falscher Verbindungen und erfordert deren nachträgliche manuelle Überprüfung durch Experten, um die Verbindungen nutzen zu können. Dies führt dazu, dass es nicht möglich ist Information Retrieval Techniken zur fortlaufenden Verbindungserstellung und zur direkten Nutzung der erstellten Verbindungen einzusetzen.

Die vorliegende Arbeit erforscht daher das fortlaufende Erstellen von Verbindungen zwischen Artefakten, mit dem Ziel Verbindungen mit so guter Qualität zu erstellen, dass diese direkt genutzt werden können. Außerdem wird das mit sich ändernden Artefakten einhergehende Warten der Verbindungen erforscht. Dafür wurde die neue automatische Interaktionsdaten-aufzeichnungsbasierte-Verbindungserstellung (ILog) entwickelt und evaluiert. ILog nutzt die Interaktionen von Entwicklern mit Quellcodedateien während diese Anforderungen implementieren. Zusätzlich nutzt ILog die Konvention, dass in Übertragungsnachrichten von Versionskontrollsystemen Aufgabenkennungen angegeben werden. Mittels der Aufgabenkennungen können aufgezeichnete Interaktionen direkt Anforderungen zugeordnet werden, dies vermeidet zusätzlichen manuellen Aufwand für die Verbindungserstellung.

ILog wurde in mehreren Werkzeugen implementiert, diese ermöglichen das Aufzeichnen von Interaktionen in unterschiedlichen Entwicklungsumgebungen und die anschließende Erstellung von Verbindungen. Hierbei werden Verbindungen zwischen Dateien, mit denen interagiert wurde, und der Anforderung, an welcher währenddessen gearbeitet wurde, erstellt. Die initial so erstellten Verbindungen werden anschließend optimiert. Für die Optimierung werden sowohl interaktionsspezifische Daten, d.h. Dauer, Häufigkeit, Typ etc., als auch die Quellcodestruktur, d.h. Quellcodereferenzen zwischen Quellcodedateien, die über Artefakt-Verbindungen bereits mit Anforderungen verbunden sind, verwendet. Die Optimierung entfernt potentiell falsche Verbindungen und erstellt weitere bisher nicht gefundene Verbindungen.

ILog wurde in drei empirischen Studien mit von Experten erstellten Goldstandards evaluiert. In einer der Studien wurden Daten eines Open Source Projektes genutzt. In den beiden anderen Studien wurden Projekte mit Studierenden als Entwicklern und einem externen Kunden verwendet. Die Ergebnisse der Studien zeigen, dass ILog Verbindungen mit sehr hoher Genauigkeit und hoher Trefferquote erzeugen kann und so das direkte Nutzen der Verbindungen ermöglicht. Die Studien zeigen auch, dass ILog eine höhere Genauigkeit und Trefferquote als andere Ansätze zur Verbindungserstellung bietet (bspw. Ansätze, die Information Retrieval Techniken verwenden).

Zur Integration der Wartung von Verbindungen in ILog wurde zunächst eine systematische Literaturrecherche zu Ansätzen für die Wartung von Verbindungen durchgeführt. In den Ergebnissen der Recherche werden gefundene Ansätze zur Wartung von Verbindungen}} mit einem dafür entwickelten standardisierten Prozess beschrieben und diskutiert. Darüber hinaus wird die Erweiterung von ILog mit Fähigkeiten zur Wartung von Verbindungen aus den gefundenen Ansätzen aufgezeigt.

Item Type: Dissertation
Supervisor: Paech, Prof. Dr. Barbara
Place of Publication: Heidelberg
Date of thesis defense: 5 February 2020
Date Deposited: 11 Feb 2020 07:06
Date: 2020
Faculties / Institutes: The Faculty of Mathematics and Computer Science > Department of Computer Science
Subjects: 004 Data processing Computer science
620 Engineering and allied operations
About | FAQ | Contact | Imprint |
OA-LogoDINI certificate 2013Logo der Open-Archives-Initiative