The purpose of the Quality Assurance Team in software development
by Gene Michael Stover
created Saturday, 2009-11-14 T 09:02:03Z
updated Tuesday, 2013-01-29 T 14:55:13Z
I sometimes hear that the purpose of the Quality Assurance Team is
to break things. That's wrong.
I often hear that the purpose of the Quality Assurance
Team is to ensure that only high-quality product reaches the
customer. That's effectively correct, but it's such a
soulless answer.
So here's my analogy to explain the purpose of the Quality
Assurance Team on a software development project.
My analogy
- An application exists in a space described by its features &
bugs. The space is multi-dimensional & too complex for a human to
imagine, but for the moment, imagine a map of a landscape with hills,
grass, mountains, forests... standard map stuff.
- The application exists on that map.
- By providing us with Requirements, the users specify a location on
that map. That's where the users want the application to be.
- By creating & modifying code, the programmers have the power
to move the application around the map.
- By measuring the application, the QA team determines the location of
the application on the map.
- By taking all this into consideration & thinking ahead, the
project manager tells the programmers which direction to move the
application & tells the users when the application will
arrive.
Details, details
- Users rarely give us requirements directly. So where I say that
users give us requirements, we really get those requirements from
their representatives: UI designers, architectures, visionaries.
- Where I say "measuring the application", we usually say
"testing".
cybertiggyr.com