Incremental Development Process


Prereqs

    Class skeletons all compiled in repository
    Daily build running

Process

Begin unit development in parallel
Unit test in isolation using fakes.
Create integration plan (order of units to be integrated)

FOR n = 1 TO number of units
    When unit n passes unit tests, commit the unit, fakes, unit tests, & script to repository
    Run the build script to compile the unit.
    If the build script fails, do the broken build procedure.
    Run unit tests script (to verify)
    Add integration test and oracle to repository
    Run integration test
    WHILE integration test fails LOOP
        Revert repository to previous state
        Pause integration
        Developer repairs faulty unit
        Resume integration by committing to repository
        Run integration test again
    END LOOP
    Celebrate another unit integrated
END FOR

Run coverage tests


Postcondition

     Repository contains n integrated and tested units.