Applying a system dynamics approach for decision-making in software testing projects. - Wang Li; Chih-Chiang Fang (PLoS ONE)
Enhancing software quality remains a main objective for software developers and engineers, with a specific emphasis on improving software stability to increase user satisfaction. Developers must balance rigorous software testing with tight schedules and budgets. This often forces them to choose between quality and cost. Traditional approaches rely on software reliability growth models but are often too complex and impractical for testing complex software environments. Addressing this issue, our study introduces a system dynamics approach to develop a more adaptable software reliability growth model. This model is specifically designed to handle the complexities of modern software testing scenarios. By utilizing a system dynamics model and a set of defined rules, we can effectively simulate and illustrate the impacts of testing and debugging processes on the growth of software reliability. This method simplifies the complex mathematical derivations that are commonly associated with traditional models, making it more accessible for real-world applications. The key innovation of our approach lies in its ability to create a dynamic and interactive model that captures the various elements influencing software reliability. This includes factors such as resource allocation, testing efficiency, error detection rates, and the feedback loops among these elements. By simulating different scenarios, software developers and project managers can gain deeper insights into the impact of their decisions on software quality and testing efficiency. This can provide valuable insights for decision-making and strategy formulation in software development and quality assurance.