+ All Categories
Home > Documents > Waterfall Model

Waterfall Model

Date post: 11-Oct-2015
Category:
Upload: nur-blaiza-adun
View: 41 times
Download: 0 times
Share this document with a friend
Description:
SDLC Model
Popular Tags:

of 14

Transcript

WATERFALL MODEL

WATERFALL MODELSystems development life cycleWhat is SDLC? (Systems development life cycle)The Waterfall Model was first Process Model to be introduced. It is also referred to as a linear-sequential life cycle model. It is very simple to understand and use. In a waterfall model, each phase must be completed before the next phase can begin and there is no overlapping in the phases.Waterfall model is the earliest SDLC approach that was used for software development .The waterfall Model illustrates the software development process in a linear sequential flow; hence it is also referred to as a linear-sequential life cycle model. This means that any phase in the development process begins only if the previous phase is complete. In waterfall model phases do not overlap.

Waterfall modelWhat is the waterfall model?The Waterfall Model was first Process Model to be introduced. It is also referred to as a linear-sequential life cycle model. It is very simple to understand and use. In a waterfall model, each phase must be completed before the next phase can begin and there is no overlapping in the phases.Waterfall model is the earliest SDLC approach that was used for software development .The waterfall Model illustrates the software development process in a linear sequential flow; hence it is also referred to as a linear-sequential life cycle model. This means that any phase in the development process begins only if the previous phase is complete. In waterfall model phases do not overlap.

The first step: Requirement analysis The very first step in the waterfall model starts with requirement analysis and checking whether the project is actually feasible with the present technologies or not. Requirements are gathered, analyzed and then proper documentation is prepared which helps further in the development process.The Second step: designThe requirements gathered in the above phase are evaluated and a proper implementation strategy is formulated according to the software environment. The design phase is further categorized into two sections, i.e. system design and component design. The system design contains details and specifications of the whole system and explains how each component of the system will interact with others. The component design contains specifications as to how each component will work separately and how results from one component will travel to another. Individual coders are usually assigned to develop each component.The third step: implementationNow is the time to actually start creating the components. The information gathered in the first two phases is applied in this step to create the actual working parts of the system. The design generated in the above phase is converted into machine language that the computers can actually understand and process.The fourth step:TestingThe testing phase is where the software is checked for any errors or discrepancies. The testing of the software actually starts after the code is finished which is usually in the ending stages of implementation phase. Various different tools, software and strategies are used for testing the solution in order to make sure that it is error free.The fifth step:InstallationOnce software is tested it needs to be assembled as a whole system and installed on the computer or required device. The installation phase should go smoothly if the above steps have been carefully completed.The last step:MaintenanceMaintenance is an ongoing process which may stretch from a few months to many years. It is a fact that all software has bugs no matter how cautiously it has been developed and tested. Furthermore, with the passage of time, requirements will also change and modifications or additions will be required to keep it effective. All this work comes under the umbrella term - maintenance.PROS:Simple and easy to understand and useEasy to manage due to the rigidity of the model . each phase has specific deliverables and a review process.Phases are processed and completed one at a time.Works well for smaller projects where requirements are very well understood.Clearly defined stages.Well understood milestones.Easy to arrange tasks.Process and results are well documented.

consNo 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.Not suitable for the projects where requirements are at a moderate to high risk of changing. So risk and uncertainty is high with this process model.It is difficult to measure progress within stages.Cannot accommodate changing requirements.No working software is produced until late in the life cycle.Adjusting scope during the life cycle can end a project.Integration is done as a "big-bang. at the very end, which doesn't allow identifying any technological or business bottleneck or challenges early

cONCLUSIONDeveloping huge and critical software is not a very easy task. It requires expertise, skills, resources and experience to take up and successfully complete a proper business software development project. As a client you should be very careful while choosing the software development company for your project. It is very important that you partner with the right development company in order to receive the most suitable and effective solution.


Recommended