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.
Fig. Q7 — system context: unauthenticated and logged-in users reach the adventure web application, which is backed by listing/details, map, ratings/safety, and authentication services.
Part (a) — process model choice. An incremental process model (Question 2b) is the best fit. The requirement narrative already separates a clear priority order — "the first of which will be" unauthenticated viewing of adventures and the map, "as this is the main point of the system," with login accommodated afterward — which maps directly onto a natural first increment (public listing + map, delivering the core value with no authentication complexity) followed by a second increment (user accounts/login and any features that depend on being logged in). Building the public-viewing core first and shipping it lets real users and real adventure data start validating the listing/map/ratings features immediately, while the smaller, better-understood login increment is added without having blocked the higher-value core feature on it. A pure Waterfall approach would instead force the team to fully specify the (currently vaguer) authenticated-user features before any of the system could be released, delaying the system's main point unnecessarily.
Part (b) — functional requirements. Functional requirements state what the system must DO, derived directly from the scenario:
Display a consolidated list of adventures to any visitor, without requiring login.
Display adventure details — name, description, trail features, pictures, trail status, peer ratings, and safety information — for a selected adventure.
Display all adventures with location data on a master map giving an overall view.
Allow a user to log in (and, implicitly, register/authenticate) to access account-specific functionality.
Store and serve adventure data (name, description, features, pictures, status, ratings, safety info, location) from a backing data store to the listing, detail, and map views.
Allow authenticated users to submit or update information about adventures (peer ratings at minimum, since the system's stated purpose is collecting adventure data, and ratings are explicitly listed as data the system displays).
Part (c) — non-functional requirements.
NFR category
How it applies to this system
Accessibility
The core viewing functionality must be usable by "any user with internet access," implying broad browser/device compatibility and no mandatory plugin or account for the main use case.
Performance
The adventure list, detail pages, and especially the master map (rendering potentially many location markers at once) must load and respond within an acceptable time for a public-facing web application.
Scalability
The system must handle a growing catalog of adventures and a growing number of concurrent unauthenticated visitors without the listing/map views degrading.
Security
Login/authentication must protect user credentials and account data, and must not expose any authenticated-only capability (e.g., editing ratings) to unauthenticated users.
Usability
Since the "main point of the system" is unauthenticated browsing, the list/detail/map views must be immediately usable with zero account setup — any friction here directly undermines the system's stated primary purpose.
Data integrity/reliability
Safety information in particular must be accurate and reliably available, since it is used by trail-goers for real-world decisions — a stale or unavailable safety-info service is a higher-consequence failure than a stale ratings count.
As in the requirements-derivation approach established in this subject, each NFR here is anchored to a specific phrase in the narrative (any user with internet access → accessibility; general users viewing without necessarily logging in → usability of the unauthenticated path; safety information → reliability) rather than asserted generically.