Top Banner
Agile Concepts - II “Agile” Estimating & Planning Nupul Kukreja 5 th November, 2014
27

Agile Concepts - II “Agile” Estimating & Planning Nupul Kukreja 5 th November, 2014.

Jan 02, 2016

Download

Documents

Oscar Golden
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Agile Concepts - II “Agile” Estimating & Planning Nupul Kukreja 5 th November, 2014.

Agile Concepts - II

“Agile” Estimating & PlanningNupul Kukreja

5th November, 2014

Page 2: Agile Concepts - II “Agile” Estimating & Planning Nupul Kukreja 5 th November, 2014.
Page 3: Agile Concepts - II “Agile” Estimating & Planning Nupul Kukreja 5 th November, 2014.

Agenda• “Agile” estimating & planning– For agile projects– For non-agile projects too

• Why planning fails?• Scheduling– Release & Iteration planning

• Tracking and Communicating• Benefits of Agile Planning• Guidelines for Agile Estimation and Planning

Page 4: Agile Concepts - II “Agile” Estimating & Planning Nupul Kukreja 5 th November, 2014.

“Agile” Estimating & Planning• Estimation and planning can be lightweight

too!• Doesn’t imply estimating and planning for

“agile” projects only• Question to answer: What should we build

and by when?– How big is it?– When will it be done?– How much can I have by then?

Page 5: Agile Concepts - II “Agile” Estimating & Planning Nupul Kukreja 5 th November, 2014.

PLANNING IS EVERYTHING.PLANS ARE NOTHING.

Field Marshal Helmuth Graf von Moltke

Page 6: Agile Concepts - II “Agile” Estimating & Planning Nupul Kukreja 5 th November, 2014.

6

Purpose of ‘Planning’*• Why do we do it?– Reduce risk & uncertainty– Supporting better decision making– Establishing trust (i.e. frequent delivery)– Conveying expectations

• Planning is a ‘quest for value’– Attempt to find an optimal solution of the overall

product development question: What should be built?

*Agile Estimation & Planning – Mike Cohn

Page 7: Agile Concepts - II “Agile” Estimating & Planning Nupul Kukreja 5 th November, 2014.

7

A Good Plan• One that stakeholders find sufficiently reliable• One that can be used as basis for decision

making– Approximate time to market– An idea of the set of features

• Made more precise as project moves on• Is a ‘living’ artifact showing the current status

of the project to avoid last minute surprises• Is planned around ‘value’

Page 8: Agile Concepts - II “Agile” Estimating & Planning Nupul Kukreja 5 th November, 2014.

Why Planning Fails?• Planning by activity instead by features• “Activities” never finish early• Activities are not independent• Lateness passed down the schedule• Multitasking causes more delays• Features not developed by priority• Ignoring uncertainty revised estimates• Estimates become commitments

Page 9: Agile Concepts - II “Agile” Estimating & Planning Nupul Kukreja 5 th November, 2014.

Agile Approach to Estimating/Planning

Agile Manifesto:• Individuals and interactions over processes and

tools• Working software over comprehensive

documentation• Customer collaboration over contract negotiation• Responding to change over following a plan

That is, while there is value in the items onthe right, agilists value the items on the left more

Page 10: Agile Concepts - II “Agile” Estimating & Planning Nupul Kukreja 5 th November, 2014.

Agile Approach to Projects• Work as one team• Work in short (2 – 4 week) iterations• Deliver something each iteration• Focus on business priorities• Inspect and adapt

Page 11: Agile Concepts - II “Agile” Estimating & Planning Nupul Kukreja 5 th November, 2014.

Agile Approach to Planning• Accuracy of plan decreases the further we

attempt to plan• Multiple “horizons” for planning

Market Research

Agile Project

Planning

Page 12: Agile Concepts - II “Agile” Estimating & Planning Nupul Kukreja 5 th November, 2014.

Conditions of Satisfaction

Page 13: Agile Concepts - II “Agile” Estimating & Planning Nupul Kukreja 5 th November, 2014.

AGILE ESTIMATION & PRIORITIZATION

Recap of what has already been covered

Page 14: Agile Concepts - II “Agile” Estimating & Planning Nupul Kukreja 5 th November, 2014.

Estimation & Prioritization• Estimating size:– T-shirt sizing (S, M, L, XL …)– Story-points– Ideal days– … (refer Estimation lecture)

• Keep duration estimate independent of size• Prioritize features w.r.t. size and “other”

important dimensions (lecture on VBRP)

