Working from the design package produced during the Design by Feature process, the Class Owners implement the items necessary for their classes to support the design for the feature(s) in the work package. The code developed is then unit-tested and code-inspected, the order of which is determined by the Chief Programmer. After a successful code inspection, the code is promoted to the build.
- The feature team has successfully completed FDD process 4, Design by Feature, for the selected feature(s). That is, the design package from process 4 has been successfully inspected.
|Implement Classes and Methods||Feature Team||Required|
|The Class Owners implement the items
necessary to satisfy the requirements on their classes for the
feature(s) in the work package. This includes the development of
any unit-testing code needed.
|Conduct a Code Inspection||Feature Team||Optional|
The feature team conducts a code inspection, either before or after the unit test task. The Chief Programmer decides whether to inspect within the feature team or with other project team members. The decision to inspect before or after unit test is also that of the Chief Programmer.
|Unit Test||Feature Team||Optional|
|Each Class Owner tests their code to
ensure that all requirements on their classes for the feature(s) in
the work package are satisfied. The Chief Programmer determines
what, if any, feature team-level unit testing is required - in
other words, what testing across the classes developed for the
feature(s) is required
|Promote to the Build||Chief Programmer, Feature Team||Required|
|Classes can be promoted to the build
only after a successful code inspection and unit test. The Chief
Programmer is the integration point for the entire feature(s) and
responsible for tracking the promotion of the classes involved
(either by promoting them personally or through feedback from the
developers in the feature team).
|Internal and External Assessment||Modeling Team, Business||Required|
|A successful code inspection plus the
successful completion of unit test is the verification of the
output of this process. The code inspection and unit test tasks are
To exit the process, the feature team must complete the development of one or more whole features (client-valued functions). To do this, it must have promoted to the build the set of new and enhanced classes that support those features, and those classes must have been successfully code-inspected and unit-tested.
This version of FDD Process #1 is taken from the book, Palmer, Felsing, 'A Practical Guide to Feature-Driven Development' , Prentice Hall, 2002.