An empirical investigation of an object-oriented software system
Top Cited Papers
- 1 January 2000
- journal article
- Published by Institute of Electrical and Electronics Engineers (IEEE) in IEEE Transactions on Software Engineering
- Vol. 26 (8) , 786-796
- https://doi.org/10.1109/32.879814
Abstract
This is the post print version of the article. The official published version can be obtained from the link below.This paper describes an empirical investigation into an industrial object-oriented (OO) system comprised of 133,000 lines of C++. The system was a subsystem of a telecommunications product and was developed using the Shlaer-Mellor method. From this study, we found that there was little use of OO constructs such as inheritance and, therefore, polymorphism. It was also found that there was a significant difference in the defect densities between those classes that participated in inheritance structures and those that did not, with the former being approximately three times more defect-prone. We were able to construct useful prediction systems for size and number of defects based upon simple counts such as the number of states and events per class. Although these prediction systems are only likely to have local significance, there is a more general principle that software developers can consider building their own local prediction systems. Moreover, we believe this is possible, even in the absence of the suites of metrics that have been advocated by researchers into OO technology. As a consequence, measurement technology may be accessible to a wider group of potential usersKeywords
This publication has 12 references indexed in Scilit:
- Evaluating the impact of object-oriented design on software qualityPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- Managerial use of metrics for object-oriented software: an exploratory analysisIEEE Transactions on Software Engineering, 1998
- An evaluation of the MOOD set of object-oriented software metricsIEEE Transactions on Software Engineering, 1998
- Does OO sync with how we think?IEEE Software, 1998
- Software failures: follies and fallaciesIEE Review, 1997
- A validation of object-oriented design metrics as quality indicatorsIEEE Transactions on Software Engineering, 1996
- Candidate metrics for object-oriented software within a taxonomy frameworkJournal of Systems and Software, 1994
- A metrics suite for object oriented designIEEE Transactions on Software Engineering, 1994
- Cyclomatic complexity density and software maintenance productivityIEEE Transactions on Software Engineering, 1991
- Keynote address - data abstraction and hierarchyACM SIGPLAN Notices, 1987