agile planning an iteration
DESCRIPTION
Keypoint: planning for "One Step Further" !! How to plan in an iteration including setting timing, participant, activities for an iteration planning meeting. To process the conflit btw customers vs. developers...TRANSCRIPT
User Stories Applied:
For Agile Software Development
–
Ch 10. Planning an iteration
Chen Jing Fung @iii
2011/6/23
Ref: other Agile solutions How to write,
gather ideas, estimate the approach
Planning an iteration • Best time:
– the start of each iteration
– Take a release(/planning process) one step further
• Participant: – customers as well as all of developers
• Key: – not much detail but enough planning for action-based
– Ideal for planning a release
• Activities for an iteration planning meeting
Discuss a story Disaggregate into
tasks
Accept responsibility
(tasks)
done Estimate points
(worth?)
start
Y N
Discussing the stories
• Discussing the stories
– Opportunity to change the stories priority from customers(C) &/or developers(D) • C: adjust priorities to deliver maximum business
• D: ask questions until the story -> tasks
– Not need every detail
customer
developers
Discuss a
story
Disaggregate into
tasks Accept responsibility (tasks)
done Estimate points
(worth?)
start
Y N
An iteration
planning
change
Disaggregating into tasks
• Reason: – Not just one developer
– Stories descript the user/customer-valued functionality (not to-do list)
• Tasks: – Steps
– Write on white board
• Notice: – the tasks for updating the user guide & help system
• Guideline for separating story into tasks – Difficult to estimate
– Done by more than one developers (Ex. UI & lib)
– Know a part of story is done => break it as a task
Discuss
a story
Disaggregate
into tasks Accept responsibility (tasks)
Estimate points
(worth?)
Y N
Short bursts,
Just-in-time
deign
Upfront design
phase
Responsibility & Estimate+Confirm
– Task points are from story points (each task <-> its member)
• Key - accepting responsibility – One member accept his/her
tasks
– (team) progress through the iteration • Learning more about tasks
• Find some work easier than planned
– But some harder? (move to later iteration / ask for help)
Discuss
a story
Disaggregate
into tasks
Accept responsibility
(tasks)
Estimate points
(worth?)
Y N
story
Task
+
name developers
Task ...
John
responsibility
• Commitments need to change – We are in the same boat =>
team win!!
• Estimate & Confirm – Estimate points/tasks
reliability!!
– Basic unit: individual
– Make sure no one over-committed
– Procedure if over-committed • Keep all the tasks & hope
• Request someone to take
• Talk with customer dropping/splitting a story
reliability
53 p-task/
2weeks
over!!
Summary
• Iteration plan take for release planning => one step further
– For the iteration being started
– Discuss each story & split it into its constituent task • Keep the relationship: stories → tasks (story points:
week -> date -> hour)
– Facilitate estimation • No mandatory size range for tasks (Ex. 5 hr/3 tasks)
• Encourage developers to work other parts of story
• One developer accepts responsibility for each task
• Assess over-committed?
– Cyclically estimating each task until reliability (story points)
Ref: other Agile solutions How to write, gather ideas, estimate the approach