Home Services Case Studies Programming Products Contact

Iterative methods

The waterfall method is still probably the dominant design process. However because of its limitations it is increasingly replaced by iterative methods, particularly for projects where the requirements are not well defined.

The approach aims to get part of the code up and running as quickly as possible, to bring discovery of problems forward in the development cycle.

These methods use a series of "mini-waterfalls", defining a few requirements (the most important) first, taking them through analysis, design and build to get an early version of the product, with limited functionality, related to the most important requirements. Feedback from this can then be used to refine the requirements, spot problems etc. before more work is done.

The process is then repeated for further requirements to construct a product with a step up in functionality. Again further feedback can be applied to the requirements.

The process is repeated more times, until eventually all requirements have been implemented and the product is complete. It is this iteration that gives these processes their name.

The growth in popularity of iterative methods is closely tied to the growth of Object Orientated Analysis and Design. This is the encapsulation (combination) of methods and properties in software objects that allows a part of a system to be built before the remaining, final code is clearly defined.