Saturday, 18 July 2015

MT - 47 - Waterfall Model (Linear-sequential model ).

The best model for the sequential software design is waterfall model. Since the process flow is sequentially from top to down so it is called waterfall model. This model was considered to be the first process model or linear-sequential model. It is a simple linear model without phase overlapping. In this model the next phase begins only when the last phase ends.
This model is preferred only when requirements are very well- known clear and  fixed, product definition is stable and there are ample of resources and time.

Sequential flow diagram :

SDLC Waterfall Model


Requirement Gathering and analysis:This is the first phase of the model where all the possible requirements of the system to be developed are captured and documented.During this phase research is being conducted which includes brainstorming about the software, what it is going to be and what purpose is it going to fulfil.Software requirements specification includes the complete information about how actual end users are expecting from the system.

System Design: After the requirement gathering is done, there comes the phase of system design.System Design helps in specifying hardware and system requirements and also helps in defining overall system architecture.If the first phase gets successfully completed and a well thought out plan for the software development has been laid then the next step involves formulating the basic design of the software on paper.

Implementation: This is the third phase. Here the system is developed or implemented with the help of the above phases.Here the whole modules are divided into units and each units are developed and unit tested.

Integration and System Testing: In the previous model the system requirements are divided into models & each model is developed & tested separately.In this phase all units are integrated & done the system testing to check whether the all models/units are integrated properly or not & the system as whole doing as mention as per the system requirement document, so we call this phase as the Integration & System Testing. Upon complete testing of software is done then actual Software is successfully send to customer.

Deployment of system: Once the functional and non functional testing is done, the product is deployed in the customer environment or released into the market.

Maintenance: There are some issues , change orders which come up in the client environment. To fix those issues patches are released. Also to enhance the product some better versions are released. Maintenance is done to deliver these changes in the customer environment. This is a long tyerm process and the system keep on getting enhanced.


Advantages of waterfall model:

- This model is simple and easy to understand and use.

-It is easy to manage due to the rigidity of the model – each phase has specific deliverables and a review process.

- The project requires the fulfilment of one phase, before proceeding to the next. Therefore if there is a fault in this software it will be detected during one of the initial phases and will be sealed off for correction.

-In this model phases are processed and completed one at a time. Phases do not overlap.
Waterfall model works well for smaller projects where requirements are very well understood.

-For each stage deadlines can be set which will help to develop the system on decided time frame.

 Disadvantages of waterfall model:

- It requires a lot of time and resources

-Once an application is in the testing stage, it is very difficult to go back and change something that was not well-thought out in the concept stage.

-No working software is produced until late during the life cycle.

-High amounts of risk and uncertainty.

-Not a good model for complex and object-oriented projects.

-Poor model for long and ongoing projects.

- The testing period comes very late in this model.

To make it customer happy such new requirement need to be implemented in new version of system which leads to added cost to system development.

-Not suitable for the projects where requirements are at a moderate to high risk of changing.

No comments:

Post a Comment