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.
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.
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.
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.
Bush, M.E. and N. Fenton (1990), “Software Measurement: A Conceptual Framework”,Journal of Systems and Software 12, 3, 223–231.
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.
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.
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.
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.
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.
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.
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.
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.
Weyuker, E.J. (1988), “Evaluating Software Complexity Measures”,IEEE Trans. on Software Engineering 14, 9, 1357–1365.
Zuse, H. (1992), “Properties of Software Measures”,Software Quality Journal 1, 4, 225–260.
Author information
Authors and Affiliations
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
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
Issue Date:
DOI: https://doi.org/10.1007/BF02249047