RISK-DRIVEN SOFTWARE TESTING AND RELIABILITY
暂无分享,去创建一个
We develop a risk-driven reliability model and testing process that borrows concepts from classical sequential testing methodology that is used for hardware, with adaptation to software. Both consumer and producer risk are considered, reflecting the fact the consumer (e.g., customer) and producer (e.g., contractor) have different perspectives concerning what they consider to be tolerable risks of software failure. Similarly, there is also a differentiation based on what the consumer and producer consider to be acceptable reliability. Using the consumer-producer framework, we develop a model and process for executing sequential tests, based on software risk and reliability and model risk and reliability prediction accuracy. Test rules are specified for determining at each decision point in testing whether the software and the model prediction accuracy are acceptable. In addition, the test rules serve as stopping criteria for testing. Both empirical and predicted quantities are assessed. The test rules are integrated with several levels of criticality of software (i.e., the higher the criticality, the more stringent the tests). Based on our experience, we provide lessons learned with the objective of improving the model and process for future applications. We start the analysis by developing a model and process template based on the Poisson distribution of failures. This hypothetical example allows us to debug the model and process before it is applied to a real application involving the NASA Space Shuttle flight software.
[1] Jeff Tian,et al. Integrating Time Domain and Input Domain Analyses of Software Reliability Using Tree-Based Models , 1995, IEEE Trans. Software Eng..
[2] James A. Whittaker,et al. What is software testing? And why is it so hard? , 2000 .