Library › Computer Science 9618 › Software Development
AS Level · Computer Science 9618

Software Development

Revise Software Development for Computer Science 9618 (AS Level) — revision notes and instant AI marking.

📖 Revision notes · preview
  Cambridge International AS & A Level Computer Science (9618)

Software Development

The big idea: Good software is planned, built and checked in stages. The life cycle you pick, the way you break a problem into modules, and the way you test and maintain the result decide whether the program actually does what the client needs.

Summary — What This Chapter Covers
  • A program development life cycle gives the work a structure: analysis, design, coding, testing and maintenance.
  • Waterfall: stages in strict order, each signed off. Iterative: build and refine in repeated cycles. RAD: prototypes and heavy user involvement, fast delivery.
  • A structure chart decomposes a problem into modules and shows the parameters passed between them; you can derive pseudocode headers from it.
  • A state-transition diagram (or table) documents how a system moves between states in response to events.
  • Errors are syntax, logic or run-time. Testing methods include dry run, walkthrough, white-box, black-box, integration, alpha, beta, acceptance and stub testing.
  • A test plan lists tests with normal, abnormal, extreme and boundary data and the expected results.
  • Maintenance is corrective (fix faults), adaptive (meet new requirements or environments) or perfective (improve performance or usability).
1. Program Development Life Cycle
12.1

Five stages, three models

The purpose of a life cycle is to give a project a plan: each stage has a clear output, progress can be checked, and problems are found as early (and cheaply) as possible.

StageWhat happensTypical output
Analysisfind out what the client needs; study the current system; identify the problem and requirementsrequirements specification
Designplan the solution: data structures, algorithms, modules, interface, test planstructure charts, pseudocode, flowcharts, test plan
Codingwrite the program in a programming language, module by moduleprogram code
Testingrun the program with planned data to find and remove faultstest results, corrected code
Maintenancekeep the system working and useful after deliveryupdated versions
ModelPrincipleBenefitsDrawbacks
Waterfalleach stage is completed and signed off before the next starts; little going backsimple to manage; clear milestones and documentation; suits projects with fixed, well-understood requirementsthe client sees a working program only at the end; changing requirements late is expensive; errors in analysis are found late
Iterativea simple version is built, then repeatedly improved; each iteration goes through design, coding and testingworking software early; feedback after each iteration; risk found early; easier to absorb changesneeds more client involvement; total cost and end date are harder to predict; can drift without clear scope
Rapid application development (RAD)prototypes built quickly (often with reusable components) and refined with users; modules developed in parallel to a strict time limitvery fast delivery; user feedback throughout so the result fits needs; changes are easyneeds committed users and skilled developers; less suited to large or safety-critical systems; documentation can be weak; design may be poor if speed wins
Practice Question
A school wants a timetable app. The head teacher is not sure what features are needed and wants to try early versions with staff. Recommend a life cycle and justify it.
Memorise
🔓 Read the full Software Development note → You're seeing the preview · sign in to read it all
Also in the full note
  • Structure charts and state-transition diagrams
  • Errors, test methods, test data, maintenance
What's inside
📖 Revision notes 🎯 Learn mode ✦ AI flashcards ✓ Instant AI marking 🧊 3D explorers 🧪 Experiments & simulations 📈 Progress tracking
📄 Practise Software Development with Computer Science 9618 past papers Every paper with its mark scheme — answer online, marked instantly. Open →

Read the full Software Development notes free

That's the preview — create a free account to read the rest, plus flashcards and practice questions with instant AI marking. No credit card.

Unlock the full notes free →

More Computer Science topics