Intro

The Software Development Lifecycle is the sequence of phases a feature travels from idea to production and beyond: requirements, design, implementation, testing, deployment, and maintenance. Choosing the right process model (waterfall, iterative, agile) determines how quickly a team gets feedback and how expensive a wrong assumption becomes. Example: skipping a spike before committing to a sprint estimate is how two-week tasks become two-month projects.

Process Models

The lifecycle phases are constant; process models differ in how they sequence and revisit them, which sets how fast a team gets feedback and how expensive a wrong assumption becomes:

ModelHow it flowsFits whenCost of late change
WaterfallEach phase once, in orderRequirements are fixed and well understood (regulated, contractual)High — mistakes surface late
Iterative / incrementalRepeated cycles, each adding functionRequirements are partly known and will evolveMedium
Agile (Scrum/Kanban)Short iterations (Scrum) or continuous flow (Kanban), frequent re-planningRequirements are uncertain and feedback is frequentLow — change is expected

Real teams blend these. The honest question is not “which methodology” but “how short is our feedback loop, and how cheaply can we change course when we learn we were wrong?”

References

2 items under this folder.