Top Banner
10/4/11 1 © Zühlke 2011 Daryn Holmes, Karen Paludan, Keith Braithwaite Agile, Estimation and Projects Where do budgets come from? 28. June 2011 Slide 1 © Zühlke 2011 Economic Activity Building software for a living is primarily an economic activity Only secondarily (at best) technical Sorry. 28. June 2011 Scrum Master Course | Daryn Holmes, Karen Paludan, Keith Braithwaite Slide 2
15

Agile, Estimation and Projects - cs.bham.ac.uk · Scrum Master Course ... • Plan the first iteration: define the Sprint Backlog, the ... – Zero overlap between work items

Jun 28, 2018

Download

Documents

LêHạnh
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, Estimation and Projects - cs.bham.ac.uk · Scrum Master Course ... • Plan the first iteration: define the Sprint Backlog, the ... – Zero overlap between work items

10/4/11

1

© Zühlke 2011

Daryn Holmes, Karen Paludan, Keith Braithwaite

Agile, Estimation and Projects Where do budgets come from?

28. June 2011 Slide 1

© Zühlke 2011

Economic Activity

Building software for a living is primarily an economic activity

• Only secondarily (at best) technical

• Sorry.

28. June 2011 Scrum Master Course | Daryn Holmes, Karen Paludan, Keith Braithwaite Slide 2

Page 2: Agile, Estimation and Projects - cs.bham.ac.uk · Scrum Master Course ... • Plan the first iteration: define the Sprint Backlog, the ... – Zero overlap between work items

10/4/11

2

© Zühlke 2011

Daryn Holmes, Karen Paludan, Keith Braithwaite

Getting Started

How Agile Projects Begin

28. June 2011 Slide 3

© Zühlke 2011 Scrum Master Course | Daryn Holmes, Karen Paludan

Projects

According to the PMBOK, a project is:

• A temporary endeavor undertaken to create a unique product, service or result

•  “Temporary” –  A starting point –  An ending point

•  “Create a…” –  A definite goal for the project

In practice, projects also have a business case and a budget

28. June 2011 Slide 4

Page 3: Agile, Estimation and Projects - cs.bham.ac.uk · Scrum Master Course ... • Plan the first iteration: define the Sprint Backlog, the ... – Zero overlap between work items

10/4/11

3

© Zühlke 2011 Scrum Master Course | Daryn Holmes, Karen Paludan

Agile Projects in Theory

• The Product Owner defines an initial Product Backlog, a release plan, funding, etc.

• The Team along with the Scrum Master, and the Product Owner decide an iteration length (and stick to it)

• Plan the first iteration: define the Sprint Backlog, the Sprint Goal, the tasks

• Start!

28. June 2011 Slide 5

© Zühlke 2011

No Chance!

Outside of a Lean startup or similar that will never fly

• Agile/Scrum/etc has a good story for the steady state

• Not so much for getting a project started

28. June 2011 Scrum Master Course | Daryn Holmes, Karen Paludan Slide 6

Page 4: Agile, Estimation and Projects - cs.bham.ac.uk · Scrum Master Course ... • Plan the first iteration: define the Sprint Backlog, the ... – Zero overlap between work items

10/4/11

4

© Zühlke 2011 Scrum Master Course | Daryn Holmes, Karen Paludan

In Reality

•  Inception phase –  Project goal –  Initial estimates

–  Duration –  Staff –  Money

–  Initial product backlog

28. June 2011 Slide 7

© Zühlke 2011

Budgeting: The Traditional Approach

1.  Requirements Document

2.  Work Breakdown Structure

3.  Bottom-up estimation

4.  Roll-up to project estimate

5.  “contingency”

28. June 2011 Scrum Master Course | Daryn Holmes, Karen Paludan Slide 8

Page 5: Agile, Estimation and Projects - cs.bham.ac.uk · Scrum Master Course ... • Plan the first iteration: define the Sprint Backlog, the ... – Zero overlap between work items

10/4/11

5

© Zühlke 2011

Work Breakdown Structure

Most WBS for software development are invalid

• 100% principle –  Each parent node must be exactly 100% satisfied iff all its children are satisfied

