Software Engineering & SDLC
Deep dive into the System Development Life Cycle (SDLC). This revision covers everything from initial feasibility studies to final system maintenance, aligned with Cambridge 9618 standards.
Learning Objectives (9618 Syllabus)
- 11.2.1 Show understanding of the stages of the SDLC
- 11.2.2 Discuss feasibility study (TELOS)
- 11.2.5 Compare Prototyping types (Evolutionary vs Throwaway)
- 11.2.8 Analyze Software Implementation methods
1. The SDLC Workflow
The SDLC is a formal stages-based approach to building a system. Each stage must produce specific documentation (deliverables).
2. Feasibility Study (TELOS)
Before committing resources, we use TELOS to evaluate if the project should proceed.
Is the hardware/software available or buildable?
Cost-benefit analysis. Is it within budget?
Does it violate Copyright or Data Protection laws?
Will the end-users actually be able to use it?
Can it be completed within the required timeframe?
3. SDLC Models Comparison
| Model | Workflow | Best For | Risk Level |
|---|---|---|---|
| Waterfall | Linear phases. No going back easily. | Simple, rigid projects. | High (late testing) |
| Iterative | Developing in small chunks/versions. | Large systems with evolving specs. | Medium |
| Spiral | Risk-driven cycles with analysis. | High-budget, high-risk projects. | Low (due to analysis) |
| Agile | Customer focus, sprints, rapid updates. | Startups, web apps. | Variable |
4. Prototyping Strategy
Throwaway Prototyping: Built only to demonstrate a concept, then discarded. Fast and cheap.
Evolutionary Prototyping: The prototype is refined and eventually becomes the final product. High quality but takes longer.
5. Implementation (Cut-over)
Choosing how to switch from the old system to the new one is a strategic decision.
| Method | Strategy | Pros | Cons |
|---|---|---|---|
| Direct | Instant switch. | Fast, least expensive. | High risk of data loss. |
| Parallel | Both run together. | Safest; backup exists. | High cost; double work. |
| Pilot | One branch/office first. | Errors isolated to one site. | Slow full roll-out. |
| Phased | Module by module. | Easier training. | System inconsistency. |
[Image comparing Direct, Parallel, Pilot, and Phased implementation timelines]
6. Types of Maintenance
- Perfective: Improving performance or adding new features (making it better).
- Adaptive: Modifying the system to work in a new environment (e.g., new OS).
- Corrective: Fixing bugs and errors discovered after release.
Exam-Style Revision Tasks
Q1: A nuclear power plant is updating its safety control software. Justify why the Spiral Model is more appropriate than the Waterfall Model. [4 marks]
Q2: Explain two reasons why Parallel Running is often used by banks despite the high cost. [4 marks]
Q3: Describe the difference between Corrective and Adaptive maintenance. [4 marks]
Quick Self-Check
Q1: Which TELOS component checks if the system complies with Data Protection laws?
Q2: Which implementation method is the riskiest?