Quality Assurance Planning – Introduction


“…planning is everything.”

“Plans are nothing; planning is everything.” Dwight D. Eisenhower

These words apply to everything that is important; both personally and in business. Software testing is no exception. If you don’t formulate your plan then you have nothing to execute, track and report against. Not only do you need to plan, but your plan must be flexible, and this is where the excitement starts. While planing a test cycle, keep in the back of your mind that, “…anything that can go wrong will go wrong.”  This pessimistic view, on the other hand, is tempered by the reality of the delivery date. Given these extremes a natural balance occurs between expecting the worse and getting the cycle completed on time.

As you plan, also keep in mind that software testing is a dynamic iterative process. It is more like preparing a meal than building a bridge. There are four basic elements to software testing. These are the test environment, levels, approach and type. The quality assurance manager is the master chef. His or her knowledge of these elements and how to combine them into an effective plan should result in a stable product which is useful to the enduser.

The test environments are like the cooking pot. It answers the question, where will I cook this meal, development, QA, staging or production? The test level is like the menu. What will you “cook up” this time; a unit, integration, system or acceptance test? The test approach is like the ingredients – vegetables, tofu, sprouts? Will you add a white box, grey box or black box test to the menu? Finally the numerous types of tests are like the spices to your delicious meal. Should you add a pinch of installation testing, dash of compatibility testing, sprinkle of smoke or sanity testing? How about a very large dose of regression testing? Of course one may not forget the fresh acceptance test! If the family really likes it spicy don’t forget to carefully add both performance and destructive tests. For details on what these and other test related subjects mean, read the Wikipedia article on software testing.

Finally, it is important to have a clear understanding of the word “success” as it applies to software testing. No application is released to productive use without bugs. Success is not measured by the amount of issues which are discovered, but how these issues impact the business. You may have a handful of minor issues which do not disrupt the work of the end user on one hand and on the other hand one major issue which brings the system down. If the end user is unable to work, the test cycle must be considered a failure requiring close scrutiny and most likely the creation and follow-up of a corrective action plan. The success of a release must always be seen through the eyes of the end user.

Click here for Part One – Unit Testing

About Larry

Larry Lawhead is a passionate Agilest with a love for coaching, mentoring and organizational transformation. Huge fan of the Lean Enterprise, LeSS, Theory of Constraints, systems thinking and of course the Toyota Production System. Avid learner. Deeply influenced by the works of Jeff Sutherland, Eliyahu Goldratt, James Womack, Craig Larman, Faith Fuller, Marita Fridjhobn and countless others. He is likewise a member of the team that brings the Agile Open to the Southern California. Above all else, he loves coaching teams and individuals. He believes creating a safe and empowered place for individuals and self-organized teams to develop brilliant solutions, shared vision, demonstrate compassion and desire to continuously improve brings life’s greatest rewards. Watching clients unfold into a greater sense wholeness, purpose and direction is the miracle coaching enables. This satisfaction leads to continuous self-improvement, curiosity and personal growth that Larry passionately embraces.
This entry was posted in Quality & Value, Quality Assurance Planning and tagged , , , . Bookmark the permalink.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.