Dynamic Feature Location Framework for Software Project
No Thumbnail Available
Date
2024-08
Authors
Journal Title
Journal ISSN
Volume Title
Publisher
University of Bahrain
Abstract
The Dynamic Feature Location Techniques (DFLTs) aim to automate the process of
identifying the source code responsible for executing specific features within software systems. Manual implementation of DFLTs is time-consuming and demanding for developers,
leading to the proposal of semi-automated approaches. One common approach involves
generating execution traces by executing multiple scenarios for each software feature and
then mapping the corresponding source code based on these traces. However, the execution
traces are often large and contain irrelevant data to the software feature, requiring solutions
to reduce their size and the eliminate irrelevant data. One such solution involves minimizing the number of scenarios needed to exercise a software feature, but little work has been
done in this area.
To address this gap, a generic framework called Aggregation of Execution Traces to
Formulate a Scenario (AETFS) is introduced in this work. AETFS leverages runtime software output and employs textual analysis techniques to extract relevant data from the execution trace for scenario creation. It explores textual analysis, including topic modeling, as
a means to select accurate scenarios for DFLTs. The performance of AETFS is characterized in terms of execution trace granularity, enabling the identification of meaningful terms
that can filter the execution trace using textual analysis techniques such as Latent Semantic Indexing (LSI). The evaluation encompasses eight subject systems with 600 features,
making it more extensive than previous studies.
The study identifies certain attributes of execution traces and text queries that impact
AETFS’s performance. Two distinct groups emerge, one achieving superior Feature Location (FL) using AETFS and the other achieving better FL using a conventional baseline
method. Combining AETFS with the baseline method significantly enhances performance,
with the top results surpassing the baseline by 45% and the lowest by 12% over AETFS.
In conclusion, this work highlights the importance of rigorously characterizing the proposed DFLTs framework to identify optimal scenarios for exercising software features.
It emphasizes the need to differentiate between scenarios and their characterizations to
generate necessary insights. The findings demonstrate the effectiveness of AETFS while
providing valuable insights for further advancements in the field of DFLTs.
Description
Keywords
Software Engineering, Feature Location, Dynamic Analysis, Execution Traces