Supporting program comprehension in large preprocessor-based software product lines

被引:5
|
作者
Feigenspan, J. [1 ]
Schulze, M. [1 ]
Papendieck, M. [1 ]
Kaestner, C. [2 ]
Dachselt, R. [1 ]
Koeppen, V. [1 ]
Frisch, M. [1 ]
Saake, G. [1 ]
机构
[1] Univ Magdeburg, Sch Comp Sci, D-39106 Magdeburg, Germany
[2] Univ Marburg, Sch Math & Comp Sci, D-35032 Marburg, Germany
基金
欧洲研究理事会;
关键词
IMPACT; CODE; PLUS;
D O I
10.1049/iet-sen.2011.0172
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Software product line (SPL) engineering provides an effective mechanism to implement variable software. However, using preprocessors to realise variability, which is typical in industry, is heavily criticised, because it often leads to obfuscated code. Using background colours to highlight code annotated with preprocessor statements to support comprehensibility has proved to be effective, however, scalability to large SPLs is questionable. The authors' aim is to implement and evaluate scalable usage of background colours for industrial-sized SPLs. They designed and implemented scalable concepts in a tool called Feature Commander. To evaluate its effectiveness, the authors conducted a controlled experiment with a large real-world SPL with over 99 000 lines of code and 340 features. They used a within-subjects design with treatment colours and no colours. They compared correctness and response time of tasks for both treatments. For certain kinds of tasks, background colours improve program comprehension. Furthermore, the subjects generally favour background colours compared with no background colours. In addition, the subjects who worked with background colours had to use the search functions less frequently. The authors show that background colours can improve program comprehension in large SPLs. Based on these encouraging results, they continue their work on improving program comprehension in large SPLs.
引用
收藏
页码:488 / 501
页数:14
相关论文
共 50 条
  • [21] FIG based Quality Assurance in Software Product Lines
    Yousaf, Nazish
    Sheikh, Rida
    Abbas, Muhammad
    [J]. 2017 INTERNATIONAL CONFERENCE ON FRONTIERS OF INFORMATION TECHNOLOGY (FIT), 2017, : 173 - 177
  • [22] TESTING IN SOFTWARE PRODUCT LINES A Model based Approach
    Reales Mateo, Pedro
    Polo Usaola, Macario
    Caivano, Danilo
    [J]. ICEIS 2011: PROCEEDINGS OF THE 13TH INTERNATIONAL CONFERENCE ON ENTERPRISE INFORMATION SYSTEMS, VOL 3, 2011, : 46 - 54
  • [23] Towards Software Product Lines Based Cloud Architectures
    Abu Matar, Mohammad
    Mizouni, Rabeb
    Alzahmi, Salwa
    [J]. 2014 IEEE INTERNATIONAL CONFERENCE ON CLOUD ENGINEERING (IC2E), 2014, : 117 - 126
  • [24] Search Based Design of Software Product Lines Architectures
    Colanzi, Thelma Elita
    [J]. 2012 34TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE), 2012, : 1507 - 1510
  • [25] Automated DSL Construction Based on Software Product Lines
    Huang, Changyun
    Osaka, Ataru
    Kamei, Yasutaka
    Ubayashi, Naoyasu
    [J]. MODELSWARD 2015 PROCEEDINGS OF THE 3RD INTERNATIONAL CONFERENCE ON MODEL-DRIVEN ENGINEERING AND SOFTWARE DEVELOPMENT, 2015, : 247 - 254
  • [26] Specification-based Testing for Software Product Lines
    Kahsai, Temesghen
    Roggenbach, Markus
    Schlingloff, Bernd-Holger
    [J]. SEFM 2008: SIXTH IEEE INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING AND FORMAL METHODS, PROCEEDINGS, 2008, : 149 - +
  • [27] Ontology-Based Software Graphs for Supporting Code Comprehension During Onboarding
    Nagel, Lukas
    Karras, Oliver
    Kluender, Jil
    [J]. 2021 47TH EUROMICRO CONFERENCE ON SOFTWARE ENGINEERING AND ADVANCED APPLICATIONS (SEAA 2021), 2021, : 158 - 165
  • [28] FMCAT: Supporting Dynamic Service-based Product Lines
    Basile, Davide
    Di Giandomenico, Felicita
    Gnesi, Stefania
    [J]. 21ST INTERNATIONAL SYSTEM & SOFTWARE PRODUCT LINE CONFERENCE (SPLC 2017), VOL 2, 2017, : 3 - 8
  • [29] Managing large scale reuse across multiple software product lines
    Altintas, N. Ilker
    Cetin, Semih
    [J]. HIGH CONFIDENCE SOFTWARE REUSE IN LARGE SYSTEMS, PROCEEDINGS, 2008, 5030 : 166 - 177
  • [30] A parallel portfolio approach to configuration optimization for large software product lines
    Shi, Kai
    Yu, Huiqun
    Guo, Jianmei
    Fan, Guisheng
    Yang, Xingguang
    [J]. SOFTWARE-PRACTICE & EXPERIENCE, 2018, 48 (09): : 1588 - 1606