How to adopt this practice
The following is a list of points that you need to consider when you adopt
this practice.
Process scope:
- Test coverage: component, feature, and subsystem, or all three
- Focus on the main elements: tasks, artifacts, guidelines
Team impact:
- Team composition: Testers are part of the team, not external resources
that are involved only at specific points.
- Roles: This practice also needs to be adopted by developers to make
sure that they provide tested components.
- Skills: Testers need to adopt a more technical skill set, and developers
can also fill the Tester role.
Development approach:
- Set a goal of stable builds that can be tested from end-to-end.
- Provide smaller increments of functionality.
- Institute "walkthroughs" to determine whether a micro-increment
is correct.
- Build and test frequently throughout an iteration.
- Make passing automated tests the team's definition of "finished" for a requirement.
Reach a pattern where the team continuously develops micro-increments, tests
them, and then regression tests the product throughout the day. Obviously, this
involves a high degree of regression test automation. Achieving this level of
automation requires the concerted effort of the whole team, across all the levels
of testing, with automated unit, integration, system, and acceptance tests. |