The Role of Testing in a Project - What Should It Include?

The Role of Testing in a Project - What Should It Include?
Page content

The Issue

During the test analysis phase the tester is repeating what the functional designer already did, but in a different way. Since test scripts are based on the processes for which the new product is designed, the test analyst is in fact doing process analysis. A good test analyst will anyway, he/she won’t just duplicate what is in the functional design and will think for him/herself. Now this good test analyst finds inconsistencies and other design related issues while the product is already being built by the developers. Of course he/she reports these issues but it is too late to change the design dramatically, so minor alterations are done to make it acceptable. Bandages. Later on it appears that the issues that were found earlier had indirect impact on other parts of the product or process. Some more bandages. This can go on and on.

Usually at the beginning of the project a test manager is asked to create a Master Test Plan. This is done at a time when the specifications are not final and the test manager has no real idea how big it all will be and how the testing should be organized. Risk analysis is done on a superficial level, since not all the testing of related risks can be identified at this early stage. In the mean time the test manager is wasting a lot of time of the business managers who know even less about the upcoming changes then the test manager, all for the sake of business commitment. That is one of the reasons why these test plans are often superficial. This is also a reason why there are often so many versions of the MTP. The reality is usually a lot different than what was written in the initial versions of the MTP.

Cost of Changes

The Solution

As a rule of thumb the project manager could take into account that testing takes one third of the total project time. This can change a little bit later on, but a test manager cannot make a better estimate at the beginning of the project. At that stage of the project we don’t really need a test manager. After the requirements phase, the test manager can make the MTP in which a more reliable test strategy and planning can be made.

What we do need in the beginning of the project is a good test analyst, who is involved in the requirements phase and analysis of the processes that are involved. He/she can create the process flow diagrams that can be used later on for the definition of test scripts. The process flow diagrams can be used to get the processes clear to everyone. These are tools to discuss the functionality with all parties involved. The test manager can make a better test plan. This approach calls for test analysts who are good process analysts. The test analyst will ask the functional designer questions like “what do you mean?” and after creation of process flow diagrams “is this what you mean?” What happens here is that the product is tested in the design phase. This is very much in the spirit of professor Barry Boehms’ views. The sooner you find the issues the more money you will save. Exponentially.

This post is part of the series: Quality Management

In the articles that you will find in this series quality management and testing is described. Since quality management and testing are a vital part of project management they deserve their own group.

  1. Organization of UML Diagrams and Testing
  2. Chain Testing is Risky Business
  3. Should We Redefine the Role of Testing?
  4. Obtaining Business Commitment for Testing