Resource allocation during tests for optimally reliable software
In this research, we develop a framework for performing resource allocation (budget and time) during the test process of a software system. The framework allows the usage of different reliability models. The assumed test process includes unit, integration and system tests. The process of testing each software component (i.e., the code associated with each test) is viewed as a sequence of test and repair periods. Each test and repair period consists of a test time interval, and a repair time interval. We assume that a software system has been specified, designed and coded, and that a test plan for testing the system is available. The test plan includes a hierarchy of planned tests, and possibly constraints on the number of test and repair periods for each planned test. In addition reliability requirements may be given for some parts of the software system. The system may include a number of modules and programs. A model has been developed with the goal of finding the maximum reliability of the software system while satisfying the following constraints: total test cost cannot exceeds a given budget and requirements regarding the number of test and repair periods, and minimum reliability of components must be satisfied. The model has been solved for a variety of different constraints and parameter values using the Solver Add-in of Microsoft Excel.
resource allocation optimal reliability reliable software testing software