Agile planning an iteration

6
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

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 of Agile planning an iteration

Page 2: Agile planning an iteration

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

Page 3: Agile planning an iteration

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

Page 4: Agile planning an iteration

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

Page 5: Agile planning an iteration

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!!

Page 6: Agile planning an iteration

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