Revise Computingrevisecomputing.co.uk
Free student revisionSee questionsFor schoolsSchool enquiry
Free revisionSee questionsFor schoolsSchool enquiry
Knowledge/A Level/H446/01 Computer systems/Software Development/Waterfall lifecycle, agile methodologies…

Waterfall lifecycle, agile methodologies, extreme programming, spiral model and RAD

Understand the waterfall lifecycle, agile methodologies, extreme programming, the spiral model and rapid application development

1.2.3 Software Development

Practise exam questions

Software Development — Note 1 of 3

Candidates need to understand the following models that can be followed to produce a software system; the waterfall lifecycle, agile methodologies (specifically extreme programming); the spiral model and rapid application development).

What you need to know

Software development methodologies are structured approaches to producing software. Each one organises the stages of analysis, design, development, testing and maintenance differently and involves the user to a different degree.

What to know

  • Common stages: feasibility, analysis (requirements), design, implementation, testing, deployment, evaluation and maintenance.
  • Waterfall and spiral are more plan-driven; agile, XP and RAD are more iterative and responsive to change.

Key terms

Waterfall lifecycle

Stages are completed one after another in a fixed order; each stage must be finished and signed off before the next begins, with limited ability to go back.

Agile methodologies

The software is developed in short iterations (sprints), producing working versions regularly so requirements can change and users give frequent feedback.

Extreme programmingXP

An agile method focused on code quality. Features include pair programming, test-driven development (writing tests before code), short releases, continuous integration, collective code ownership, refactoring and a customer representative on the team.

Spiral model

Development passes repeatedly through four phases (determine objectives, identify and resolve risks, develop and test, plan the next iteration), with a strong focus on risk management.

Rapid application developmentRAD

Uses prototypes that are repeatedly shown to users and refined based on their feedback, often within strict time limits (timeboxing), until the final product is produced.

Exam technique

  • Tip:Learn one distinguishing feature of each methodology, because questions often ask you to identify a methodology from a description.

Ready to test yourself?

Practise 1.2.3 questions
← Previous topicLinkers and loaders and use of libraries1.2.2 Applications GenerationNext note →The relative merits and drawbacks of different methodologies and when they might be used1.2.3 Software Development

Back to Software Development

Software Development

Note 1 of 3

  1. 1Waterfall lifecycle, agile methodologies, extreme programming, spiral model and RAD
  2. 2The relative merits and drawbacks of different methodologies and when they might be used
  3. 3Writing and following algorithms
Topic overview