大象传媒

Development methodologiesWhen to iterate

The waterfall method, rapid application, and more recently agile methods are all popular methodologies in software development. This guide explores their structures, advantages and limitations.

Part of Computing ScienceSoftware design and development

When to iterate

Iteration between stages

Example 1

  1. A programmer begins to source code.
  2. They find that the design algorithm is not correct.
  3. They could revisit the design stage and fix the algorithm before moving forward with implementation.

Example 2

  1. During testing a programmer realises that there are problems with the source code.
  2. They revisit implementation and rectify the errors
  3. They continue onto testing again

Every project is different. Programmers do not always have to revisit the same stages or go back to the same point in the process.

Iteration within stages

Example

The traditional analysis stage would have involved an interview between a systems analyst and the client. The interview should give the analyst an idea of what the client requires from the new software.

However, it would often be necessary to repeat the interview process several times. For example, the analyst may need clarification on:

  • the proposed budget
  • requirements of the new software based on interviews with users of the current system

Key points

  • Traditional software development methodologies follow the 鈥榃aterfall鈥 method.
  • When using this approach, programmers move from stage to stage in sequence unless problems are encountered.
  • If problems are encountered at one stage, then it may be necessary to revisit earlier stages of the waterfall cycle.
  • If problems are encountered within a stage, it may be necessary to repeat elements of that stage before moving on.