Software Engineering and Development Methods
Domain 2 examines how a project's lifecycle, process maturity, estimation method and maintenance classification are chosen and justified. Case questions ask you to argue for a model under stated risk and requirement-stability conditions, not to recite definitions.
Lifecycle models
- Waterfall is sequential and document-driven; it suits stable requirements and fixed-scope contracts, but feedback arrives late and change is expensive.
- Incremental delivery ships usable subsets; iterative delivery reworks a growing product; both shorten feedback loops.
- Spiral (Boehm) is risk-driven: each cycle runs objective setting, risk analysis and prototyping, engineering, and planning. Choose it for large, high-uncertainty systems.
- V-model pairs each construction stage with a test level: requirements with acceptance testing, design with integration testing, coding with unit testing.
- RUP is use-case driven, architecture-centric and iterative, with four phases (Inception, Elaboration, Construction, Transition) and the 4+1 views (logical, process, implementation, deployment, plus use-case scenarios).
Process maturity and estimation
- CMMI staged representation: 1 Initial, 2 Managed, 3 Defined, 4 Quantitatively Managed, 5 Optimizing. Level 3 means organisation-wide standard processes; level 4 means statistical control.
- Function points size functionality from ILF, EIF, EI, EO and EQ, weighted by complexity; the adjusted count multiplies by VAF = 0.65 + 0.01 × TDI.
- Basic COCOMO: Effort = a × KLOC^b person-months, with constants chosen by project mode.
Maintenance
Corrective removes faults; adaptive responds to environment change; perfective meets new or changed user needs and performance targets; preventive improves future maintainability. Perfective work normally consumes the largest share of lifecycle cost.
Worked example
A payroll system must move from a retired operating system to a new platform with no functional change. The driver is an environment change, so the work is adaptive maintenance. If the same release also adds a new tax rule, that addition is perfective; the exam rewards separating the two and attributing effort accordingly, not labelling the whole project by its most visible feature.
Traps
- Calling any large rewrite perfective.
- Confusing the spiral model's explicit risk analysis with ordinary incremental delivery.
- Placing the defined process at CMMI level 2 rather than 3.
- Mixing unadjusted function points with the adjusted, VAF-scaled value.
- Selecting a model from fashion rather than from requirement stability and risk.