Milestones Definition and Exit Criteria
Putting some flesh around the definitions, clarifying how we declare a milestone reached and what's happening between milestones.
Feature Freeze
Definition
All "task" fixed or moved to Future by Bug Council, code committed and ready to be tested by QA.
Exit Criteria
If there are "task" open in Bugzilla and that those "task" can't be pushed out of Preview, the milestone is not reached and the schedule needs to slip.
First Inter milestone period: Performance and Stabilization
After Feature Freeze:
- No new feature work unless it is approved by the Bug Council. Such feature work must be clearly required for Preview to be usable.
- Performance work including potentially architecture change will happen during that period.
- All commit must reference a bug number triaged by the Bug Council.
- Commits that create performance regressions are rolled back.
Code Complete
Definition
All code in, architecture and feature tweak completed, performance work completed.
Exit Criteria
If the performance targets are not met or some feature rework is still needed, the milestone needs to be pushed.
Second Inter milestone period: Debug
After Code Complete:
- Only bug fix work and stabilization can be done.
- Bugs must be pre-approved by Bug Council.
- Bug Council meets several times a week.
- Code changes need peer review before commit.
- All commit need to reference a bug number and a reviewer.
- Commits that create performance regressions are rolled back.
Code Freeze
Definition
Almost all bugs fixed. Only a handfull of blocking bugs left.
Exit Criteria
If there's more than 10 blocking bugs outstanding, the milestone is not reached.
Backing period
After Code Freeze:
- Only "recall class bugs" and blockers can be fixed.
- Bugs are triaged daily.
- As in previous period, code changes need to be peer reviewed before commit and no performance regression tolerated.
Release Candidate
--
PhilippeBossut - 01 Mar 2007