Exploring the Traceability of Requirements and Source Code via LLMs

Aus SDQ-Institutsseminar
Vortragende(r) Jessica Kimberly Woschek
Vortragstyp Bachelorarbeit
Betreuer(in) Kevin Feichtinger
Termin Fr 20. September 2024
Vortragssprache Deutsch
Vortragsmodus in Präsenz
Kurzfassung Zur effizienten Arbeit mit Code ist die Anforderung-zu-Code-Nachverfolgbarkeit entscheidend. Mit dem Aufkommen fortschrittlicher großer Sprachmodelle (engl. Large Language Models (LLMs)) besteht die Möglichkeit, diese Links mithilfe von LLMs anstelle spezialisierter Software oder Menschen zu identifizieren. Dies könnte Zeit und Kosten sparen sowie die Nutzung durch weniger erfahrene Anwender ermöglichen.

Diese Arbeit konzentriert sich auf die Entwicklung eines Ansatzes, der die entsprechende Eingabe vorbereitet und einen “um Informationsabruf ergänzten Generierungsansatz” (engl. Retrieval Augmented Generation (RAG)) sowie LLMs verwendet, um Links zu identifizieren und deren wissenschaftliche Validität zu bewerten. Der Kern des Ansatzes besteht darin, LLMs für diesen Zweck zu nutzen, unterstützt durch einen Prototypen, der die Kommunikation mit den Modellen und die erforderliche Vorbereitung ermöglicht. Zunächst werden Grundlagen sowie verwandte Arbeiten erarbeitet, um geeignete Evaluati onsmetriken und eine Vergleichsdatenbasis zu eruieren. Anschließend folgt eine Vorstudie, in der mit zwei selbst erstellten Datensätzen iterativ die Parameter des Prototyps ausgearbeitet und parallel der Prototyp implementiert werden. Nachdem die Ergebnisse des Prototyps basierend auf den Metriken Präzision, Ausbeute und F1-Punktzahl als zufriedenstellend bewertet werden, werden die beiden Datensätze aus der Vorstudie sowie zwei zusätzliche, aus verwandten Arbeiten identifizierte Datensätze mit denselben Parametern verwendet, um Daten für die Auswertung zu sammeln. Die Ergebnisse werden analysiert und Hypothesen formuliert, wobei sich zeigt, dass das Auffinden von Links auf Dateiebene mithilfe von LLMs relativ gut funktioniert. Anschließend wird eine notwendige Stichprobe verwendet, um die Metriken für das Auffinden von Links auf Funktionsebene durch LLMs zu bewerten, wobei Potenzial für diese Anwendung identifiziert wird. Es zeigt sich, dass LLMs bei der Identifizierung von Links in gegebenem Code ähnlichen Einschränkungen wie Menschen unterliegen. LLMs können jedoch Vorteile bieten, wenn die identifizierten Voraussetzungen erfüllt sind, da sie möglicherweise schneller als Menschen arbeiten und gleichzeitig in der Lage sind, geeignete Dokumentationen zu erstellen. Letztlich erweist sich der in dieser Arbeit verfolgte Ansatz als sehr vielversprechend, da die Ergebnisse im Vergleich zu den aus verwandten Arbeiten als Benchmark gewählten Ergebnissen vergleichbare Resultate beim Auffinden von Links auf Dateiebene liefern und zusätzlich valide Hinweise auf die Möglichkeit geben, Links auf Funktionsebene mithilfe von LLMs zu finden. Zum Schluss werden Optimierungspotenziale des gewählten Ansatzes basierend auf verwandten Arbeiten und den tatsächlichen Auswertungsergebnissen entwickelt.