19-Soft-A7 Software Development Process · Undated paper
Nivaar worked solution (AI-drafted; not reviewed by a licensed engineer)
National Exams — 04-Soft-A7, Software Process (closed book, two aid sheets, 3 hours). Notes on the paper: eight questions constitute the exam paper; answer FIVE of the eight, and the first FIVE as they appear in the answer book are marked. Each question is of equal value, and each sub-question within a question is of equal value (shown here as 20 marks per question on a 100-mark basis) — this solution answers all eight as a full study resource. Question 3 asks for a Gantt/timeline schedule for a personal address-book application; Question 4 introduces a hospital patient-registration system that Question 5's Function-Point estimate builds on.
Reference texts. Sommerville, Software Engineering, 10th ed., Ch. 2 (Software Processes), Ch. 3 (Agile Software Development), Ch. 5 (System Modeling), Ch. 8–9 (Testing), Ch. 22–23 (Project Management, Configuration Management), Ch. 9 (Software Evolution/Maintenance); Pressman, Software Engineering: A Practitioner's Approach, 9th ed., Ch. 2–3 (Process Models, Agile), Ch. 23–24 (Project Management, Risk Management), Ch. 29 (Function-Point sizing), Ch. 22 (SQA), Ch. 24 (Software Configuration Management); IEEE/ISO 12207 (Software Life Cycle Processes); SWEBOK v4 (Software Engineering Process, Software Configuration Management, Software Maintenance KAs).
Question text not reproduced: the examination questions are © Engineers and Geoscientists BC. Open the official past paper (linked at the top of this page) to read the question, then follow the worked solution below.
Part a) — major project-planning tasks and their artifacts.
| Planning task | Artifact produced |
|---|---|
| Scope the project | Statement of scope/objectives — functions, constraints, boundaries. |
| Estimate size/effort/cost | Size estimate (Question 5's Function-Point count) and effort/cost estimate. |
| Schedule the work | Task/milestone breakdown mapped to a timeline (Question 3's Gantt chart). |
| Plan staffing and resources | Resource/staffing plan — roles, tools, reusable components, when needed. |
| Identify and plan for risk | Risk register with probability/impact and a mitigation for each. |
| Plan tracking and control | Tracking/control plan — the metrics (Question 1b) and review points that trigger re-planning. |
Part b) — agile vs. conventional document-driven (waterfall) models. A document-driven model such as waterfall proceeds through a fixed sequence of phases (Question 1a's five phases), each gated by a formal, comprehensive document (SRS, design specification, test plan) that is signed off before the next phase begins; requirements are expected to be complete and stable up front, and change is handled through a formal change-control process (Question 7) rather than during the phase itself. Agile instead delivers working software in short, time-boxed iterations, values working software over comprehensive documentation, and expects and welcomes changing requirements even late in development, through continuous, close collaboration with the customer/product owner rather than a single up-front sign-off. The practical consequence is where risk is discovered: waterfall discovers a wrong requirement only when the finished system is reviewed against the (already-obsolete) specification, while agile discovers it within the next short iteration.
Part c) — agile vs. non-agile iterative-incremental: both iterative, but different.
| Aspect | Agile | Non-agile iterative-incremental (Question 1c) |
|---|---|---|
| Cadence | Fixed, short time-boxes (1–4 week sprints). | No fixed time-box — each increment runs as long as its own scope needs. |
| Customer involvement | Continuous, embedded in every sprint (reviews, backlog refinement). | Consulted at increment boundaries, not necessarily continuously. |
| Documentation | Minimal, just enough to support the team. | Still typically produces fuller design/requirements documents per increment. |
| Planning horizon | Plans only the next sprint in detail; the backlog beyond it stays loose. | Each increment is more fully planned and scoped before it starts. |
| Team organisation | Self-organising, cross-functional team, no fixed role hierarchy for daily work. | Often retains a more conventional project-manager-led structure. |
Both repeat a specify–design–implement–evaluate loop and both deliver growing, working increments — the difference is agile's insistence on a short, fixed cadence and continuous customer collaboration as first-class process rules, not just permitted practices.