0% found this document useful (0 votes)
27 views4 pages

Requirement Analysis in Waterfall Model

Uploaded by

Arfa Latif
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
27 views4 pages

Requirement Analysis in Waterfall Model

Uploaded by

Arfa Latif
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

See discussions, stats, and author profiles for this publication at: [Link]

net/publication/371902449

Waterfall Model Used in Software Development Reference: Software


Requirements Engineering Waterfall Model

Technical Report · June 2023


DOI: 10.13140/RG.2.2.29580.69764

CITATIONS READS

2 5,524

1 author:

Sardar Mudassar Ali Khan


Contour Software
154 PUBLICATIONS 5 CITATIONS

SEE PROFILE

All content following this page was uploaded by Sardar Mudassar Ali Khan on 27 June 2023.

The user has requested enhancement of the downloaded file.


Waterfall Model Used in Software
Development
Reference: Software Requirements Engineering by Sardar Mudassar Ali Khan

Waterfall Model
The waterfall model is the first model in software development history. It is also referred to as
the (Linear sequential life cycle model) this model is simple to understand and use. In the
waterfall model, each phase is completed before moving to the next phase. The waterfall model
is the first and earliest approach used in SDLC for the development of software products in this
model that do not overlap.

Waterfall Model Design


The waterfall approach was the first approach in the software development life cycle and was
widely used in the development of software products and for the success of the project.

Requirement Analysis

System Design

Implementation

Testing

Deployment

Maintenance

The sequential phases of waterfall models are.

▪ Requirement Analysis.
All the key requirements of the system development and captured in this phase and we
document them in the software requirement specification document.
▪ System Design.
The requirement specification from the first phase is studied in this phase and these
requirements help us to define the overall system design and architecture of the system.
▪ Implementation.
After defining the clear and rich requirements the fourth step is building and developing
the software product according to the defined standards. Software organizations start
coding and designing products this step involves the implementation of all the pre-and
post-condition of a project like the development of complete functionalities of the
software product according to the requirement verified by senior members of teams and
all the stakeholders of the project.
▪ Integration and testing
In this step of the software development life cycle, we define the testing strategies in
which we do the testing of different modules, and we check that either every module
is behaving and functioning according to the standard definition or according to the
requirements define in the first phase of the SDLC process.
▪ Deployment
After the complete testing of the product and the product is formally ready for
deployment then the of time product is released in the stages according to the
deployment plains of the organization. And some time product deployment is
dependent on the feedback of the customers.
▪ Maintenance
This activity is involving the modification of software to meet the customer and market
new trends. Modification means that improve the system to such standards that can
support today's technologies and meets the customer requirement efficiently.

Applications
The waterfall model is widely and extensively used in the software industry some given
below point explains the usage of the Waterfall model.
• The requirement is very well clear and fixed
• Product Definition is stable and well defined
• No ambiguity in the requirements
• Due to the rigidity of the model projects are short
Advantages of Waterfall models
• Simple and Easy to understand.
• Clearly and defined stages
• Easy to arrange tasks.
• Process and results are well documented.
• Works well when the project is small.
• Easy to manage due to the rigidity of the model.
Dis-Advantages of Waterfall models.
• The high number of risks and uncertainty
• Poor model for long and ongoing projects
• Not suitable for life-critical systems because of the rigidity
• Difficult to manage projects progress within stages.
• Not suitable for the project that they are following an Object-oriented approach.
• Cannot accommodate the requirement change process.

View publication stats

Common questions

Powered by AI

The linearity of the Waterfall model allows for easy arrangement of tasks, as each phase follows the completion of the previous one without overlap, which fits well with projects that have clearly defined tasks and goals. This aids in simplifying project management by making tasks predictable and reducing complexity in organizing them. Each stage's completion before the start of the next ensures that every step is fully addressed, documented, and verified, which is beneficial for projects with stringent requirements and definitions . However, this also means that adjustments late in the process can be costly and time-consuming, as changes in earlier stages require revisiting each subsequent phase .

