Top users:

1. Nadeem
120
2. Brianna
96
3. Finley
87
4. Sigmund
87
5. Bishop
84
See all...
Win $50! Every month the top Seepedia user wins $50.

Question: What is a waterfall model?

Asked by Mozelle (33 points) on Jul 28, 2009  under Science & Mathematics 1 answers

Waterfall design model


Answers
user pic
zorine (36 points)

on Jul 28, 2009

Waterfall model is strictly linear model i.e. you can not move to the next phase without completing the previous phase. For example after the completion of analysis phase, design phase begins. The linear sequential model suggests a systematic, sequential approach to software development that begins at the system level and progress through analysis, design, coding, testing and support. Different stages and the detail description of the model is:



System / Information Engineering
Software is always part of a large system; work begins by establishing requirements for all system elements and then allocating some subset of these requirements to software. This system view is essential when software must interact with other elements such as hardware, people and databases. System engineering and analysis encompass requirements gathering at the system level with a small amount of top-level design and analysis. Information engineering encompasses requirements gathering at the strategic business level and at the business area level.



Software Requirement Analysis
The requirement gathering process is intensified and focused specially on software. To understand the nature of the programs to be built, the software engineer (analyst) must understand the information domain for the software as well as required function, behavior, performance, interface. Requirements for both system and the software are documented and reviewed with the customer.



Design
Software design is actually a multi step process that focuses on four distinct attributes of a program:
Data Structure
Software Architecture
Interface Representation
Procedural (Algorithmic) Detail
The design process translates requirements into a representation of the software that can be assessed for quality before coding begins. Like requirements the design is documented and become the part of software configuration.



Code Generation
The design must be translated into a machine-readable form. The code generation step performs this task. If design is performed in a detailed manner, code generation can be accomplished mechanistically. Testing
Once code has been generated, program testing begins. The testing process focuses on the logical internals of the software, ensuring that all statements have been tested, and all the functional externals; that are conducting tests to uncover errors and ensure that defined input will produce actual results that agree with required results.



Support
Software will undoubtedly undergo change after it is delivered to the customer. Change will occur because errors have been encountered, because the software must be adapted to accommodate changes in its external environment, or because the customer requires functional or performance enhancements. Software support / maintenance re-apply each of the preceding phases to an existing program rather than a new one.



The prototyping paradigm begins with requirements gathering. Developer and customer meet and define the overall objectives for the software, identify whatever requirements are known, and outline areas where further definition is mandatory. A “quick design” then occurs. The quick design leads to the construction of a prototype. The prototype is evaluated by the customer/user and used to refine requirements for the software to be developed. Iteration occurs as the prototype is turned to satisfy the needs of the customers, while at the same time enabling the developer to better understand what needs to be done.


Your Answer

Join or Login to Submit Your Answer

Register Login
   or   




* We'll send an email with a link to activate your account.

We'll publish your answer as soon as you activate your account.