agile stories, estimating and planning

40
Agile Stories, Estimating and Planning www.torak.com Vision Roadmap Release Iteration Daily Story

Upload: dimitri-ponomareff

Post on 12-May-2015

6.852 views

Category:

Technology


3 download

TRANSCRIPT

Page 1: Agile stories, estimating and planning

Agile Stories, Estimating and Planning

www.torak.com

Vision

Roadmap

Release

Iteration

Daily

Story

Page 2: Agile stories, estimating and planning

About Dimitri PonomareffDimitri Ponomareff (www.linkedin.com/in/dimka5) is a Coach. Whether it's a sports team, software products or entire organizations, Dimitri has that ability to relate and energize people. He is consistently recognized as a very passionate and successful change agent, with an overwhelming capacity to motivate and mobilize teams on their path to continuous improvements. He is a master facilitator, as well as a captivating speaker with consistent, positive feedback regarding his ability to engage an audience.

www.torak.com

As a certified Coach, Project Manager and Facilitator of "The 7 Habits of Highly Effective People", Dimitri brings a full spectrum of knowledge in his delivery of methodologies. Through teaching by example, he is able to build teams of people who understand where to focus their work to generate the most value.

He has coached and provided tailor-made services and training for a multitude of organizations. The short list includes, American Express, Charles Schwab, Bank of America, Morgan Stanley, Choice Hotels International, JDA Software, LifeLock, First Solar, Mayo Clinic and Phoenix Children's Hospital. Dimitri enjoys his work, and does everything to ensure he shares his knowledge with others who seek it.

Page 3: Agile stories, estimating and planning

Agile background for stories, estimating and planning

● The Agile Manifesto

● Communication

● PDCA - Plan, Do, Check, Act

● Why, What & How

www.torak.com

Page 4: Agile stories, estimating and planning

The Agile Manifesto

We are uncovering better ways of developing software by doing it and helping others do it.

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 on the right, we value the items on the left more.

Source: www.agilemanifesto.org

www.torak.com

Page 5: Agile stories, estimating and planning

Project Management is all about communication

People who want IT must communicate with people who can build IT.

www.torak.com

Page 6: Agile stories, estimating and planning

Effective communication

Agile Software Development: Communicating, Cooperating TeamsBy Alistair Cockburn - Aug 10, 2009

www.torak.com

Page 7: Agile stories, estimating and planning

PDCA - Plan, Do, Check, Act

ACT

PLAN DO

PDCACycle

CHECK

Continuous Improvements

www.torak.com

Page 8: Agile stories, estimating and planning

Why, What & How

●WHY are we doing this?Voice of the stakeholder (Stakeholders)

●WHAT needs to be done?Voice of the user (Product Owner, Subject Matter Expert)

●HOW do we build it?Voice of the developer (Scrum Team)

www.torak.com

Page 9: Agile stories, estimating and planning

Agile Stories

● Work breakdown structure (WBS)● What is a story?

○ Story form○ Cards - Conversation - Confirmation

● Story writing workshops ○ Epics and story breakdown ○ INVEST guideline

● Stories vs. Use Cases vs. Requirements● Product Backlog of stories

www.torak.com

Page 10: Agile stories, estimating and planning

Alternative to Work Breakdown Structure (WBS)

Activity

Functionality

Analysis Design Coding Testing

Feature Feature Feature Module Module Module

WBS or traditional projects

Functionality

Activity

Story Story Story Story

Analysis Design Coding

Feature Breakdown Structure

Testing

Define the project plan in terms of what will be delivered rather than what work steps will be performed.

www.torak.com

Page 11: Agile stories, estimating and planning

What is a User Story?

● User Stories provide a light-weight approach to managing requirements for a system.

● A short statement of function captured on an index card and/or in a tool.

● The details are figured out in future conversations between the team and the product owner or customers.

● This approach facilitates just in time requirements gathering, analysis and design by the following activities:

○ Slicing user stories down in release planning○ Tasking user stories out in sprint planning○ Specifying acceptance test criteria for user stories early in development

www.torak.com

Page 12: Agile stories, estimating and planning

Story form

As a < role >I can < activity >

so that < business value >

● Role - represents who is performing the action. It should be a single person, not a department. It may be a system if that is what is initiating the activity.

● Activity – represents the action to be performed by the system.

● Business Value – represents the value to the business. Why is this story important?

www.torak.com

Page 13: Agile stories, estimating and planning

Acceptance criteria● like stories it's written in simple language

● define the conditions of success/satisfaction

● provide clear story boundaries

● remove ambiguity by forcing the team to think through how a

feature or piece of functionality will work from the user’s perspective ● checklist or template of things to consider for each story

