A Hybrid Feature Location Technique for Re-engineering Single Systems into Software Product Lines

被引:8
|
作者
Michelon, Gabriela Karoline [1 ,2 ]
Linsbauer, Lukas [3 ]
Assuncao, Wesley K. G. [4 ,5 ]
Fischer, Stefan [6 ]
Egyed, Alexander [1 ]
机构
[1] Johannes Kepler Univ Linz, Inst Software Syst Engn, Linz, Austria
[2] Johannes Kepler Univ Linz, LIT Secure & Correct Syst Lab, Linz, Austria
[3] Tech Univ Carolo Wilhelmina Braunschweig, Inst Software Engn & Automot Informat, Braunschweig, Germany
[4] Western Parana State Univ, PPGComp, Cascavel, Brazil
[5] Univ Tecnol Fed Parana, Curitiba, Parana, Brazil
[6] Software Competence Ctr Hagenberg GmbH, Hagenberg, Austria
来源
PROCEEDINGS OF 15TH INTERNATIONAL WORKING CONFERENCE ON VARIABILITY MODELLING OF SOFTWARE-INTENSIVE SYSTEMS, VAMOS 2021 | 2021年
基金
奥地利科学基金会;
关键词
traceability; feature location; software reuse; runtime monitoring; SOURCE CODE;
D O I
10.1145/3442391.3442403
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Software product lines (SPLs) are known for improving productivity and reducing time-to-market through the systematic reuse of assets. SPLs are adopted mainly by re-engineering existing system variants. Feature location techniques (FLTs) support the re-engineering process by mapping the variants' features to their implementation. However, such FLTs do not perform well when applied to single systems. In this way, there is a lack of FLTs to aid the re-engineering process of a single system into an SPL. In this work, we present a hybrid technique that consists of two complementary types of analysis: i) a dynamic analysis by runtime monitoring traces of scenarios in which features of the system are exercised individually, and ii) a static analysis for refining overlapping traces. We evaluate our technique on three subject systems by computing the common metrics used in FL research. We thus computed Precision, Recall, and F-Score at the line- and method-level of source code. In addition to that, one of the systems has a ground truth available, which we also used for comparing results. Results show that our FLT reached an average of 68-78% precision and 72-81% recall on two systems at the line-level, and 67-65% precision and 68-48% recall at the method-level. In these systems, most of the implementation can be covered by the exercise of the features. For the largest system, our technique reached a precision of up to 99% at the line-level, 94% at the method-level, and 44% when comparing to traces. However, due to its size, it was difficult to reach high code coverage during execution, and thus the recall obtained was on average of 28% at the line-level, 25% at the method-level, and 30% when comparing to traces. The main contribution of this work is a hybrid FLT, its publicly available implementation, and a replication package for comparisons and future studies.
引用
收藏
页数:9
相关论文
共 8 条
  • [1] Software reuse through re-engineering the legacy systems
    Guo, J
    INFORMATION AND SOFTWARE TECHNOLOGY, 2003, 45 (09) : 597 - 609
  • [2] Software product lines and features from the perspective of set theory with an application to feature location
    Eisenecker, Ulrich
    Mueller, Richard
    JOURNAL OF SYSTEMS AND SOFTWARE, 2024, 210
  • [3] A feature oriented approach to modeling and reusing requirements of software product lines
    Mei, H
    Zhang, W
    Gu, F
    27TH ANNUAL INTERNATIONAL COMPUTER SOFTWARE AND APPLICATIONS CONFERENCE, PROCEEDINGS, 2003, : 250 - 256
  • [4] Software Feature Location in Practice: Debugging Aircraft Simulation Systems
    Hoseini, Salman
    Hamou-Lhadj, Abdelwahab
    Desrosiers, Patrick
    Tapp, Martin
    36TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE COMPANION 2014), 2014, : 225 - 234
  • [5] Evaluating Low-Cost in Internal Crowdsourcing for Software Engineering: The Case of Feature Location in an Industrial Environment
    Perez, Francisca
    Cristina Marcen, Ana
    Lapena Mart, Raul
    Cetina, Carlos
    IEEE ACCESS, 2020, 8 (08): : 65745 - 65757
  • [6] Analysis and Propagation of Feature Revisions in Preprocessor-based Software Product Lines
    Michelon, Gabriela K.
    Assuncao, Wesley K. G.
    Gruenbacher, Paul
    Egyed, Alexander
    2023 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE ANALYSIS, EVOLUTION AND REENGINEERING, SANER, 2023, : 284 - 295
  • [7] Feature location benchmark for extractive software product line adoption research using realistic and synthetic Eclipse variants
    Martinez, Jabier
    Ziadi, Tewfik
    Papadakis, Mike
    Bissyande, Tegawende F.
    Klein, Jacques
    le Traon, Yves
    INFORMATION AND SOFTWARE TECHNOLOGY, 2018, 104 : 46 - 59
  • [8] Feature extraction approaches from natural language requirements for reuse in software product lines: A systematic literature review
    Bakar, Noor Hasrina
    Kasirun, Zarinah M.
    Salleh, Norsaremah
    JOURNAL OF SYSTEMS AND SOFTWARE, 2015, 106 : 132 - 149