DocumentCode
1401118
Title
An empirical investigation of an object-oriented software system
Author
Cartwright, Michelle ; Shepperd, Martin
Author_Institution
Dept. of Comput., Bournemouth Univ., UK
Volume
26
Issue
8
fYear
2000
fDate
8/1/2000 12:00:00 AM
Firstpage
786
Lastpage
796
Abstract
The paper describes an empirical investigation into an industrial object oriented (OO) system comprised of 133000 lines of C++. The system was a subsystem of a telecommunications product and was developed using the Shlaer-Mellor method (S. Shlaer and S.J. Mellor, 1988; 1992). 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 users
Keywords
C++ language; object-oriented programming; software performance evaluation; telecommunication computing; C++ code; OO constructs; OO technology; Shlaer-Mellor method; defect densities; empirical investigation; industrial object oriented system; inheritance; inheritance structures; local prediction systems; local significance; measurement technology; object oriented software system; polymorphism; potential users; prediction systems; software developers; telecommunications product; Buildings; Computer industry; Computer languages; Java; Lab-on-a-chip; Large-scale systems; Particle measurements; Software measurement; Software systems; Testing;
fLanguage
English
Journal_Title
Software Engineering, IEEE Transactions on
Publisher
ieee
ISSN
0098-5589
Type
jour
DOI
10.1109/32.879814
Filename
879814
Link To Document