• 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