9.3. What Else Fits? Adding Other Functions to Test

In part because testing is often a misunderstood function, you might be invited to take charge of all sorts of additional duties that are more or less peripheral to testing. Test managers, in their copious free time, sometimes discharge other duties such as:

  • Configuration management and release management.

  • Customer support.

  • Operations such as system administration and disaster recovery.

  • Quality management—for example, code reviews, inspections, and process.

  • Management of the development lab.

  • Creation of training data and procedures for operations staff.

The list of duties that might be attached to the test function is probably endless. However, does placing these functions in the test organization make sense?

In my opinion, the answer is usually—but not always—"no."[] Some of the specific situations in which I recommend against such arrangements include the following:

[] A specific case that seems to make sense is having a senior test engineer or the test manager serve as the project's "risk officer." Steve McConnell makes this suggestion in Chapter 7 of his Software Project Survival Guide.

The test team shares some responsibility for product development, or is completely integrated into the development team.

There are well-documented reasons why developers can't test their own code, in terms of subjectivity and bringing the same blindspots to the testing as to the creating; in addition, they don't have the test expertise to test ...

Get Managing the Testing Process: Practical Tools and Techniques for Managing Hardware and Software Testing now with the O’Reilly learning platform.

O’Reilly members experience live online training, plus books, videos, and digital content from nearly 200 publishers.