Quality Assurance and Test - what's the difference?
QA is a comprehensive set of activities that address the entire life
cycle. The most effective activities are "upstream" activities.
- Establishing quality attributes in the SRS.
- Ensuring compliance with standards (e.g., document formats).
- Gathering and reporting quality metrics.
- Reviews and inspections.
- Code tracing (aka "desk check")
- Defect tracking
- and lastly, testing.
So testing is just one aspect of a QA plan that focuses on empirical
verification of the software.
Reviews
Work product reviews are the #1 most effective way to improve quality.
Informal Reviews (aka "walkthroughs")
Reviewers examine a document "cold" (without prior
knowledge) and raise potential issues in an impromptu manner.
Formal Reviews (aka "inspections")
There is an explicit process to follow.
Require preparation. The actual work of reviewing
the document takes place during a preparation phase when the reviewer
studies the document using a checklist.
Documentation is required, e.g., log of defects.
A review meeting synthesizes the work of all reviewers.
Exit criteria define when the work is complete.