NivaarExam PrepOfficial exam papers ↗

19-Soft-B6 Software Project Management · May 2018

Question 8 of 8

Nivaar worked solution (AI-drafted; not reviewed by a licensed engineer)

Notes on this paper

04-Soft-B6, Advanced Software Project Management, Life Cycle Methodologies — National Exams, May 2018 (3 hours, open book, non-communicating calculator permitted, 8 questions of equal value; FIVE (5) constitute a complete exam paper and the first five as they appear in the answer book are marked — all eight are solved here as a study resource).

Reference texts: Sommerville, Software Engineering, 10th ed. (process models, requirements engineering, configuration management); Pressman, Software Engineering: A Practitioner's Approach, 9th ed. (process models, agile, metrics, project planning); Gamma, Helm, Johnson & Vlissides (GoF), Design Patterns: Elements of Reusable Object-Oriented Software; ISO/IEC/IEEE 12207:2017, Software life cycle processes; PMI, A Guide to the Project Management Body of Knowledge (PMBOK), 7th ed.; SWEBOK v4.

Question 8 (10 marks)

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.

Check: the source text reads "Assuming the software system from Question 8," which is self-referential (Question 8 cannot assume itself). This is answered as referring to the adventure-listing system introduced in Question 7, which is the only system described anywhere in the paper.

Part (a) — decomposing the system using a Work Breakdown Structure. A WBS (Question 1c/scope management) recursively subdivides the total project deliverable into smaller, more manageable work packages, following the functional decomposition already implied by Question 7's requirements:

1.0 Adventure WebApplication1.1 Requirements &Project Management1.2 Frontend / UI(listing, map, search)1.3 Backend Services(listing, ratings, auth API)1.4 Data Layer(adventure & user DB)1.5 Test &Deployment1.3.1 Publiclisting API1.3.2 Map/location API1.3.3 Auth &session API1.5.1 Unit &integration tests1.5.2 Acceptancetest (unauth + auth)1.5.3 Deploy &releaseWork Breakdown Structure (top two levels shown)
Fig. Q8(a) — WBS: the system decomposes into requirements/PM, frontend, backend services (further split into public listing, map/location, and auth APIs), the data layer, and test/deployment work packages.

Each level-1 package is sized to be independently estimable and assignable to a sub-team: 1.1 Requirements & Project Management covers eliciting/documenting the requirements from Question 7 and ongoing planning; 1.2 Frontend/UI covers the listing, detail, map, search, and login views; 1.3 Backend Services splits further (level 2) into the public listing API, the map/location API, and the authentication/session API, mirroring the three service groupings in Question 7's system-context figure; 1.4 Data Layer covers the adventure and user data stores; and 1.5 Test & Deployment splits into unit/integration testing, an acceptance test covering both the unauthenticated and authenticated user roles, and deployment/release. This decomposition directly supports the incremental process model chosen in Question 7(a): increment 1 can be scoped as 1.1 + 1.2 (listing/map views only) + 1.3.1/1.3.2 + 1.4 + a subset of 1.5, with 1.3.3 (auth API) and the login-dependent parts of 1.2/1.5 forming increment 2.

Part (b) — the test plan. A test plan for this system, organized by test level, would specify:

Structuring the plan by test level, rather than as one undifferentiated "testing" phase, mirrors the V-model's own quality argument from Question 3(a): each WBS work package here has a test level explicitly paired with it (unit tests for 1.3.x components, integration tests for their collaborations, system/acceptance tests for the end-to-end functional requirements), so no level of the decomposition is left unverified.

Back to the paper →