A controlled experiment on inheritance depth as a cost factor for code maintenance
نویسندگان
چکیده
In two controlled experiments we compare the performance on code maintenance tasks for three equivalent programs with 0, 3, and 5 levels of inheritance. For the given tasks, which focus on understanding effort more than change effort, programs with less inheritance were faster to maintain. Daly et al. previously reported similar experiments on the same question with quite different results. They found that the 5-level program tended to be harder to maintain than the 0-level program, while the 3-level program was significantly easier to maintain than the 0-level program. We describe the design and setup of our experiment, the differences to the previous ones, and the results obtained. Ours and the previous experiments are different in several ways: We used a longer and more complex program, made an inheritance diagram available to the subjects, and added a second kind of maintenance task. When taken together, the previous results plus ours suggest that there is no such thing as usefulness or harmfulness of a certain inheritance depth as such. Code maintenance effort is hardly correlated with inheritance depth, but rather depends on other factors (partly related to inheritance depth). Using statistical modeling, we identify the number of relevant methods to be one such factor. We use it to build an explanation model of average code maintenance effort that is much more powerful than a model relying on inheritance depth.
منابع مشابه
Answer to reviews of TSE # 110555 ( “ A Controlled Experiment on Inheritance
In two controlled experiments we compare the performance on code maintenance tasks for three equivalent programs with 0, 3, and 5 levels of inheritance. For the given tasks, which focus on understanding effort more than change effort, programs with less inheritance were faster to maintain. Daly et al. previously reported similar experiments on the same question with quite different results. The...
متن کاملA Controlled Experiment on Inheritance Depth as a Cost Factor for Maintenance
In two controlled experiments we compare the performance on maintenance tasks for three equivalent programs with 0, 3, and 5 levels of inheritance. For the given tasks, which focus on understanding effort more than change effort, programs with less inheritance were faster to maintain. John Daly et al. previously reported on similar experiments on the same question with quite different results. ...
متن کاملAn Empirical Study Evaluating Depth of Inheritance on the Maintainability of Object Oriented Software
This empirical research was undertaken as part of a multi method programme of research to investigate unsupported claims made of object oriented technology A series of subject based laboratory experiments including an internal replication tested the e ect of inheritance depth on the maintainability of object oriented software Subjects were timed performing identical maintenance tasks on object ...
متن کاملEvaluating Depth of Inheritance on theMaintainability of Object - Oriented
This empirical research was undertaken as part of a multi-method programme of research to investigate unsupported claims made of object-oriented technology. A series of subject-based laboratory experiments, including an internal replication, tested the eeect of inheritance depth on the maintainability of object-oriented software. Subjects were timed performing identical maintenance tasks on obj...
متن کاملThe impact of inheritance depth on maintenance tasks – Detailed description and evaluation of two experiment replications
Inheritance is one of the main concepts of object-oriented technology. It is claimed that the use of inheritance improves productivity and decreases development time. John Daly et al. reported on two experiments evaluating the effects of inheritance depth on program maintenance. They found that maintenance was performed significantly quicker for software using three levels of inheritance, compa...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید
ثبت ناماگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید
ورودعنوان ژورنال:
- Journal of Systems and Software
دوره 65 شماره
صفحات -
تاریخ انتشار 2003