Computing Science
Software Design and Development
Development Methodologies
🤓 Study
📖 Quiz
Play audio lesson
Development Methodologies
Development Methodologies
Waterfall Methodology
- The Waterfall Model is a sequential software development methodology that shifts through ['requirements', 'design', 'implementation', 'verification' and 'maintenance'] phases.
- Each phase results in a deliverable that feeds into the next phase.
- It assumes that requirements will remain stable after they are defined.
- It focuses on extensive documentation, which makes it easier for new team members to get up to speed.
- The drawback of the Waterfall methodology is that it does not reflect changes in requirements during the development process.
Agile Methodology
- The Agile Methodology emphasises close collaboration between the programming team and business stakeholders; real-time communication, rather than writing extensive requirements upfront; and breaking the product into a series of incremental releases.
- Agile methodologies allow for changing requirements over time by using time-boxed, iterative workflows known as sprints.
- Agile place emphasis on face-to-face communication over written documents when the team is all in the same location.
- It focuses on minimalistic method of doing just enough as necessary. (Just Enough Documentation).
Iterative and Incremental Development
- Iterative and Incremental development methodology allows changes in project development stages. After each stage, the project is put to test and changes are made accordingly.
- In Iterative and Incremental development methodology, development is segmented into small builds of the software where segments are divided on the basis of software functionality.
- The iterative approach allows development to be more flexible, while the incremental part of this methodology allows development teams to demonstrate progress in more quantifiable terms.
Spiral Model
- Spiral Model combines elements of both design and prototyping-in-stages, combining advantages of top-down and bottom-up concepts.
- Each phase in spiral model starts with a design goal and ends with a review meeting.
- Spiral Model involves risk analysis, and includes risk handling as a specific phase.
- It is a good choice for large and complex projects.
Rapid Application Development (RAD)
- RAD is suitable for projects where requirements are not clear and can be implemented in parallel.
- RAD phase includes planning, user design, construction, cutover.
- It is suitable when technical risks are less and high modularization is required.
- RAD has shorter development time and higher customer satisfaction.