How is a software system developed from a problem to a solution, and what stages and methodologies guide the process?
Describe the systems development life cycle, its stages, and development methodologies including the waterfall and agile approaches.
A focused answer to WJEC A-Level Computer Science Unit 3 systems analysis, covering the stages of the systems development life cycle, feasibility and requirements, and the waterfall and agile methodologies.
Reviewed by: AI editorial process; not yet individually human-reviewed
Have a quick question? Jump to the Q&A page
Jump to a section
What this dot point is asking
WJEC wants you to describe the systems development life cycle (SDLC), its stages from analysis through to maintenance, and the main development methodologies, especially the waterfall and agile approaches. This is the software-engineering strand of Unit 3 and underpins the Unit 5 project. Expect questions that list the stages in order and that compare methodologies, both of which reward clear, ordered answers.
The answer
The stages of the life cycle
Following ordered stages means each step builds on a checked foundation, so errors are caught early when they are cheap, rather than after release when they are expensive.
Feasibility and requirements
A feasibility study asks whether the project is worth doing, considering technical, economic, legal, operational and time factors (often summarised as TELOS). Requirements gathering uses interviews, questionnaires, observation and study of documents to record what the new system must do (functional requirements) and the constraints on it (non-functional requirements).
Development methodologies
Neither approach is universally better: waterfall suits stable, well-understood requirements with heavy documentation needs, while agile suits projects where requirements evolve and early delivery reduces risk.
Choosing an approach
Examples in context
- Example 1. Why a bank chooses waterfall for core systems
- A bank replacing its core ledger needs every requirement specified, signed off and documented for regulators before coding, with little tolerance for mid-project change. The waterfall model's strict sequence and documentation fit this exactly, showing that the methodology must match the project's stability and governance needs.
- Example 2. Agile in a web start-up
- A start-up releases a minimal app, watches how users behave, and adds or drops features every two weeks. Agile's short iterations and openness to change let it discover what users actually want rather than guessing up front, which is why fast-moving products favour agile over waterfall.
- Example 3. Maintenance as the longest stage
- Most of a system's life is spent in maintenance: fixing faults found in use (corrective), adapting to new hardware or law (adaptive) and adding features (perfective). Recognising that the life cycle does not end at release is a point examiners reward, because maintenance often costs more than the original build.
Try this
Q1. State the stage of the life cycle in which requirements are gathered and the problem is investigated. [1 mark]
- Cue. The analysis stage.
Q2. State one situation in which an agile methodology is more suitable than the waterfall model. [1 mark]
- Cue. When requirements are likely to change and early, frequent delivery of working software reduces risk.
Exam-style practice questions
Practice questions written in the style of WJEC exam questions on this dot point, with worked answer explainers. The year tag is the paper they imitate, not the source.
WJEC 20206 marksDescribe the main stages of the systems development life cycle in order.Show worked answer →
List the stages in sequence, with a one-line description of each.
Analysis: investigate the current system and the problem, gather and document the requirements of the new system, often after a feasibility study.
Design: specify how the system will meet the requirements, including data structures, algorithms, interfaces, inputs and outputs.
Implementation: write and code the solution from the design.
Testing: check the system against the requirements using planned test data, correcting faults.
Installation: bring the system into use, including any data conversion and user training.
Maintenance: keep the system working after release, fixing faults and making improvements.
Markers reward the stages in the correct order with a brief, accurate description of each.
WJEC 20226 marksCompare the waterfall methodology with an agile methodology, giving one advantage of each.Show worked answer →
Describe how each approach is organised, then give an advantage of each.
The waterfall methodology runs the life-cycle stages in a strict sequence, each completed before the next begins, with heavy documentation. An agile methodology works in short iterations, delivering small working increments and responding to changing requirements, with frequent user feedback.
Advantage of waterfall: it is simple to manage and well documented, which suits projects with stable, well-understood requirements.
Advantage of agile: it adapts readily to changing requirements and gives the customer working software early and often, reducing the risk of building the wrong thing.
Markers reward the sequential-versus-iterative contrast, plus one valid advantage on each side.
Related dot points
- Describe system design, testing strategies, methods of installation and changeover, documentation, evaluation and maintenance.
A focused answer to WJEC A-Level Computer Science Unit 3 system design and testing, covering design specification, testing strategies, methods of system changeover, documentation, evaluation and the types of maintenance.
- Explain the procedural, object-oriented and declarative paradigms, and describe classes, objects, encapsulation, inheritance and polymorphism.
A focused answer to WJEC A-Level Computer Science Unit 3 programming paradigms, covering procedural, object-oriented and declarative programming, and the OOP concepts of classes, objects, encapsulation, inheritance and polymorphism.
- Describe and apply advanced data structures and algorithms: linked lists, trees and their traversals, recursion, and advanced searching and sorting.
A focused answer to WJEC A-Level Computer Science Unit 3 data structures and algorithms, covering linked lists and pointers, binary tree traversals, recursion, and advanced searching and sorting with efficiency.
- Simplify Boolean expressions using Boolean algebra and Karnaugh maps, and use programming constructs to construct programs.
A focused answer to WJEC A-Level Computer Science Unit 3 programs and logical operations, covering Boolean simplification, Karnaugh maps, sum-of-products form, and building programs from constructs and subroutines.
- Describe data security and integrity measures: backup and recovery, validation and verification, error detection, and encryption in depth.
A focused answer to WJEC A-Level Computer Science Unit 3 data security and integrity, covering backup and recovery, validation and verification, error detection methods such as parity and checksums, and encryption in depth.