Comparing the influence of using feature-oriented programming and conditional compilation on comprehending feature-oriented software

被引:0
作者
Alcemir Rodrigues Santos
Ivan do Carmo Machado
Eduardo Santana de Almeida
Janet Siegmund
Sven Apel
机构
[1] Federal University of Bahia,
[2] University of Passau,undefined
来源
Empirical Software Engineering | 2019年 / 24卷
关键词
Quasi-experiments; Replication; Feature-oriented software development; FeatureHouse; Conditional compilation; Graduate students;
D O I
暂无
中图分类号
学科分类号
摘要
Several variability representations have been proposed over the years. Software maintenance in the presence of variability is known to be hard. One of the reasons is that maintenance tasks require a large amount of cognitive effort for program comprehension. In fact, the different ways of representing variability in source code might influence the comprehension process in different ways. Despite the differences, there is little evidence about how these variability representations – such as conditional-compilation directives or feature-oriented programming – influence program comprehension. Existing research has focused primarily on either understanding how code using modern paradigms evolves compared to the traditional way of realizing variability, namely conditional compilation, or on the aspects influencing the comprehension of conditional compilation only. We used two different programs implemented in Java and each of these variability representations. As Java does not support conditional compilation natively, we relied on the mimicking (i.e., preprocessing annotations in comments) that has been used in the literature. Our results show no significant statistical differences regarding the evaluated measures (correctness, understanding, or response time) in the tasks. Our heterogeneous sample allowed us to produce evidence about the influence of using CC and FOP variability representations on the aspects involved in the comprehension of feature-oriented software, while addressing bug-finding tasks.
引用
收藏
页码:1226 / 1258
页数:32
相关论文
共 40 条
  • [1] Apel S(2009)An overview of feature-oriented software development J Object Techn 8 49-84
  • [2] Kästner C(2013)Language-independent and automated software composition: The FeatureHouse experience Trans Softw Eng 39 63-79
  • [3] Apel S(2005)Best practices in exploratory factor analysis Four recommendations for getting the most from your analysis Pract Assess Res Eval 10 173-178
  • [4] Kästner C(2013)Do background colors improve program comprehension in the #ifdef hell? Empir Softw Eng 18 699-745
  • [5] Lengauer C(2014)On the use of feature-oriented programming for evolving software product lines— A comparative study Sci Comput Program 93 65-85
  • [6] Costello AB(2014)A quantitative and qualitative assessment of aspectual feature modules for evolving software product lines Sci Comput Program 96 230-253
  • [7] Osborne JW(2014)On the comprehension of program comprehension Trans Softw Eng Methodol 23 31,1-31,37
  • [8] Feigenspan J(1932)A technique for the measurement of attitudes Arch Psychol 22 5-55
  • [9] Kästner C(2008)The role of replications in empirical software engineering Empir Softw Eng 13 211-218
  • [10] Apel S(2014)Measuring and modeling programming experience Empir Softw Eng 19 1299-1334