○ list of impacted modules and/or documents ○ specific user tasks, business process or functions

● establish the basis for acceptance testing

○ steps to test the story (given-when-then scenarios)○ type of testing (manual vs. automated)

www.torak.com

Page 14: Agile stories, estimating and planning

The 3 C's

1. CardWritten on a card

2. ConversationDetails captured in conversations

3. ConfirmationAcceptance criteria confirm that the story is Done.

Source: XP Magazine 8/30/01, Ron Jeffries

As a user, I can login and gain access to the intranet, so that I can collaborate with all the organization.

What about expired

accounts? Can it remember my login?

- Expired accounts fail

- Remember the login, not the password

- After 3 attempts the account is locked out for 24h (SOX compliance)

www.torak.com

Page 15: Agile stories, estimating and planning

Story writing workshops● define clear roles: facilitator and story writer (capture)

● include the entire team and anyone who can express the WHAT aligned to the WHY (subject matter experts, users, customers, etc...)

○ all participants must stay away from the HOW○ promote open discussion and use open ended questions

● consider using story-boarding technique○ work around themes/features○ begin with the end in mind

● write as many stories as possible, plan for 2-4 hours○ no need for prioritization○ high level acceptance criteria

www.torak.com

Page 16: Agile stories, estimating and planning

Product, Epics & Stories

Story Story Story

Story Story Story

Story Story Story

Story Story Story

Story Story Story

Story Story Story

Product

Epics

Stories

www.torak.com

Page 17: Agile stories, estimating and planning

Start with Epics and break down into Stories

As a frequent flyer, I want to rebook a room I take often

As a frequent flyer, I want to book a room

using miles

As a frequent flyer, I want to request an

upgrade

As a frequent flyer, I want to check if my upgrade cleared.

As a frequent flyer, I want to book a room.

As a frequent flyer, I want to check my

account.

As a frequent flyer, I want to …

Frequent flyer

www.torak.com

Page 18: Agile stories, estimating and planning

INVEST guideline from Bill WakeI - IndependentThe user story should be self contained, in a way that there is no inherent dependency on another user story.

N - Negotiable User stories, up until they are part of a Sprint, can always be changed and rewritten.

V - Valuable A user story must deliver value to the end user.

E - EstimableYou must always be able to estimate the size of a user story.

S - Sized appropriately User stories should not be so big as to become impossible to plan/task/prioritize with a certain level of certainty.

T - TestableThe user story or its related description must provide the necessary information to make test development possible.

www.torak.com

Page 19: Agile stories, estimating and planning

Stories vs. Use Cases vs. Requirements

Stories Use Cases Requirements

Goal generate conversation capture a behavior establish a contract

Scope a single activity a process"day in the life" everything

Format a single sentence numbered bullets specifications

Completeness open for negotiation and refinements

locked, changes may impact entire process

locked, require scope change and approvals

Language simple, comprehensible structured, flows precise, technical

www.torak.com

Page 20: Agile stories, estimating and planning

Product Backlog of stories

● a list of all desired work on the project “The requirements”

● owned, managed and prioritized by the Product Owner

● items estimated by the team

● re-prioritized at the start of each iteration

● ideally expressed such that each item has value to the users or customers of the product

www.torak.com

Page 21: Agile stories, estimating and planning

Estimating

● The cone of uncertainty● What is estimation?● Estimation tools/techniques● Story estimation

○ Story points○ Task board○ SMART tasks ○ Burn-down chart

www.torak.com

Page 22: Agile stories, estimating and planning

The Cone of Uncertainty

www.torak.com

Page 23: Agile stories, estimating and planning

What is estimation?

● Estimationcalculated approximation of a result which is usable even if input data may be incomplete or uncertain

● Estimateto judge tentatively or approximately the value, worth, or significance of

● Point estimationestimation in which a single value is assigned to a parameter

www.torak.com

Page 24: Agile stories, estimating and planning

Estimation tools: T-shirts, Points & Hours

Cone of Uncertainty

13853210 20 ?

Hours

XS S XLLM

www.torak.com

Page 25: Agile stories, estimating and planning

Story Estimation

Size DurationCalculation

240 miles 4 hoursSpeed60 MPH

180 points 6 sprintsVelocity30 pts/sprint

www.torak.com

Page 26: Agile stories, estimating and planning

Story Points

● Measure “bigness”○ COMPLEXITY – How difficult it seems?○ EFFORT - How much of it there is?○ RISK - Current knowledge (uncertainty)

● Relative values○ Unit-less (dog points)○ Use analogy – triangulate with other stories

