Skip to main content
Log in

Measurement and defect modeling for a legacy software system

  • Published:
Annals of Software Engineering

Abstract

This paper analyzes the quality of a large-scale legacy software system using selected metrics. Quality measurements include defect information collected during product development and in-field operation. Other software metrics include measurements on various product and process attributes, including design, size, change, and complexity. Preliminary analyses revealed the high degree of skew in our data and a weak correlation between defects and software metrics. Tree-based models were then used to uncover relationships between defects and software metrics, and to identify high-defect modules together with their associated measurement characteristics. As results presented in tree forms are natural to the decision process and are easy to understand, tree-based modeling is shown to be suitable for change solicitation and useful in guiding remedial actions for quality improvement.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  • Basili, V.R. and B.T. Perricone (1984), “Software Errors and Complexity: An Empirical Investigation”,Communications of the ACM 27, 1, 42–52.

    Google Scholar 

  • Basili, V.R. and H.D. Rombach (1988), “The TAME Project: Towards Improvement-Oriented Software Environments”,IEEE Trans. on Software Engineering 14, 6, 758–773.

    Google Scholar 

  • Basili, V.R., M.V. Zelkowitz, F.E. McGarry, and R.W. Reiter (1977), “The Software Engineering Laboratory”, Technical Report SEL-77-001, Software Eng. Lab., NASA/GSFC, Greenbelt, MD.

    Google Scholar 

  • Bush, M.E. and N. Fenton (1990), “Software Measurement: A Conceptual Framework”,Journal of Systems and Software 12, 3, 223–231.

    Google Scholar 

  • Buss, E. and J. Henshaw (1992), “Experiences in Program Understanding”, Technical Report TR-74.105, IBM PRGS Toronto Laboratory.

  • Card, D.N. and W.W. Agresti (1988), “Measuring Software Design Complexity”,Journal of Systems and Software 8, 3, 185–197.

    Google Scholar 

  • Card, D.N. and R.L. Glass (1990),Measuring Software Design Quality, Prentice-Hall.

  • Clark, L.A. and D. Pregibon (1992), “Tree Based Models”,Statistical Models in S, J.M. Chambers, and T.J. Hastie, Eds., Wadsworth & Brooks/Cole, pp. 377–419.

  • Fenton, N. (1994), “Software Measurement: A Necessary Scientific Basis”,IEEE Trans. on Software Engineering 20, 3, 199–206.

    Google Scholar 

  • Halstead, M.H. (1977),Elements of Software Science, Elsevier.

  • Henry, S. and D. Kafura (1981), “Software Structure Metrics Based on Information Flow”,IEEE Trans. on Software Engineering 7, 5, 510–518.

    Google Scholar 

  • Humphrey, W. (1989),Managing the Software Process, Addison-Wesley.

  • Hutchens, D.H. and V.R. Basili (1985), “System Structure Analysis: Clustering with Data Bindings”,IEEE Trans. on Software Engineering 11, 8, 749–757.

    Google Scholar 

  • IBM (1991),Programming Process Architechture, Version 2.1, IBM.

  • Khoshgoftaar, T.M. and J.C. Munson (1993), “A Comparative Study of Predictive Models for Program Changes during System Testing and Maintenance”, InProc. Int. Conf. Software Maintenance, Montreal, Canada, pp. 72–79.

  • McCabe, T.J. (1976), “A Complexity Measure”,IEEE Trans. on Software Engineering 2, 6, 308–320.

    Google Scholar 

  • Porter, A.A. and R.W. Selby (1990), “Empirically Guided Software Development Using Metric-Based Classification Trees”,IEEE Software, 46–54.

  • Schneidewind, N.F. (1992), “Methodology for Validating Software Metrics”,IEEE Trans. on Software Engineering 18, 5, 410–422.

    Google Scholar 

  • Schneidewind, N.F. (1994), “Validating Metrics for Ensuring Space Shuttle Flight Software Quality”,IEEE Computer, 50–57.

  • Selby, R.W. and A.A. Porter (1988), “Learning from Examples: Generation and Evaluation of Decision Trees for Software Resource Analysis”,IEEE Trans. on Software Engineering 14, 12, 1743–1757.

    Google Scholar 

  • Tian, J. and J. Henshaw (1994), “Tree-based Defect Analysis in Testing”,Proc. 4th Int. Conf. on Software Quality, McLean, Virginia.

  • Tian, J., A.A. Porter, and M.V. Zelkowitz (1992), “An Improved Classification Tree Analysis of High Cost Modules Based Upon an Axiomatic Definition of Complexity”,Proc. 3rd Int. Symp. on Software Reliability Engineering, EEE Computer Society Press, pp. 164–172.

  • Tian, J. and M.V. Zelkowitz (1992), “A Formal Program Complexity Model and Its Application”,Journal of Systems and Software 17, 3, 253–266.

    Google Scholar 

  • Weyuker, E.J. (1988), “Evaluating Software Complexity Measures”,IEEE Trans. on Software Engineering 14, 9, 1357–1365.

    Google Scholar 

  • Zuse, H. (1992), “Properties of Software Measures”,Software Quality Journal 1, 4, 225–260.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Additional information

The following are trademarks or service marks in the United States and/or other countries:

• IBM is a trademark of International Business Machines Corporation.

• REFINE and Software Refinery are trademarks of Reasoning Systems Inc.

• SAS is a trademark of the SAS Institute Inc.

• S-PLUS is a trademark of the Statistical Sciences, Inc.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Troster, J., Tian, J. Measurement and defect modeling for a legacy software system. Ann Software Eng 1, 95–118 (1995). https://doi.org/10.1007/BF02249047

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF02249047

Keywords

Navigation