Tuesday, May 15, 2007

Milestone Driven Development - raw notes

Milestone Driven Development

extremely raw notes...

fdd and gdd - drive to completion a large piece of functionality. However, mdd takes that a step further; drive to milestones that (eventually) drive to goals.

mdd -> gdd -> fdd

Milestones are:
+ smaller "goals"; rungs on a ladder (best practice: m'stones no more than a sprint long)
+ achievable; small yet demoable
+ less risky: smaller estimates, fewer unknowns
+ more manageable: verify doneness on smaller deliverables. Change milestone roadmap in an agile environment all the time. Example: 1,2,3 can become 1,2,a,3 once 1 is complete, for instance and may not change too much.
+ easier to define ACDC
+ means to an end; crawl before you walk; etc.

assists:
management - track progress sprint to sprint; if a milestone is in jeopardy, the drop goal is too unless you descope or reprioritize
developers - can modify "roadmap" at any milestone
testers - can validate smaller pieces

Example:
Feature: Add to Shopping Cart (FDD)

Release/Drop Goal: Place a single transaction in shopping cart (GDD)

Milestones (prioritized - some may be parallel efforts): (MDD)
1. Write User Stories
2. Implement User Stories
3. Complete Validation
4. Duplicate Checking
5. Security, etc...

No comments: