XYZ Software Corporation: Economics And Resources
Before staring analysis of the process of software testing, it is require understanding the economics related to the software testing. The software economics is related with the study of resources allocated to the software project. First we need to look into the definition of economics: Economics is the study of the methods used for selecting resources available. These resources may include land, building, equipment, tools and methods for using these all resources for getting their optimal use. By optimal use of the resource we can find good quality of service or product at lower cost. The optimal use of the resources will always gives the benefits to the company. It is the responsibility of software manager or project manager to allocate the resources in a proper way.
Here we are studying the case of XYZ Software Corporation, which is having a formal testing procedure for their software development process for last few years. Now XYZ Software Corporation wants to analyze its process and also to evaluate the economics related with the process. In simple terms the company wants to modify the process so that the cost associated with the project can be minimized. The process shown in the below flow chart is very complex and need to be simplified. The process is indicating the complex flow of information and the testing procedure. Due to its complexity the process is not good from economy point of view. The existing process is costlier with respect to the process size, personnel involved in the process, environment and the quality of the process.
The existing process involve a lot of decision making steps, which increases the time duration of the process and the also the size of the process. As the size of the process increases the personnel involve in the project is also increases and it makes direct impact on the cost of the process. Simultaneously it makes an impact on the working environment of process. As the number of personnel increases the working environment of the company get worsen. The quality is the main parameter which is gets affected by the flow of the process. If the process if smooth and clear with a short path, it can produce good quality product or services.
Figure1: Existing Flow of Process
Figure 2: Modified Flow of Process
The modified process is self explanatory. it indicates the smooth flow of the process. First of all we incorporated the problem identification in the process flow. It is the most important step of a process flow because before designing the process we need to understand the requirement or the output of the process. The second major change in the process is the validation of the test case. In the modified process the validation of the test case is done after building the test case. This change is done because in the existing process if the test validation fails, then the process again started with the building of test case followed by test case preparation, performing test and getting the result of the test and again validation of the test case. To avoid repetition of the various steps, we will first validate the test case before going to the next step. After validation of the test case completed we will do fixing of our source code. This step (modified Process) also minimizes the reoccurrence of perform testing (in Existing Process). As we have fixed and validated our source code, we need to perform the actual testing. Before performing the actual testing it is very clear that all the steps before the actual testing are validated and producing the required output of the process. In the final step of actual testing there are very little chances of the testing failure. If somehow the actual testing fails than the testing engineers needs to re perform the actual testing of the software. After success of actual testing, the testing engineer should make a test report amp. submit it to his reporting project manager. The modified flow of process is involving less complicated structure of the process and it makes easy to understand the process.