Saturday, 15 October 2011

Waterfall model

The waterfall model derives its name due to the cascading effect from one phase to the other as is illustrated in Figure. In this model each phase well defined starting and ending point, with identifiable deliveries to the next phase.
Note that this model is sometimes referred to as the linear sequential model or the software life cycle.

The model consist of 5 distinct stages, namely:

1. Requirements phase
2. Design phase
3. Coding phase
4.Testing phase
5. Maintenance phase

1.Requirements Phase: The first step is to identify the need for a new system.This includes determining whether a business problem or opportunity exists. You can ask the question "What do the users want?". The requirements should be recorded in a document.  
2.Design Phase: After the requirements have been determined, the necessary specifications for Hardware, Software, Data resources and Information products that will satisfy the functional requirements of the proposed system are determined. The Design will serve as a blueprint for the system and helps detect errors before they are built into the final system.
3.Coding Phase: It is the phase of SDLC where the design is translated into machine readable language. Coding is the act of creating the system.
4. Testing Phase: The system must be tested to evaluate its actual functionality in relation to expected or intended functionality. Testing is done to ensure the created programs work well in different environments with reliability.
5.Maintenance Phase: After the system is properly implemented, Developer's role in the system does not end there. Now, Developers will have to provide solutions to problems found by the end user.

Advantages of Waterfall Model
a) Testing is inherent to every phase of the waterfall model
b) It is an enforced disciplined approach
c) It is documentation driven, that is, documentation is produced at every stage
Disadvantages of Waterfall Model
The waterfall model is the oldest and the most widely used paradigm. However, many projects rarely follow its sequential flow. This is due to the inherent problems associated with its rigid format.
Namely:
a) It only incorporates iteration indirectly, thus changes may cause considerable confusion as the project progresses.
b) As The client usually only has a vague idea of exactly what is required from the software product, this WM has difficulty accommodating the natural uncertainty that exists at the beginning of the project.
c) The customer only sees a working version of the product after it has been coded. This may result in disaster any undetected problems are precipitated to this stage.

No comments:

Post a Comment