Subjective evaluation of software evolvability using code smells: An empirical study

被引:0
作者
Mika V. Mäntylä
Casper Lassenius
机构
[1] Helsinki University of Technology,
来源
Empirical Software Engineering | 2006年 / 11卷
关键词
Code smells; Subjective evaluation; Perceived evaluation; Maintainability; Evolvability; Code metrics; Software metrics; Human factors;
D O I
暂无
中图分类号
学科分类号
摘要
This paper presents the results of an empirical study on the subjective evaluation of code smells that identify poorly evolvable structures in software. We propose use of the term software evolvability to describe the ease of further developing a piece of software and outline the research area based on four different viewpoints. Furthermore, we describe the differences between human evaluations and automatic program analysis based on software evolvability metrics. The empirical component is based on a case study in a Finnish software product company, in which we studied two topics. First, we looked at the effect of the evaluator when subjectively evaluating the existence of smells in code modules. We found that the use of smells for code evaluation purposes can be difficult due to conflicting perceptions of different evaluators. However, the demographics of the evaluators partly explain the variation. Second, we applied selected source code metrics for identifying four smells and compared these results to the subjective evaluations. The metrics based on automatic program analysis and the human-based smell evaluations did not fully correlate. Based upon our results, we suggest that organizations should make decisions regarding software evolvability improvement based on a combination of subjective evaluations and code metrics. Due to the limitations of the study we also recognize the need for conducting more refined studies and experiments in the area of software evolvability.
引用
收藏
页码:395 / 431
页数:36
相关论文
共 73 条
[1]  
Arnold RS(1989)Software restructuring Proc IEEE 77 607-617
[2]  
Bandi RK(2003)Predicting maintenance performance using object-oriented design complexity metrics IEEE Trans Softw Eng 29 77-87
[3]  
Vaishnavi VK(2002)A hierarchical model for object-oriented design quality IEEE Trans Softw Eng 28 4-17
[4]  
Turk DE(1999)A unified framework for coupling measurement in object-oriented systems IEEE Trans Softw Eng 25 91-121
[5]  
Bansiya J(1994)A metric suite for object oriented design IEEE Trans Softw Eng 20 476-493
[6]  
David CG(1998)Managerial use of metrics for object-oriented software: an exploratory analysis IEEE Trans Softw Eng 24 629-639
[7]  
Briand LC(1990)Reverse engineering and design recovery: a taxonomy IEEE Softw 7 13-17
[8]  
Daly JW(1994)Using metrics to evaluate software system maintainability Computer 27 44-49
[9]  
Wüst JK(1995)The application of software maintainability models in industrial software systems J Syst Softw 29 3-16
[10]  
Chidamber SR(1984)What does “product quality” really mean? Sloan Manage Rev 26 25-43