● Estimation values○ 0, 1, 2, 3, 5, 8, 13, 20, 40, 100○ Planning poker

www.torak.com

Page 27: Agile stories, estimating and planning

An task board

www.torak.com

Page 28: Agile stories, estimating and planning

SMART TasksThis is the same SMART approach used with setting effective goals but for tasks.

S – SpecificThe task is specific enough that everyone can understand what's involved and prevents overlapping.

M – MeasurableThe team can measure that the task is Done. This requires the team to have a clear definition of Done.

A – AchievableThe task is achievable by whoever from the team takes on this work.

R – RelevantEvery task should be relevant by contributing directly to a story and each task can be explained/justified.

T – Time-boxedA task should be time-boxed by setting the right expectation for how long it should take to complete the task.

www.torak.com

Page 29: Agile stories, estimating and planning

Sprint Burn-down

www.torak.com

Page 30: Agile stories, estimating and planning

A sprint backlog

● Individuals sign up for work of their own choosing - work is never assigned● Estimated work remaining is updated daily● Any team member can add, delete or change the sprint backlog● Work for the sprint emerges● If work is unclear, define a sprint backlog item with a larger amount of time

and break it down later

Tasks Mon Tue Wed Thu FriCode the user interface 8 4 8 0 0Code the middle tier 16 12 10 4 0Test the middle tier 8 16 16 11 8Write the online help 12Write the foo class 8 8 8 8 8Add error logging 8 4 0

www.torak.com

Page 31: Agile stories, estimating and planning

Planning

● Planing process

● Levels of planning ○ Release planning○ Iteration planning○ Daily planning

www.torak.com

Page 32: Agile stories, estimating and planning

Planning processProduct

Roadmap

R1 R2 R3 Rn

Release 1

SP1

Iteration 1

ST1 STnST3ST2

Iteration n

ST1 STnST3ST2

Story 1

T1 TnT3T2

Story n

T1 TnT3T2

SPnSP3SP2

Release n

SP1 SPnSP3SP2

www.torak.com

Page 33: Agile stories, estimating and planning

Levels of planning

Release Plan (months)

Iteration Plan (weeks)

Daily Plan (days)

Product Backlog

Sprint Backlog

Stories

Tasks

ActivitiesActivitiesActivities

www.torak.com

Page 34: Agile stories, estimating and planning

Release planning

● Overall context and prioritization for a specific period of time

● Product Owner○ Creates a goal for the release○ Selects a number of user stories from the product backlog○ Works with the team to decompose and estimate the user stories

● The outcome of the release planning process is

○ Release Data Sheet○ Release Backlog ○ Release Burndown Chart

www.torak.com

Page 35: Agile stories, estimating and planning

Iteration planning

● Team selects stories from the product backlog they can commit to completing

● Sprint backlog is created○ Tasks are identified and each is estimated in hours○ Tasks and estimates are done collaboratively

● High-level design is considered

As a vacation planner, I can see photos of the hotels, so that ...

8 points

Tasks Hours

Code the middle tier 8Code the user interface 4

Write test fixtures 4

Code the foo class 6

Update performance tests 4

www.torak.com

Page 36: Agile stories, estimating and planning

Daily planningParameters

● Daily● 15-minutes● Stand-up● Not for problem solving

Three questions for each scrum team member1. What did you do yesterday?2. What will you do today?3. Is anything in your way?

These are not status for the Agile Project Manager, they are commitments in front of your peers

www.torak.com

Page 37: Agile stories, estimating and planning

Agile Coaching, Staffing and Training.

Learn more at www.torak.com

Learn more at www.AgileTestingFramework.com

Page 38: Agile stories, estimating and planning

Thank You

www.torak.com

Page 39: Agile stories, estimating and planning

Resources and References

● www.scrumalliance.org ● www.mountaingoatsoftware.com/scrum● www.controlchaos.com

● Agile and Iterative Development: A Manager’s Guide by Craig Larman● Agile Estimating and Planning by Mike Cohn● Agile Project Management with Scrum by Ken Schwaber● Agile Retrospectives by Esther Derby and Diana Larsen● Agile Software Development Ecosystems by Jim Highsmith● Agile Software Development with Scrum by Ken Schwaber and Mike Beedle● Scrum and The Enterprise by Ken Schwaber● User Stories Applied for Agile Software Development by Mike Cohn

www.torak.com

Page 40: Agile stories, estimating and planning

This presentation was inspired by the work of many people and we have done our very best to attribute all authors of texts and images, and recognize any copyrights. If you think that anything in this presentation should be changed, added or removed, please contact us.

http://creativecommons.org/licenses/by-nc-nd/3.0/

www.torak.com