Steve Mushero line
Technology Advisor for Startups and Investors

About Steve





Developing Software -> Quality Assurance
Building a good Quality Assurance group is critical to the success of the development process.  While some think of QA as just the testing department, proper use of Quality Assurance will allow it to live up to its name and help build in and assure quality throughout the product line.

Much of QA's success (like anything else) can be tied to attitude.  Technical management can either regard QA's role in an us-vs-them contest or as a partner in building product.  Needless to say, the latter route is far more effective, though different than what is observed in most organizations.

A QA lead should be hired fairly early in the development process, soon after developers come on board.  This person should have senior hands-on experience in test design, code reviews, regression tests, etc., as they will set the QA tone for much of the development process. 

Participate in Product Design - One of the first QA tasks is to get involved with the product design as early as possible.  This accomplishes several things:  it sets the tone with QA as a development partner, it infuses high quality practices from the beginning, and it helps design for quality and testability.

Build QA Infrastructure - Another early task is build out the QA system infrastructure, as there will be little time for this later.  These systems include version control, bug tracking and especially a daily automated build and regression framework, on appropriate platforms, including ability to email test reports.  The ability to automatically build and test the product quickly will become crucial to late stage development, where subtle bugs can easily introduced.

Test Plans - Planning the tests should begin as soon as any product details are available, as writing good test plans and their subsequent tests is very time consuming.  Good test planning is fairly difficult and the subject of many other books and websites, but the big lesson is to be thorough and especially to include extra things live coverage analysis.


Also See

"Steve provided by far the best requirements that we've ever received from a client... our COO and software team passes along their thanks"

- Engineering Team Manager