The Waterfall model is suitable for projects with well-defined and unambiguous requirements because it allows for a linear and structured approach where each phase must be completed before the next begins. This makes it ideal for projects with stable product definitions and clear requirements, as all stages are clearly defined and documented . However, challenges arise from its rigidity, which poses high risks and uncertainty in environments or projects where requirements can change mid-course, making it unsuitable for dynamic environments or projects that require flexibility. The Waterfall model is also not ideal for long-term projects or those needing an object-oriented approach, and its rigid structure is not conducive to life-critical systems due to inability to adapt swiftly to changes .

The Waterfall model ensures well-documented processes and results by treating each stage of the development process as a distinct phase with detailed documentation requirements. This model mandates thorough documentation before proceeding to the next stage, providing a clear and precise understanding of requirements, system design, implementation specifics, and testing results . For small-scale projects, this thorough documentation is significant because it offers an organized framework that reduces ambiguity, facilitates easier task management, and helps maintain clarity among team members and stakeholders about the project scope and progress, even if changes in team members occur .

The Waterfall model's approach to deployment is sequential, meaning the product is only released after complete testing is conducted, following the strict progression from one phase to another . This rigidity implies that incorporating client feedback would be limited to the pre-defined deployment phases and not throughout the development cycle, restricting changes to specific points rather than continuously adjusting to client insights or market developments. This aspect suggests that modifications based on feedback can be more structured but less responsive, potentially delaying necessary changes or adaptations until subsequent development cycles or until the deployment phase is revisited .

The Waterfall model manages testing phases by defining them as a distinct stage following implementation, with comprehensive testing of all integrated modules against specified requirements . Consequently, any defects discovered at this late stage necessitate revisiting earlier phases like requirement analysis or system design to make adjustments, leading to increased costs and delays because each phase must be completed sequentially. This approach can be inefficient if major defects are found, as early-stage testing and validation could account for errors as modules are developed, thereby reducing the likelihood of compounding issues at later stages .

The Waterfall model's capability to clearly define stages contributes to project management by providing a structured framework that delineates each phase's goals, deliverables, and timelines. This clarity aids in organizing tasks, allocating resources efficiently, and monitoring progress against the planned timeline. It ensures each phase is thoroughly completed before preceding to the next, which helps in managing expectations and mitigating misunderstandings . For stakeholder communication, this precision in stage definition enhances transparency and provides stakeholders with clear insights into project status and progression, which fosters trust and aids in more predictable decision-making and planning .

The advantages of the Waterfall model outweigh its disadvantages in scenarios where the project is small, the requirements are fixed and well-understood from the outset, and there is no anticipated need for requirements changes. For such projects, the straightforward, step-by-step approach of the Waterfall model ensures clarity, simplifies task arrangement, and facilitates management due to its structured nature and detailed documentation at each phase, which provides a comprehensive roadmap for achieving the project's goals without deviation. This reduces complexity and ensures deliverables are consistent with initial expectations .

The Waterfall model's sequential nature heightens risks and uncertainties in long and ongoing projects because any change in the initial requirements can necessitate revisiting and revising several stages, amplifying costs and time delays. As it does not easily accommodate modifications during the development life cycle, there is a high risk that by the time a project reaches completion, the initial requirements may no longer be relevant or efficient. This increased uncertainty makes it challenging to manage and react promptly to changes that are commonplace in longer projects, resulting in potential misalignment with market or technology trends by the time of deployment .

The Waterfall model is considered inadequate for projects that follow an object-oriented approach because it is inherently sequential and does not facilitate iterative or incremental development practices that object-oriented methodologies benefit from. Object-oriented development often requires re-evaluation and iteration caused by the integration of different objects and modules, which the rigid structure of the Waterfall does not accommodate well . In such cases, models like Agile or Spiral, which allow for iterative development, continuous integration and testing, and adaptability to changes, are more suitable as they provide the flexibility and adaptability needed in an object-oriented environment .

The rigidity of the Waterfall model makes it unsuitable for life-critical systems because such systems often require rapid adaptability and continual updates to accommodate new safety standards, technological advancements, or critical feedback, which the Waterfall model's linear stage progression does not allow. Life-critical systems benefit from iterative processes that facilitate ongoing validation and verification processes, where changes can be implemented more dynamically, which is contrary to Waterfall's fixed sequences. This limitation in handling change compromises the safety and responsiveness necessary in applications like medical devices or aviation systems, which demand high levels of reliability and adaptability .

You might also like