Waterfall - DariaHalchenko/meetod GitHub Wiki
Waterfall
Waterfall is a traditional, cascading method of software development, where each successive stage starts only after the previous stage has been completed.
Waterfall is a sequential approach to software development where each phase of a project is completed in its entirety before moving on to the next.
Where to use:
- for projects where the requirements are well-defined and do not change.
- In public procurement, in medicine, in finance, where documentation and rules matter.
- Short life cycle for small projects
Stages of the water race:
- Collection of claims
- Designing
- Implementation
- Testing
- Implementation
- Maintenance
Pluses:
- Simplicity and clarity
- Clear structure and documentation
- Convenient for fixed budgets and deadlines
- Good for experienced teams
Cons:
- Lack of flexibility: difficult to make changes at the end of the process.
- Mistakes made early on are expensive to fix.
- Client only sees the result at the end
- Inefficient for undefined requirements
Waterfall Methodology: More information
-
Predictability: Waterfall provides a structured, linear approach that is useful for planning project timelines, budgets, and resources because each phase of the project is completed before the next phase begins.
-
Documentation: The Waterfall methodology places great emphasis on thorough documentation at each phase so that all requirements and design decisions are well documented and defined before moving on to the next phase. This is especially important for industries with high compliance requirements such as healthcare and finance.
-
Best suited to small, well-defined projects: Waterfall works best when the scope, timeline and requirements of the project are clearly defined from the outset and unlikely to change. This makes the methodology suitable for small projects or products with a fixed scope and minimal uncertainty.
-
Risk Management: Due to its linear nature, risks are often not identified until late in the development process and can only be addressed after most of the work has been completed. This can lead to high costs if problems are discovered too late.
Typical Waterfall use cases:
-
Regulatory and standards-intensive industries: Projects in industries such as healthcare, finance or government agencies where strict regulations, standards and documentation of all phases are required.
-
Small Projects: Projects with well-defined requirements, limited scope and short timelines where flexibility is not as important and the benefits of iterative development are not critical.
-
Software development with fixed deliverables: When an end result with predefined requirements and deadlines is needed.