2.2.2. Domain: Development Approach & Life Cycle
💡 First Principle: The way a project is developed and delivered must be intentionally selected and tailored to match the characteristics of the project, its deliverables, and its environment to optimize value delivery.
Scenario: You are tasked with choosing the development approach for a new project. The requirements are highly uncertain, and the customer needs to see progress frequently to provide feedback. Based on these factors, you select an adaptive (Agile) lifecycle over a predictive (Waterfall) one.
This domain focuses on selecting and tailoring the best way to develop and deliver the product/service.
- Focus: Selecting and tailoring the best way to develop and deliver the product/service.
- Desired Outcomes: Approach fits deliverables/context, lifecycle enables value flow.
- Key Activities/Concepts: Lifecycle Types (Predictive, Iterative, Incremental, Adaptive, Hybrid), Agile, Cadence, Phase Management, Tailoring Factors (Uncertainty, Change Need, Delivery Frequency, Risk, Regulation).
- Practical Relevance / PM Role: Facilitate selection/tailoring, manage lifecycle transitions, ensure team/stakeholder alignment on approach. This is a critical choice based on project context. Understanding Kanban/flow is relevant.
Practical Implementation: Lifecycle Comparison Table
| Approach | Requirements | Delivery | Feedback | Best Use Case Examples (Scenarios) |
|---|---|---|---|---|
| Predictive | Fixed upfront | Single ('Big Bang') | Minimal during dev | "High regulation, Stable/known work, High risk/control needed" |
| Iterative | Dynamic/Uncertain | Single ('Big Bang') | High during dev | "Uncertain solution, high cost of error" |
| Incremental | Dynamic | Multiple usable increments | After each increment | "Need early value, divisible work" |
| Adaptive | Dynamic/Uncertain | Multiple usable increments | High & Continuous | "High uncertainty/change, need early value/feedback" |
| Hybrid | Mixed | Mixed | Varies | "Mixed project components, complex contracts" |
⚠️ Common Pitfall: Forcing a single, standard lifecycle (e.g., "we are an Agile shop") onto all projects, regardless of whether it's the best fit for the project's specific context (e.g., a highly regulated project that requires significant upfront documentation).
Key Trade-Offs:
- Upfront Planning (Predictive) vs. In-progress Flexibility (Adaptive): Predictive approaches provide a high degree of predictability at the cost of flexibility. Adaptive approaches provide high flexibility to respond to change at the cost of upfront predictability.
Reflection Question: Why is a project with high uncertainty in its requirements a poor fit for a purely predictive lifecycle?