• DocumentCode
    330835
  • Title

    Applying design metrics to a large-scale software system

  • Author

    Wong, W. Eric ; Horgan, Joseph R. ; Syring, Michael ; Zage, Wayne ; Zage, Dolores

  • Author_Institution
    Bellcore, Morristown, NJ, USA
  • fYear
    1998
  • fDate
    4-7 Nov 1998
  • Firstpage
    273
  • Lastpage
    282
  • Abstract
    Three metrics were used to extract design information from existing code to identify structural stress points in a software system being analyzed: Di, an internal design metric which incorporates factors related to a module´s internal structure; De , an external design metric which focuses on a module´s external relationships to other modules in the software system; and D(G), a composite design metric which is the sum of Di and De . Since stress point modules generally have a high probability for being fault-prone, project managers can use the information to determine where additional testing effort should be spent and assign these modules to more experienced programmers if modifications are needed. To make the analysis more accurate and efficient, a design metrics analyzer (χMetrics) was implemented. We conducted experiments using χMetrics on part of a distributed software system, written in C, with a client-server architecture, and identified a small percentage of its functions as good candidates for fault proneness. Files containing these functions were then validated by the real defect data collected from a recent major release to its next release for their fault proneness. Normalized metrics values were also computed by dividing the Di, De, and D(G) values by the corresponding function size determined by non-blank and non-comment lines of code to study the possible impact of function size on these metrics. Results indicate that function size has little impact on the predictive quality of our design metrics in identifying fault-prone functions
  • Keywords
    client-server systems; distributed programming; software fault tolerance; software metrics; χMetrics; client-server architecture; composite design metric; design information; design metrics analyzer; distributed software system; external design metric; fault prone functions; fault proneness; function size; internal design metric; large scale software system; normalized metrics values; predictive quality; project managers; real defect data; stress point modules; structural stress points; testing effort; Computer architecture; Data mining; Fault diagnosis; Information analysis; Internal stresses; Large-scale systems; Programming profession; Project management; Software systems; Testing;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Reliability Engineering, 1998. Proceedings. The Ninth International Symposium on
  • Conference_Location
    Paderborn
  • ISSN
    1071-9458
  • Print_ISBN
    0-8186-8991-9
  • Type

    conf

  • DOI
    10.1109/ISSRE.1998.730891
  • Filename
    730891