Académique Documents
Professionnel Documents
Culture Documents
As discussed above, the major drawbacks of the waterfall model are due to the fact that the entire
product is developed and delivered to the client in one package. This results in delayed feedback
from the client. Because of the long elapsed time, a huge new investment of time and money
may be required to fix any errors of omission or commission or to accommodate any new
requirements cropping up during this period. This may render the product as unusable.
Incremental model may be used to overcome these issues.
In a more risky version, once the user requirements have been elicited, the specifications of the
first build are drawn up. When this has been completed, the specification team turns to the
Build 1
Specification
Implementation, integration
Deliver to client
Design
Build 2
Specification
Design
Implementation, integration
Deliver to client
Build 3
Specification
Design
Implementation, integration
Deliver to client
Build n
Specification
Specification team
Design
Implementation, integration
Deliver to client
Design team
specification of the second build while the design team designs the first build. Thus the various
builds are constructed in parallel, with each team making use of the information gained in the all
the previous builds.
This approach incurs the risk that the resulting build will not fit together and hence requires
careful monitoring.
Spiral Model
This model was developed by Barry Boehm. The main idea of this model is to avert risk as there
is always an element of risk in development of software. For example, key personnel may resign
at a critical juncture, the manufacturer of the software development may go bankrupt, etc.
Rapid Prototype
Specification
Design
Implementation
Verify
Risk Analysis
In its simplified form, the Spiral Model is Waterfall model plus risk analysis. In this case each
stage is preceded by identification of alternatives and risk analysis and is then followed by
evaluation and planning for the next phase. If risks cannot be resolved,
project is immediately terminated. This is depicted in the following diagram.
As can be seen, a Spiral Model has two dimensions. Radial dimension represents the cumulative
cost to date and the angular dimension represents the progress through the spiral. Each phase
begins by determining objectives of that phase and at each phase a new process model may be
followed.
A full version of the Spiral Model is shown below:
The main strength of the Spiral Model comes from the fact that it is very sensitive to the risk.
Because of the spiral nature of development it is easy to judge how much to test and there is no
distinction between development and maintenance. It however can only be used for large-scale
software development and that too for internal (in-house) software only.