• Mutually exclusive items –  Zero overlap between work items

• Outcomes not actions –  WBS items should not describe activities

Very rare to be able to do this with software projects

28. June 2011 Scrum Master Course | Daryn Holmes, Karen Paludan Slide 9

© Zühlke 2011

Cone of Uncertainty

28. June 2011 Scrum Master Course | Daryn Holmes, Karen Paludan Slide 10

Initial estimate of 1 year:

• Actual between 3 months and 4 years

• Best case

From McConnel Software Estimation

Page 6: Agile, Estimation and Projects - cs.bham.ac.uk · Scrum Master Course ... • Plan the first iteration: define the Sprint Backlog, the ... – Zero overlap between work items

10/4/11

6

© Zühlke 2011 Scrum Master Course | Daryn Holmes, Karen Paludan

Planning Fallacy

In cognitive science, planning fallacy is the tendency for people and organizations to underestimate how long they will need to complete a task, even when they have past experience of similar tasks over-running

Kahneman, Daniel; Tversky, Amos (1979). Intuitive prediction: biases and corrective procedures

28. June 2011 Slide 11

© Zühlke 2011

Daryn Holmes, Karen Paludan, Keith Braithwaite

Agile Estimation

How Zuhlke prices projects

28. June 2011 Slide 12

Page 7: Agile, Estimation and Projects - cs.bham.ac.uk · Scrum Master Course ... • Plan the first iteration: define the Sprint Backlog, the ... – Zero overlap between work items

10/4/11

7

© Zühlke 2011 Scrum Master Course | Daryn Holmes, Karen Paludan

Agile Estimation

The primary purpose of software estimation is not to predict a project’s outcome; it is to determine whether a project’s targets are realistic enough to allow the project to be controlled to meet them

McConnell, Software Estimation

28. June 2011 Slide 13

© Zühlke 2011 Scrum Master Course | Daryn Holmes, Karen Paludan

Estimation and Commitment

Negotiate commitments not estimates

• An estimate is not a prediction

• An estimate is a guide

• An estimate reflects uncertainty

28. June 2011 Slide 14

Page 8: Agile, Estimation and Projects - cs.bham.ac.uk · Scrum Master Course ... • Plan the first iteration: define the Sprint Backlog, the ... – Zero overlap between work items

10/4/11

8

© Zühlke 2011

Estimating an Agile Project

No BRD, no Technical Specification, but…

A vision for the project, and “epics”

28. June 2011 Scrum Master Course | Daryn Holmes, Karen Paludan Slide 15

© Zühlke 2011 Scrum Master Course | Daryn Holmes, Karen Paludan

User Story Mapping

By arranging activity and task-centric story cards spatially, we can tell bigger stories

Tell a big story (epic) by starting with the activities the product will be used for

Arrange activities left to right in the order you’d explain them to someone when asked the question: “What do people do with this system?”

16

time

28. June 2011 Slide 16

Page 9: Agile, Estimation and Projects - cs.bham.ac.uk · Scrum Master Course ... • Plan the first iteration: define the Sprint Backlog, the ... – Zero overlap between work items

10/4/11

9

© Zühlke 2011 Scrum Master Course | Daryn Holmes, Karen Paludan

Add Task-Centric Stories to Refine Activities

Add task-centric stories in under each activity in chronological order left to right.

If you were to explain to someone what a person typically does in this activity, arrange tasks in the order you’d tell the story

time

28. June 2011 Slide 17

© Zühlke 2011 Scrum Master Course | Daryn Holmes, Karen Paludan

Capture Parallelism and Alternatives

Overlap user tasks vertically if a user may do one of several tasks at approximately the same time.

If in telling the story I say the systems’ user typically “does this or this or this, and then does that,” “or’s” signal a stacking vertically, “and then’s” signal stepping horizontally.

time

28. June 2011 Slide 18

Page 10: Agile, Estimation and Projects - cs.bham.ac.uk · Scrum Master Course ... • Plan the first iteration: define the Sprint Backlog, the ... – Zero overlap between work items

10/4/11

10

