The purpose of this discipline is to:
-
Provide early and frequent feedback that the system satisfies the requirements
-
Objectively measure progress in small increments
-
Identify issues with the solution
-
Provide assurance that changes to the system do not introduce new defects
-
Improve velocity by facilitating the discovery of issues with requirements, designs, and implementations as early
as possible
The Test discipline is iterative and incremental. It applies the strategy of “test early and test often” in order to
retire risks as early in the system’s lifecycle as possible.
Testing occurs in each iteration of the lifecycle, beginning with the earliest builds of the system. In fact, it’s
common for one iteration to have many test cycles, depending on the frequency of new builds.
Testing asks the question: “What does the Solution have to do in order for us to consider a requirement
implemented?” Tests elaborate on the requirements with specific conditions of satisfaction that the Solution must meet.
This discipline challenges the assumptions, risks, and uncertainty inherent in the development of highly technical
artifacts, and addresses those concerns using concrete demonstration and impartial evaluation.
The Test discipline relates to the other disciplines in the following ways:
-
Discipline: Requirements
identifies the intent of the system. Testing elaborates on the requirements with detailed tests that
measure how the system supports the requirements.
-
Discipline: Development
creates incremental builds of the system that the Test discipline evaluates. In each iteration, testing provides
objective feedback. Effective testing enables Developers to focus on implementing new functionality, and improving
the design of the system.
-
Discipline: Project
Management plans the overall project, and the scope of work, for each iteration. The Test discipline provides
an objective measure of progress, which enables adaptive planning.
-
Discipline:
Configuration and Change Management controls changes within the project. The test effort verifies that each
change to the Solution is tested appropriately. Test assets are kept under configuration management.
|