|
|
|
Q: What are the QA engineers' responsibilities?
A: Let's say, an engineer is hired in QA role by a small software company, and there is no QA team.
Should he take responsibility for setting up a QA infrastructure/process, and the testing and the quality
of the entire product?
No, he shouldn't, because taking this responsibility is a classic trap that QA people get caught in. Why?
Because we QA engineers cannot assure quality. And because QA departments cannot create quality.
What we CAN do is detect a lack of quality, and prevent low-quality products from going out the door.
What is the solution? We should drop the QA label, and tell the developers that they're responsible
for the quality of their own work. The problem is, sometimes, as soon as the developers learn that there
is a test department, they will slack off on their own testing.
Therefore we should help them only with quality assessments.
Q: What metrics can be used in software development?
A: Metrics refer to statistical process control. The idea of statistical process control is a great one,
but it has only a limited use in software development.
On the negative side, statistical process control works only with processes
that are sufficiently well defined AND unvaried, so that they can be analyzed in terms of statistics.
The problem is, most software development projects are NOT sufficiently well defined
and NOT sufficiently unvaried.
On the positive side, one CAN use statistics. Statistics are excellent tools that project managers can use.
Statistics can be used, for example, to determine when to stop testing, i.e. test cases completed with
certain percentage passed, or when bug rate falls below a certain level.
But, if these are project management tools, then why should we label them quality assurance tools?
[Continued on next page...]
|