Integrative Software Design for Reliability: Beyond Models and Defect Prediction



The prevalence of software as an integral part of almost anything is commonplace today among the products, systems, applications, services and/or solutions with which we all interact. Software reliability directly impacts both the user experience and field operating costs. A key challenge is for the product developer to accurately predict and improve software field reliability in terms of attributes such as outage frequency and duration, prior to software delivery. Unfortunately, the actual field performance data does not often correlate with the predictions. Markov analysis and software reliability growth models are necessary key steps, but are insufficient to fully address customer-perceived reliability issues. Can we make better use of field performance data to improve our predictive models and tune our test strategies from one release to the next? In this paper, we describe an integrative software reliability framework that attempts to close the gap between expectations, predictions, and the actual behavior of systems by leveraging key best-in-class practices, tools, and techniques for software reliability analysis, modeling and predicting software field performance in terms of outage frequency/duration; tracking and monitoring test defect data and defects “not fixed” in subsequent releases over the software lifecycle, and validating prediction results with the actual field data. The proposed approach is designed to achieve customer expectations for software reliability and help assure the delivery of highly reliable software products. © 2012 Alcatel-Lucent.