Page 15: Agile Concepts - II “Agile” Estimating & Planning Nupul Kukreja 5 th November, 2014.

SCHEDULINGRelease and Iteration Planning

Page 16: Agile Concepts - II “Agile” Estimating & Planning Nupul Kukreja 5 th November, 2014.

Release Planning

Determine Conditions of Satisfaction

Estimate (theme) User Stories

Select stories and a release date

Do in any sequence

Estimate Velocity

Select an iteration length (~2 wks)

Prioritize User Stories

Iterate until the conditions of

satisfaction for the release can be met

Page 17: Agile Concepts - II “Agile” Estimating & Planning Nupul Kukreja 5 th November, 2014.

Estimating VelocityBy when will you be done?• A major challenge for planning a release• Avoid point estimates • Techniques:– Historical values

• Only applicable if “everything” is the same

– Run an iteration (or 2 – 3) and predict– Make a forecast

• Estimate team hours• Estimate total hours on project/release• Arbitrarily select stories and break into tasks to fill number of hours• Get velocity from above convert to 90% CI range

Page 18: Agile Concepts - II “Agile” Estimating & Planning Nupul Kukreja 5 th November, 2014.

Release Plan – Look and FeelIteration 1 Iteration 2 Iterations 3 – 5

As a user, I…

3

As a user, I…

8

As a user, I…

5

As a user, I…

5

As a user, I…

8

As a user, I…

2

As a user, I…

3

As a user, I…

5

As a user, I…

3

As a user, I…

5

As a user, I…

3

As a user, I…

2

As a user, I…

1

As a user, I…

5

As a user, I…

5

As a user, I…

2

Not fixed in stone – updated frequently especially if major changes in velocity/features

Page 19: Agile Concepts - II “Agile” Estimating & Planning Nupul Kukreja 5 th November, 2014.

Iteration Planning• Release plan provides high level view of “value

delivery”• Iteration plan Short-term, detailed view– What to work on in the next 2 weeks?– What to work on today? (Daily plan/stand-ups)

• Stories being worked on broken into tasks– Ex: Design UI (16 hours)– Refactor DB schema (10 hours)– Determine business rules (6 hours)– Specify acceptance tests (8 hours)

• Tasks NOT allocated to individuals!

Page 20: Agile Concepts - II “Agile” Estimating & Planning Nupul Kukreja 5 th November, 2014.

Iteration Planning – Cont’d• Velocity Driven

• Commitment Driven

Page 21: Agile Concepts - II “Agile” Estimating & Planning Nupul Kukreja 5 th November, 2014.

TRACKING AND MONITORING

Page 22: Agile Concepts - II “Agile” Estimating & Planning Nupul Kukreja 5 th November, 2014.

Release Burn-down(up) Charts

Page 23: Agile Concepts - II “Agile” Estimating & Planning Nupul Kukreja 5 th November, 2014.
Page 24: Agile Concepts - II “Agile” Estimating & Planning Nupul Kukreja 5 th November, 2014.
Page 25: Agile Concepts - II “Agile” Estimating & Planning Nupul Kukreja 5 th November, 2014.

Iteration PlanStory To Do Tests

Ready In Process To Verify Hours

As a user, I can…

5

• Code the…(8)• Code the…

(5)• Test the…

(6)

Y

• Code the…NK (6)• Code the…

DL (4)

Code the…BB (4)

33

As a user, I can…

3

• Code the…(8)• Code the…

(5)13

As a user, I can…

2

• Code the…(3)• Code the…

(6)Y

Code the…SK (4)

13

Page 26: Agile Concepts - II “Agile” Estimating & Planning Nupul Kukreja 5 th November, 2014.

Benefits of Agile Planning• Replanning occurs frequently• Estimates of size and duration are separated• Plans made at separate levels• Plans based on features not tasks/activities• Small stories keep work flowing• Work in process eliminated each iteration• Tracking at team level (instead of individual)• Uncertainty acknowledged and planned for

Page 27: Agile Concepts - II “Agile” Estimating & Planning Nupul Kukreja 5 th November, 2014.

Guidelines for Agile E&P1. Involve the whole team2. Plan at different levels3. Keep estimates of size and duration separate using different

units4. Express uncertainty in either functionality or date5. Replan often (start of each iteration)6. Track and communicate progress7. Acknowledge importance of learning8. Plan features of right size9. Prioritize features10. Base estimates and plans of facts11. Leave some slack12. Coordinate/sync teams with look-ahead planning.