Categories

A sample text widget

Etiam pulvinar consectetur dolor sed malesuada. Ut convallis euismod dolor nec pretium. Nunc ut tristique massa.

Nam sodales mi vitae dolor ullamcorper et vulputate enim accumsan. Morbi orci magna, tincidunt vitae molestie nec, molestie at mi. Nulla nulla lorem, suscipit in posuere in, interdum non magna.

Explain the waterfall model of software development. What are its advantages and disadvantages?

There are a number of models that have been developed for the software development like the waterfall model, spiral model, agile model and so on. The discussion in this article is limited to the waterfall model of software development along with its advantages and disadvantages. You must have seen a waterfall and how the water flows in it ! In a similar way to the water fall, this software development model progresses and so has been named as the water fall model of software development. Like a waterfall, it follows some sequence of flow and therefore is considered to be a sequential design process which is generally used in the software development life cycle or the SDLC which require the flow of the development to be downwards like in a water fall – progressive and steady through different phases like those mentioned below:
1. Conception
2. Initiation
3. Analysis
4. Design
5. Construction
6. Testing
7. Production
8. Implementation
9. Maintenance etc.
This model has a flow similar to that of a real water fall. Now below we list out all the phases of the software development process that implements a water fall model:
1. Requirements
2. Specifications
3. Architecture
4. Design
5. Implementation
6. Testing
7. Deployment, and lastly
8. Maintenance
Now below we are mentioning some of the common methodologies apart from the water fall model of software development that too are used in the software development process:
1. Agile
2. Clean room
3. Iterative
4. RAD or rapid application development
5. RUP or rational unified process
6. Spiral
7. XP
8. Lean
9. Scrum
10. V model
11. TDD or test driven development
The below mentioned tools are used for the implementation of the water fall model of software development:
1. Compiler
2. Debugger
3. Profiler
4. IDE or integrated development environment
5. GUI or graphical user interface designer.

When a water fall model of software development has been implemented, the software system or application under development can move to the higher stages only if the preceding one has been successfully completed and all the issues discovered in the preceding stage have been identified and fixed. So many types of water fall models have been developed with different ways and order of implementation of the common steps. The most popular waterfall model of software development is that of the “Royce’s final model”. Other types of the waterfall model have been derived from this model only. Now we list some advantages and disadvantages of the waterfall model of software development:

Advantages:
1. Waterfall model insists on spending time on the early stages of development since it open ups the option of greater economy at the succeeding stages regarding the money, efforts and time.
2. It employs the idea of fixing the bug earlier with spending less efforts and money rather than spending huge amounts of time and efforts later.
3. It employs the idea of the big design upfront model.
4. It makes sure that the preceding stages have been perfectly completed before the development moves on to the next stage.
5. It involves the identification of all the requirements and resources before the beginning of the development process so the development in progress won’t fall short of resources and thus saves the potential wastage of the efforts.

Disadvantages:
1. Most of the times it has been considered as a bad idea to be followed in the practical implementation since it is not possible for any project to complete the preceding level 100 percent before moving on to the next one.
2. The designers stay unaware of the future implementation difficulties while designing a software product that has not been implemented.

Rapid Development: Taming Wild Software Schedules The Mythical Man-Month The Waterfall Method (Kindle)

Leave a Reply

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>