Combining Software Quality Analysis with Dynamic Event/Fault Trees for High Assurance Systems Engineering

We present a novel approach for probabilistic risk assessment (PRA) of systems which require high assurance that they will function as intended. Our approach uses a new model i.e., a dynamic event/fault tree (DEFT) as a graphical and logical method to reason about and identify dependencies between system components, software components, failure events and system outcome modes. The method also explicitly includes software in the analysis and quantifies the contribution of the software components to overall system risk/ reliability. The latter is performed via software quality analysis (SQA) where we use a Bayesian network (BN) model that includes diverse sources of evidence about fault introduction into software; specifically, information from the software development process and product metrics. We illustrate our approach by applying it to the propulsion system of the miniature autonomous extravehicular robotic camera (mini-AERCam). The software component considered for the analysis is the related guidance, navigation and control (GN&C) component. The results of SQA indicate a close correspondence between the BN model estimates and the developer estimates of software defect content. These results are then used in an existing theory of worst-case reliability to quantify the basic event probability of the software component in the DEFT.

[1]  Peter G. Bishop,et al.  Using a log-normal failure rate distribution for worst case bound reliability prediction , 2003, 14th International Symposium on Software Reliability Engineering, 2003. ISSRE 2003..

[2]  Sarah J. Dunnett,et al.  Event-tree analysis using binary decision diagrams , 2000, IEEE Trans. Reliab..

[3]  Finn Verner Jensen,et al.  Introduction to Bayesian Networks , 2008, Innovations in Bayesian Networks.

[4]  Jean-Jacques Gras End-to-End Defect Modeling , 2004, IEEE Softw..

[5]  Mark Harman,et al.  Search-based software engineering , 2001, Inf. Softw. Technol..

[6]  Joanne Bechta Dugan,et al.  Automatic synthesis of dynamic fault trees from UML system models , 2002, 13th International Symposium on Software Reliability Engineering, 2002. Proceedings..

[7]  Hong Xu,et al.  Combining dynamic fault trees and event trees for probabilistic risk assessment , 2004, Annual Symposium Reliability and Maintainability, 2004 - RAMS.

[8]  Salvatore J. Bavuso,et al.  Dynamic fault-tree models for fault-tolerant computer systems , 1992 .

[9]  Peter G. Bishop,et al.  Worst case reliability prediction based on a prior estimate of residual defects , 2002, 13th International Symposium on Software Reliability Engineering, 2002. Proceedings..

[10]  John A. Clark,et al.  Formulating software engineering as a search problem , 2003, IEE Proc. Softw..

[11]  William Marsh,et al.  Predicting software defects in varying development lifecycles using Bayesian nets , 2007, Inf. Softw. Technol..

[12]  Michael González Harbour,et al.  Schedulability analysis for tasks with static and dynamic offsets , 1998, Proceedings 19th IEEE Real-Time Systems Symposium (Cat. No.98CB36279).

[13]  C. D. Gelatt,et al.  Optimization by Simulated Annealing , 1983, Science.

[14]  Iain Bate,et al.  Minimising Task Migration and Priority Changes in Mode Transitions , 2007, 13th IEEE Real Time and Embedded Technology and Applications Symposium (RTAS'07).

[15]  Joanne Bechta Dugan,et al.  Empirical Analysis of Software Fault Content and Fault Proneness Using Bayesian Methods , 2007, IEEE Transactions on Software Engineering.

[16]  Mark C. Paulk,et al.  Capability Maturity Model , 1991 .

[17]  Theerayod Wiangtong,et al.  Comparing Three Heuristic Search Methods for Functional Partitioning in Hardware–Software Codesign , 2002, Des. Autom. Embed. Syst..

[18]  J. Berger Statistical Decision Theory and Bayesian Analysis , 1988 .

[19]  Nancy G. Leveson,et al.  Safeware: System Safety and Computers , 1995 .

[20]  Paul Krause,et al.  Software Quality Prediction Using Bayesian Networks , 2003 .

[21]  Phil McMinn,et al.  Search‐based software test data generation: a survey , 2004, Softw. Test. Verification Reliab..

[22]  Peter G. Bishop,et al.  A conservative theory for long-term reliability-growth prediction [of software] , 1996, IEEE Trans. Reliab..

[23]  Spiros Mancoridis,et al.  Using Interconnection Style Rules to Infer Software Architecture Relations , 2004, GECCO.

[24]  J. Tobin Estimation of Relationships for Limited Dependent Variables , 1958 .

[25]  Alan Burns,et al.  Allocating hard real-time tasks: An NP-Hard problem made easy , 1992, Real-Time Systems.

[26]  William R. Dunn Practical Design of Safety-Critical Computer Systems , 2002 .

[27]  Jean-Jacques Gras,et al.  Improving fault prediction using Bayesian networks for the development of embedded software applications , 2006, Softw. Test. Verification Reliab..

[28]  Bin Li,et al.  Integrating software into PRA , 2003, 14th International Symposium on Software Reliability Engineering, 2003. ISSRE 2003..

[29]  Peter G. Bishop,et al.  A conservative theory for long term reliability growth prediction , 1996, Proceedings of ISSRE '96: 7th International Symposium on Software Reliability Engineering.

[30]  Nasser Fard,et al.  Estimation of dispersion effects from robust design experiments with censored response data , 2001 .