The Economics of Software Quality Assurance: A Simulation-Based Case Study
Software quality assurance (QA) is a critical function in the successful development and maintenance of software systems. Because the QA activity adds significantly to the cost of developing software, the cost-effectiveness of QA has been a pressing concern to software quality managers. As of yet, though, this concern has not been adequately addressed in the literature. The objective of this article is to investigate the tradeoffs between the economic benefits and costs of QA. A comprehensive system dynamics model of the software development process was developed that serves as an experimentation vehicle for QA policy. One such experiment, involving a NASA software project, is discussed in detail. In this experiment, the level of QA expenditure was found to have a significant impact on the project’s total cost. The model was also used to identify the optimal QA expenditure level and its distribution throughout the project’s lifecycle.
|Author||Tarek K. Abdel-Hamid|
|Keywords||Software quality assurance, software project management, software cost, systems dynamics|