The Importance of Documentation
Documentation is the bread and butter of a QA engineer. We depend on it, and if it doesn't exist already, we may have to make it ourselves.
Specifications
Would you be surprised to hear that I've talked to more than one company who claimed they didn't have a specification for their product? Ridiculous, right? How did they know what to build?
Of course they *did* have a specification, kind of, although they didn't realize it. It wasn't formalized, and this led to real problems. Companies have a variety of ways to write specifications, even if they aren't called that. They may have Marketing Requirements Documents, Product Requirements Documents, End User Safety documents, kickoff meetings, or other processes that are used to decide how the product needs to work. Often the MRD and/or PRD are handed to an engineering team, who then writes a "technical spec" based on their mechanical and electrical capabilities.
Or maybe everyone just all sat around in a bar after work and verbally agreed on the product!
It is one of the QA Engineer's jobs to read all those documents, attend all those meetings, or otherwise extract the ideas out of the stakeholders, and distill them into testable requirements. Is the product going to be used outdoors? What tests will we need? It will need a display that is visible in full sunlight. It will need some amount of rain or splash resistance. It will need to have some resistance to being accidentally dropped.
A few more examples: Will the product be powered by "mains" electricity, from a plug in the wall? It will need a fuse or circuit breaker. If the chassis is metal, it needs to be connected to earth ground. If there are common or predictable failure modes, they should never result in the user contacting the full voltage.
All of this information needs to find its way into a document the QA engineer can use to test the product during development, before MP (mass production) and periodically during production. The tests should be labeled or linked back to the documents or meetings that generated them. Use cases are often good additions to make sure later changes to the test still meet the "spirit" of the original goal.
And what do we do with this document once we've assembled it? Well we keep it handy. It should be stored in document control, or version control, or on a wiki, or in a well-organized binder or file cabinet. You'll want to refer back to it if a test needs to change for some reason, or if requirements are added (or removed). Customers may want copies of it, or documents that can be easily derived from it.
If you have a good spec, you can literally change the entire product design and engineering behind the product, but keep on shipping a product that meets your (internal or external) customers' needs!
Comments
Post a Comment