The Seven Habits of Highly Effective Testing Organizations

A Catalog of Today's Best Practices

be visible to all stakeholders in the project. As the development progresses, the actual activities should be compared to the plan. This comparison should also be visible to all concerned. Variations between planned and actual activities should be investigated. Differences may signal a misunderstanding about the size or scope of the project, a lack of skills or resources, or that the plan was faulty in some way.

6. Visible Defect Tracking and Reporting
Effective defect tracking requires the creation and maintenance of a database describing key aspects of each defect. Each recorded defect should include a unique tracking number, a description, the cause, who detected it, how it ws detected, the cost of finding it, the estimated cost to the organization if it had been delivered to the customer, and the person assigned to repair it. Allow  all stakeholders to examine this data. Look for defect patterns or trends that indicate that the defects are not merely random but are the result of a systemic problem within the development process.

7. Change Management
Change management is an umbrella concept that focuses on three basic areas:

  • Requirements management-Requirements are reviewed to determine whether
    they are feasible and appropriate, clearly stated, consistent with each other and with the system as a whole, and testable.
  • Release management-Rather than develop each change to a system ndividually, a number of changes are collected together into a release. When the release is defined, all the changes are designed, coded, and tested together. When complete, the release is moved into production. Release management establishes a common expectation regarding the length of time required to implement a change. It provides a mechanism to evaluate and integrate changes proposed by multiple sources within the organization, and it spreads the testing overhead over a larger base yielding a more efficient process.
  • Configuration management-Defines baselines, controls changes, and reports the status of application software configurations and the hardware they run on. A library of current and past versions is maintained.

Summing Up
Take stock of your organization. Does it have these seven habits? If not, perhaps this will help focus your efforts. In my experience, these seven habits are the hallmark of successful testing.

About the author

AgileConnection is a TechWell community.

Through conferences, training, consulting, and online resources, TechWell helps you develop and deliver great software every day.