Pages

Friday, 27 March 2020

Software Engineering Process Models:-Waterfall Model:

Models/Factors

Waterfall

Prototype

Incremental

Spiral

Agile

Requirement Specification

Fixed

Dynamic

Fixed but large

Fixed

Serum sprint fixed

Customer Involvement

Nil/low

High

Low/High

High

Moderate

Duration

small

small

large

large

Large

Expertise

High

Moderate

High

Very High

High

Example

Ice cream

Eye Testing

It is done Part by Part

Every part    needs to be checked ex:maggi 

 




Waterfall Model:

                           Waterfall Model is a traditional model. It is also called as Sequential Design Process, often used in SDLC, in which the progress is seen as flowing downwards like a waterfall, through the different phases such as Requirement Gathering, Feasibility Study/Analysis, Design, Coding, Testing, Installation and Maintenance. Every next phase is begun only once the goal of previous phase is completed. This methodology is preferred in projects where quality is more important as compared to schedule or cost. This methodology is best suitable for short term projects where the requirements will not change. (E.g. Calculator, Attendance Management).

Advantages:


·       Requirements do not change nor does design and code, so we get a stable product.This model is simple to implement. Requirements are finalized


·       earlier in the life cycle. So there won’t be any chaos in the next phases.


·       Required resources to implement this model are minimal compared to other methodologies


·       Every phase has specific documentation. It gives high visibility to the project manager and clients about the progress of the project. 


Disadvantages:
·       Backtracking is not possible i.e., we cannot go back and change requirements once the design stage is reached.


·       Change in requirements leads to change in design and code which results defects in the project due to overlapping of phases.


·       Customer may not be satisfied, if the changes they required are not incorporated in the product.


·       The end result of waterfall model may not be a flexible product


·       In terms of testing, testers involve only in the testing phase. Requirements are not tested in the requirement phase. It can’t be modified even though we identify that there is a bug in the requirement in the testing phase. It goes on till the end and leads to lot of re-work.


·       It is not suitable for long term projects where requirements may change time to time.


·       Waterfall model can be used only when the requirements are very well known and fixed.


When to use waterfall model?


·       This model can be used when the requirements of the complete system are clearly defined and understood.


·       Major requirements must be defined; however, some details can evolve with time.


·       There is a need to get a product to the market early.


·       A new technology is being used.


·       Resources with needed skill set are not available.


·       There are some high risk features and goals.




No comments:

Post a Comment