|
The identification of problems is driven by the need
to resolve them. It is self evident that the sooner a problem can be detected, the sooner it can be resolved. It
is also self evident that the sooner a problem can be detected or even anticipated, the smaller its impact is likely
to be. It will therefore be easier to resolve in a cost-efficient manner. The goal of problem identification is
to anticipate or uncover problems as early as possible.
Where Problems Are Found
Testing employs a formal process to uncover problems.
The testing process uncovers problems that have been introduced into the project's deliverables. The most significant
deliverables include:
The requirements repository,
which includes deliverables such as specifications and prototypes.
Design specifications or
models.
Code unit specifications
and associated deliverables, such as process action charts.
Code unit code.
Reference material such
as user manuals, help files.
Training material.
Implementation plan.
Problem Prevention
The earlier problem identification occurs, the more effective
it is. Closely associated with problem identification is the effort to prevent problems occurring. Problem prevention
activities include:
Test strategy development.
Analysis of the requirements
validation matrix.
Static testing.
Quality assurance.
Risk analysis.
Test case execution.
Acceptance sign off.
Where Problems Are Found
Testing employs a formal process to uncover problems.
The testing process uncovers problems that have been introduced into the project's deliverables. The most significant
deliverables include:
The requirements repository,
which includes deliverables such as specifications and prototypes.
Design specifications or
models.
Code unit specifications
and associated deliverables, such as process action charts.
Code unit code.
Reference material such
as user manuals, help files.
Training material.
Implementation plan.
Problem Resolution
Design errors must be reported quickly. Serious design
errors can be expensive to redesign and can have an even more expensive impact on the design and delivery schedule
of other aspects of the application. During integration or acceptance test execution, suspected defects or issues
are documented in detail so that all appropriate personnel can contribute to their resolution.
The first task for clients is to identify the application
requirements in a top-down or hierarchical manner. Starting with the requirements specification, the clients should:
List all of the high-level
requirements of the application.
Decompose requirements into
a list of more detailed requirements.
Repeat the process until
each requirement can be validated with one or a small number of test cases. The clients may not wish to test every
requirement, but it is important that each requirement be listed. Those that will not be tested are identified
and justification is provided.
|