Use risk analysis to determine where
testing should be focused.
Since it's rarely possible to test every possible aspect of an application, every possible combination of events, every dependency, or everything that could go wrong, risk analysis is appropriate to most software development projects. This requires judgement skills, common sense, and experience. (If warranted, formal methods are also available.) Considerations can include:
Since it's rarely possible to test every possible aspect of an application, every possible combination of events, every dependency, or everything that could go wrong, risk analysis is appropriate to most software development projects. This requires judgement skills, common sense, and experience. (If warranted, formal methods are also available.) Considerations can include:
Ø Which functionality is most important
to the project's intended purpose?
Ø Which functionality is most visible to
the user?
Ø Which functionality has the largest
safety impact?
Ø Which functionality has the largest
financial impact on users?
Ø Which aspects of the application are
most important to the customer?
Ø Which aspects of the application can
be tested early in the development cycle?
Ø Which parts of the code are most
complex, and thus most subject to errors?
Ø Which parts of the application were
developed in rush or panic mode?
Ø Which aspects of similar/related
previous projects caused problems?
Ø Which aspects of similar/related
previous projects had large maintenance expenses?
Ø Which parts of the requirements and
design are unclear or poorly thought out?
Ø What do the developers think are the
highest-risk aspects of the application?
Ø What kinds of problems would cause the
worst publicity?
Ø What kinds of problems would cause the
most customer service complaints?
Ø What kinds of tests could easily cover
multiple functionalities?
Ø Which tests will have the best
high-risk-coverage to time-required ratio?
No comments:
Post a Comment