Adapting the Workflow to Waterfall or Agile Methodologies

The Code / Test / Release cycle may be applied to either Waterfall or Agile development.

Waterfall Development

In the case of waterfall development, each phase in the diagram is done in order, with all work in each phase being done as a whole. Thus, if there are five new features, then all five features will be coded, unit tested, and reviewed in phase 1. Once that is complete, testers will verify the new features in phase 2. Once that is complete, the the regression tests are ran in phase 3, and then finally the new features are released as a whole.

This table illustrates how a waterfall project with five features may look as work is completed.

Coding Phase |Testing Phase |Regression Phase |Deployment
coding 1
coding 2
coding 3
coding 4
coding 5
testing 1
testing 2
testing 3
testing 4
testing 5
regression testing 1
regression testing 2
regression testing 3
regression testing 4
regression testing 5
deployed 1
deployed 2
deployed 3
deployed 4
deployed 5

Agile Development

When doing agile development, the cycle is applied to each feature individually. Again we use the example of five new features. As soon as the first feature completes its coding phase, it is handed off to the testers, who start processing it in testing phase. Meanwhile the developers begin the coding phase on the next feature.

Note that the testers may not have to wait for all the coding to be completed on a feature before writing the tests for that feature. Since both the code developers and the testers will have access to the requirements, the testers will be able to start creating the tests while the developers are still writing the code. Of course, the coding does still need to be completed prior to the tests being used to validate the feature.

Another interesting aspect of agile development is that is allows us to use Continuous Integration. As each feature is added, and the regression testing phase is completed, we are able to deploy it to production.

Coding Phase |Testing Phase |Regression Phase |Deployment
coding 1
coding 2testing 1
coding 3testing 2regression 1
coding 4testing 3regression 2deployed 1
coding 5testing 4regression 3deployed 2
testing 5regression 4deployed 3
regression 5deployed 4
deployed 5

Keywords to Search for

Copyright © 2018 Adin H. Baber, all rights reserved.