Context: There is a pervasive feeling that somehow software assurance is important. For example, national space agencies, such as the National Aeronautics and Space Administration (NASA) and the Japan Aerospace Exploration Agency (JAXA), require assurance for their critical software systems. Their assurance effort goes beyond testing, and includes activities such as process compliance checks, artifact audits, and traceability validation. These activities can be costly and their benefits, particularly in managing risk, are poorly understood. This inevitably leads to tough questions concerning value such as "Is assurance worth doing?" and "How much assurance do we actually need?"
Goal: For many years the software assurance community has been struggling with how to rationalize investing in software assurance. Numerous value models have been suggested, but these have not been able to explicitly connect assurance activities to their expected benefits, making them difficult to use for value assessment. As a consequence, assurance managers are ill equipped to plan and justify their budgets, frequently finding that assurance is first on the chopping block when cuts are made. We discuss some common value propositions and how why they are not operationally useful within our assurance practice.
Method: From our ongoing empirical study of assurance practice at NASA and JAXA, we are led to a fundamental assurance value proposition that implies an operational and justifiable proposition of assurance value. We depart from contemporary views that focus on defect-centric factors such as defect avoidance or early defect mitigation. Rather, we have observed that assurance value stems from enabling more confident quality-critical decision-making.
Results: From this new viewpoint value can be tangibly measured as a reduction in the risk of making a bad decision due to uncertainty in quality factors. This has some surprising and consequential implications. For example, from this viewpoint, assurance value does not depend on the actual number of defects found; instead it depends on the degree of coverage an assurance activity provides, regardless if defects are found.
Conclusions: By exploring what we have learned about assurance value we better understand and from an industry standpoint it is an important issue to address.
[1]
BachJames.
Good Enough Quality
,
1997
.
[2]
J. Bach.
Good Enough Quality: Beyond the Buzzword
,
1997,
Computer.
[3]
Ware Myers.
Can Software for the Strategic Defense Initiative ever be Error-Free?
,
1986,
Computer.
[4]
Juliane Jung.
Software Assessments Benchmarks And Best Practices
,
2016
.
[5]
J. Berger.
Statistical Decision Theory and Bayesian Analysis
,
1988
.
[6]
Daniel Port,et al.
The Value of Certifying Software Release Readiness: An Exploratory Study of Certification for a Critical System at JPL
,
2013,
2013 ACM / IEEE International Symposium on Empirical Software Engineering and Measurement.
[7]
Capers Jones,et al.
Software Assessments, Benchmarks, and Best Practices
,
2000
.
[8]
C. Hooker,et al.
Foundations of Probability Theory, Statistical Inference, and Statistical Theories of Science
,
1976
.
[9]
Eric R. Ziegel,et al.
Practical Nonparametric and Semiparametric Bayesian Statistics
,
1998,
Technometrics.
[10]
John C. Munson,et al.
Building high‐quality software fault predictors
,
2006,
Softw. Pract. Exp..
[11]
Stephen H. Kan,et al.
Metrics and Models in Software Quality Engineering
,
1994,
SOEN.
[12]
Barry Boehm,et al.
The Value Proposition for Assurance of JPL Systems
,
2014
.
[13]
Bradley P. Carlin,et al.
BAYES AND EMPIRICAL BAYES METHODS FOR DATA ANALYSIS
,
1996,
Stat. Comput..
[14]
R. Rosenkrantz.
Confidence Intervals vs Bayesian Intervals (1976)
,
1989
.
[15]
Daniel Port,et al.
A Study on the Perceived Value of Software Quality Assurance at JPL
,
2011,
2011 44th Hawaii International Conference on System Sciences.
[16]
Antonio Drommi,et al.
Models for Assessing the Cost and Value of Software Assurance
,
2014
.