Enhancing Requirement Traceability through Data Augmentation Using Large Language Models
By: Jianzhang Zhang , Jialong Zhou , Nan Niu and more
Potential Business Impact:
Helps computers link code to what users want.
Requirements traceability is crucial in software engineering to ensure consistency between requirements and code. However, existing automated traceability methods are constrained by the scarcity of training data and challenges in bridging the semantic gap between artifacts. This study aims to address the data scarcity problem in requirements traceability by employing large language models (LLMs) for data augmentation. We propose a novel approach that utilizes prompt-based techniques with LLMs to generate augmented requirement-to-code trace links, thereby enhancing the training dataset. Four LLMs (Gemini 1.5 Pro, Claude 3, GPT-3.5, and GPT-4) were used, employing both zero-shot and few-shot templates. Moreover, we optimized the encoder component of the tracing model to improve its efficiency and adaptability to augmented data. The key contributions of this paper are: (1) proposing and evaluating four prompt templates for data augmentation; (2) providing a comparative analysis of four LLMs for generating trace links; (3) enhancing the model's encoder for improved adaptability to augmented datasets. Experimental results show that our approach significantly enhances model performance, achieving an F1 score improvement of up to 28.59%, thus demonstrating its effectiveness and potential for practical application.
Similar Papers
Augmenting Anonymized Data with AI: Exploring the Feasibility and Limitations of Large Language Models in Data Enrichment
Cryptography and Security
Keeps private information safe while still useful.
How Effective are Generative Large Language Models in Performing Requirements Classification?
Computation and Language
Helps computers sort and understand project plans.
Augmenting Large Language Models with Static Code Analysis for Automated Code Quality Improvements
Software Engineering
Fixes computer code bugs automatically and faster.