Maintenance Process and Product Evaluation Using Reliability, Risk, and Test Metrics

Abstract In analyzing the stability of a maintenance process, it is important that it not be treated in isolation from the reliability and risk of deploying the software that result from applying the process. Furthermore, we need to consider the efficiency of the test effort that is a part of the process and a determinate of reliability and risk of deployment. The relationship between product quality and process capability and maturity has been recognized as a major issue in software engineering based on the premise that improvements in process will lead to higher-quality products. To this end, we have been investigating an important facet of process capability—stability—as defined and evaluated by trend, change, and shape metrics, across releases and within a release. Our integration of product and process measurement serves the dual purpose of using metrics to assess and predict reliability and risk and to evaluate process stability. We use the NASA Space Shuttle flight software and the United States Air Force Global Awareness program to illustrate our approach.

[1]  Norman F. Schneidewind,et al.  Applying reliability models to the space shuttle , 1992, IEEE Software.

[2]  Victor R. Basili,et al.  A change analysis process to characterize software maintenance projects , 1994, Proceedings 1994 International Conference on Software Maintenance.

[3]  Thomas M. Pigoski,et al.  Software maintenance metrics: a case study , 1994, Proceedings 1994 International Conference on Software Maintenance.

[4]  Norman F. Schneidewind,et al.  Software Reliability Model with Optimal Selection of Failure Data , 1993, IEEE Trans. Software Eng..

[5]  Norman F. Schneidewind,et al.  Predictions for increasing confidence in the reliability of the Space Shuttle flight software , 1995 .

[6]  Norman F. Schneidewind,et al.  Reliability Modeling for Safety Critical Software , 1997, Ada-Europe.

[7]  Taghi M. Khoshgoftaar,et al.  Detection of fault-prone software modules during a spiral life cycle , 1996, 1996 Proceedings of International Conference on Software Maintenance.

[8]  Ralph Young,et al.  Combining quality and software improvement , 1997, CACM.

[9]  P. Oman,et al.  Maintainability measurements on industrial source code maintenance activities , 1995, Proceedings of International Conference on Software Maintenance.

[10]  C. Billings,et al.  Journey to a Mature Software Process , 1994, IBM Syst. J..

[11]  David Gefen,et al.  The non-homogeneous maintenance periods: a case study of software modifications , 1996, 1996 Proceedings of International Conference on Software Maintenance.

[12]  Sallie M. Henry,et al.  Improving software maintenance at Martin Marietta , 1994, IEEE Software.

[13]  Norman F. Schneidewind How To Evaluate Legacy System Maintenance , 1998, IEEE Softw..

[14]  Harry M. Sneed,et al.  Modelling the maintenance process at Zurich Life Insurance , 1996, 1996 Proceedings of International Conference on Software Maintenance.

[15]  Norman F. Schneidewind Measuring and Evaluating Maintenance Process Using Reliability, Risk, and Test Metrics , 1999, IEEE Trans. Software Eng..

[16]  George E. Stark,et al.  Measurements for managing software maintenance , 1996, 1996 Proceedings of International Conference on Software Maintenance.

[17]  Meir M. Lehman Programs, life cycles, and laws of software evolution , 1980 .