Microcode error prediction models
George Triantafyllos · 1994
In this research we address issues related to the predictive capabilities of error prediction models, using from the IBM 4381 and IBM 9370 computer systems. In our investigation we consider more than 1,200,000 lines of microcode written in a variety of languages. We analyze and establish relationships among the microcode metrics. Using linearly independent metrics, we investigate whether software metrics can be used in linear or multi-linear models to predict the number of errors to be found in a microcode project during testing. Furthermore, we investigate the applicability of software reliability models and show their predictive capabilities as a function of the historic data used to fit a model. Our investigation strongly suggests that existing static models or models derived from regression analysis on microcode metrics are not capable to estimate the errors expected to be found during the testing of microcode. Reliability models, although accurate towards the end of the testing cycle, during the early phases of the testing, cannot be trusted to provide accurate predictions. Finally, we propose a new error prediction model applicable to the microcode development. The model uses the history of a previously developed computer system to predict the order of magnitude of the expected functional errors. The proposed model is based on static environmental factors such as the schedule and the manpower of the system to be developed as well as its complexity. Experiments have shown that our model successfully predicted the errors in the 9370 system based on the error collected from the 4381 system. Furthermore, additional experimentation with the microcode of two DASD controllers strongly suggest that the proposed model is capable of estimating very accurately the errors incurred during the development of the controllers.