© Zühlke 2011 Scrum Master Course | Daryn Holmes, Karen Paludan

Reading the Story Map

The map of stories shows both story decomposition and a typical flow of use across the entire system

Simply reading the activities, or large stories, across the top of the system helps us understand end-to-end use of the system

time

Below each activity, or large story are the child stories that make it up

28. June 2011 Slide 19

© Zühlke 2011 Scrum Master Course | Daryn Holmes, Karen Paludan

time

nece

ssity

The backbone

The walking skeleton

Two important anatomical features

• The backbone of the application is the abstract list of essential activities the application supports

• The walking skeleton is the actual software we build that supports the least number of necessary tasks across the full span of functionality

28. June 2011 Slide 20

Page 11: Agile, Estimation and Projects - cs.bham.ac.uk · Scrum Master Course ... • Plan the first iteration: define the Sprint Backlog, the ... – Zero overlap between work items

10/4/11

11

© Zühlke 2011

Scrum Master Course | Daryn Holmes, Karen Paludan

Broadband Delphi

28. June 2011 Slide 21

© Zühlke 2011 Scrum Master Course | Daryn Holmes, Karen Paludan

Top Down Estimation

Use Delphi to estimate the epics

•  “determine whether a project’s targets are realistic enough”

ROI should exceed the planned investment by orders of magnitude

• Projects which require very accurate estimates to be viable are not viable

28. June 2011 Slide 22

Page 12: Agile, Estimation and Projects - cs.bham.ac.uk · Scrum Master Course ... • Plan the first iteration: define the Sprint Backlog, the ... – Zero overlap between work items

10/4/11

12

© Zühlke 2011 Scrum Master Course | Daryn Holmes, Karen Paludan

Ranges

Estimate as a rage:

• Minimum, expected, maximum

• Arbitrage precision for accuracy

28. June 2011 Slide 23

© Zühlke 2011 Scrum Master Course | Daryn Holmes, Karen Paludan

Story Map to Plan

time

nece

ssity

mandatory

more necessary

less necessary

First Release

28. June 2011 Slide 24

Page 13: Agile, Estimation and Projects - cs.bham.ac.uk · Scrum Master Course ... • Plan the first iteration: define the Sprint Backlog, the ... – Zero overlap between work items

10/4/11

13

© Zühlke 2011 Scrum Master Course | Daryn Holmes, Karen Paludan

Story Map to Plan

time

nece

ssity

mandatory

more necessary

less necessary

First Sprint Second Sprint

28. June 2011 Slide 25

© Zühlke 2011 Scrum Master Course | Daryn Holmes, Karen Paludan

Release Cycle

Sprint 1 Sprint n Sprint 2 ... Sprint m ... ...

Release 1 Release 2 ...

• Each sprint should be releasable

• ..but cost of deployment may be too high

- User training, shipping cost, sys-admin time, etc

• Keep to release dates as far as possible

- Teams work better with fixed iteration lengths

- Adjust iteration content rather than move dates 28. June 2011 Slide 26

Page 14: Agile, Estimation and Projects - cs.bham.ac.uk · Scrum Master Course ... • Plan the first iteration: define the Sprint Backlog, the ... – Zero overlap between work items

10/4/11

14

© Zühlke 2011 Scrum Master Course | Daryn Holmes, Karen Paludan

Revise Estimates and Projections

Product

Release

Sprint

Story

Increasing frequency of feedback

(years)

(months)

(weeks)

(days)

Test (hours)

28. June 2011 Slide 27

© Zühlke 2011

Essay

“What techniques exist for estimating the cost and duration of software development projects and what evidence is there for their effectiveness in helping project deliver on-budget and on-time?”

28. June 2011 Scrum Master Course | Daryn Holmes, Karen Paludan, Keith Braithwaite Slide 28

Page 15: Agile, Estimation and Projects - cs.bham.ac.uk · Scrum Master Course ... • Plan the first iteration: define the Sprint Backlog, the ... – Zero overlap between work items

10/4/11

15

© Zühlke 2011

Daryn Holmes, Karen Paludan, Keith Braithwaite

Questions?

28. June 2011 Slide 29