A system of strategies for preventing and/or catching software defects.
Review these guideline pages:Bug Sources Checklist summarizes general categories for primary sources of software bugs and provides a checklist for code inspections listing common sources of bugs.A Bug Net can come in either of two forms:Bug Tracking Tasks is a list of suggestions for defect management best practices.
Bug Count Estimation is a difficult but essential planning and tracking task for testing projects.
Bug Prevention: By far the most important productivity goal of software development process quality control is the prevention of bugs. Like mosquito netting around a bed a Bug Net prevents bugs from getting in to the software in the first place. This kind of Bug Net focuses on software development procedures and QA processes. While largely the domain of unit testing prevention bug nets can be applied during any phase of software development. The easiest way to apply a preventive bug net is to read through the specifications, requirements, diagrams, flow charts, what have you, and think about what you are reading and ask questions that make other people think about what has been written. This process, in whatever form it takes, will shake loose bugs every time. If you can't understand what has been written in a specification, or if two requirements appear inconsistent, chances are there have been bugs introduced in the software in the areas concerned.One test design tool for creating Bug Nets in object oriented software state analysis is the graph theoretical concept of a Petri Net.Bug Detection: The role of testing and test design is to detect bugs. The type of Bug Net that catches bugs. This type builds on careful effective test designs that cover the software to a depth that time and priorities permit, beginning with critical business functions. A hunting Bug Net will be successful if and only if the customer never sees the bugs.