The three development models to consider for this project are the Waterfall, Spiral and Agile models. Each have a number of advantages and disadvantages, so factors such as the scale of the project and timeframe will be considered when choosing.

Option 1. Waterfall development model

The waterfall development model requires each phase of production to be identified. Generally, each phase is a dependency of the next stage (similar to the function of a Gantt chart). The phases used in the waterfall model are:

The waterfall model is most effective when used for simple, short projects with well-understood technology and clear requirements. The waterfall model is not suitable for large-scale complex projects or any projects with changing requirements.

Option 2. Spiral development model

The spiral development model is similar to the waterfall development model in that it has sequential phases, however it emphasises risk analysis by allowing incremental releases and iterative refinement/continuous development. In the spiral model, there are four phases that are repeatedly passed through:

The spiral model is useful for projects that involve a high amount of risk or a smaller team working on the project as it allows for an iterative development process that aims to minimise risk. A risk that is run when using the spiral development model is the potential for the spiral to continue indefinitely.

Option 3. Agile development model

The agile development model is a feature-by-feature iterative development model. It involves tasks divided into a number of different “time boxes” responsible for the development of specific features required for a release. The below diagram represents the agile development flow.