Assessing the changeability of two object-oriented design alternatives - A controlled experiment (bibtex)
by Arisholm, Erik and Sjøberg, Dag I.K. and Jørgensen, Magne
Abstract:
An important motivation for the object-oriented paradigm is to improve the changeability of the software, thereby reducing lifetime development costs. This paper describes the results of controlled experiments assessing the changeability of a given responsibility-driven (RD) design versus an alternative control-oriented "mainframe" (MF) design. According to Coad and Yourdon's OO design quality principles, the RD design represents a "good" design. The MF design represents a "bad" design. To investigate which of the designs have better changeability, we conducted two controlled experiments - a pilot experiment and a main experiment. In both experiments, the subjects were divided in two groups in which the individuals designed, coded and tested several identical changes on one of the two design alternatives. The results clearly indicate that the "good" RD design requires significantly more change effort for the given set of changes than the alternative "bad" MF design. This difference in change effort is primarily due to the difference in effort required to understand how to solve the change tasks. Consequently, reducing class-level coupling and increasing class cohesion may actually increase the cognitive complexity of a design. With regards to correctness and learning curve, we found no significant differences between the two designs. However, we found that structural attributes change less for the RD design than for the MF design. Thus, the RD design may be less prone to structural deterioration. A challenging issue raised in this paper is therefore the tradeoff between change effort and structural stability.
Reference:
Assessing the changeability of two object-oriented design alternatives - A controlled experiment (Arisholm, Erik and Sjøberg, Dag I.K. and Jørgensen, Magne), In Empirical Software Engineering, Kluwer Academic Publishers, volume 6, 2001.
Bibtex Entry:
@article{Arisholm2001,
abstract = {An important motivation for the object-oriented paradigm is to improve the changeability of the software, thereby reducing lifetime development costs. This paper describes the results of controlled experiments assessing the changeability of a given responsibility-driven (RD) design versus an alternative control-oriented "mainframe" (MF) design. According to Coad and Yourdon's OO design quality principles, the RD design represents a "good" design. The MF design represents a "bad" design. To investigate which of the designs have better changeability, we conducted two controlled experiments - a pilot experiment and a main experiment. In both experiments, the subjects were divided in two groups in which the individuals designed, coded and tested several identical changes on one of the two design alternatives. The results clearly indicate that the "good" RD design requires significantly more change effort for the given set of changes than the alternative "bad" MF design. This difference in change effort is primarily due to the difference in effort required to understand how to solve the change tasks. Consequently, reducing class-level coupling and increasing class cohesion may actually increase the cognitive complexity of a design. With regards to correctness and learning curve, we found no significant differences between the two designs. However, we found that structural attributes change less for the RD design than for the MF design. Thus, the RD design may be less prone to structural deterioration. A challenging issue raised in this paper is therefore the tradeoff between change effort and structural stability.},
author = {Arisholm, Erik and Sj{\o}berg, Dag I.K. and J{\o}rgensen, Magne},
doi = {10.1023/A:1011439416657},
isbn = {1382-3256},
issn = {13823256},
journal = {Empirical Software Engineering},
keywords = {Change effort,Changeability,Controlled experiment,Object-oriented design quality,Responsibility-driven design,cocome_lit-review},
mendeley-tags = {cocome_lit-review},
number = {3},
pages = {231--277},
publisher = {Kluwer Academic Publishers},
title = {{Assessing the changeability of two object-oriented design alternatives - A controlled experiment}},
url = {http://dx.doi.org/10.1023/A{\%}3A1011439416657},
volume = {6},
year = {2001}
}
Powered by bibtexbrowser