Software Development Life Cycle CS Thinking Example 4

Follow the full solution, then compare it with the other examples linked below.

Example 4

hard
A startup is building a new social media app with unclear requirements that will likely change. Which development methodology would you recommend and why? What risks does your choice introduce?

Solution

  1. 1
    Step 1: Recommend Agile โ€” requirements are unclear and likely to change, which is exactly when Agile excels. Short sprints allow the team to adapt based on user feedback.
  2. 2
    Step 2: Risks of Agile: scope creep (constantly adding features), lack of comprehensive documentation, difficulty estimating total project cost and timeline upfront.
  3. 3
    Step 3: Mitigations: use a product backlog to manage scope, document key decisions, set clear sprint goals, and conduct regular retrospectives.

Answer

Recommend Agile for unclear, changing requirements. Risks: scope creep, poor documentation. Mitigate with backlog management and sprint planning.
Choosing a development methodology depends on project characteristics. There is no universally best approach โ€” the right choice depends on requirement stability, team size, and risk tolerance.

About Software Development Life Cycle

The structured process of planning, creating, testing, deploying, and maintaining software, typically following phases: requirements gathering, design, implementation (coding), testing, deployment, and maintenance. Different methodologies (waterfall, agile, spiral) organize these phases differently.

Learn more about Software Development Life Cycle โ†’

More Software Development Life Cycle Examples