Take the 2-minute tour ×
Software Quality Assurance & Testing Stack Exchange is a question and answer site for software quality control experts, automation engineers, and software testers. It's 100% free, no registration required.

Most of my tester friends say that one important part of quality assurance position is "prevention". I´ve read a lot in the university about costs of quality and cost of poor quality and prevention but in my daily work I´ve never seen this activity performed by QA teams. I mean, there are a lot of tools and practices for development which help us to avoid some kind of problems as code reviews, static and dynamic code analysis, unit testing, and others but which are the most important "prevention" activities that QA guys should execute?

share|improve this question
add comment

3 Answers

up vote 6 down vote accepted

"More than the act of testing, the act of designing tests is one of the best bug preventers known. The thinking that must be done to create a useful test can discover and eliminate bugs before they are coded..." - Boris Beizer, Software Testing Techniques 2nd ed.

D. Gelperin and B. Hetzel also first suggested the idea of "Test, then code" in 1987.

The concept of TDD is the reintroduction of these basic tenets that are intended to prevent bugs from getting into code. I would say that ATDD is a bug preventative approach which some testers participate in.

In my team, we also perform code reviews prior to check-ins which are one bug prevention activity.

Some other things that testers (and others on the team) can do to help prevent bugs might include:

  • Specification reviews
  • Dev design reviews
  • Scenario planning
  • Design/architectural modeling
share|improve this answer
    
Regarding code reviews those can be performed also by testers. –  dzieciou Nov 14 '12 at 5:53
    
@dzieciou, yes absolutely which is why I stated that we do code reviews prior to check-ins. Perhaps it is unclear that "we" refers to my test team :-) –  Bj Rollison Nov 14 '12 at 16:16
add comment

Gregory Pope lists a number of prevention techniques in "No Silver Bullet? Silver Buckshot May Work" (and his key note presentation). Some of them Phil already has mentioned. Other that testers and test managers can actively work on would be:

  • right mix of testers to developers, e.g., QA manager may hire more testers
  • introducing configuration management not only for source code, but also for whole system setup
  • introducing requirements tracking tool

Some techniques might be easier in Agile teams, where testers are not in different silos than developers.

There are also detection techniques that do not prevent bugs but could help detect them earlier. For instance, testers can write integration tests that can be included in continuous integration along with developers' unit tests.

share|improve this answer
add comment

Some prevention activities that our QAers provide are

  • Requirements reviews
  • Spec/Design reviews
  • Estimation assessments
  • Providing test data early enough so that it can be used during Unit Testing

We'd really like to do more. But in our shop, the schedules and workload dictate otherwise.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.