Planning in XP

planning loops

(from https://en.wikipedia.org/wiki/Extreme_programming)

Project Phases

This is not waterfall! These phases often overlap and recur.

Recurring Meetings

Stories

Story Types

Story Independence

Story Body Template

Story titles should be brief; story bodies should follow this pattern:

AS A ____      [role]
I WANT TO ____ [action]
SO THAT ____   [motivation]

Notes: * If you write "As a user" you're probably doing it wrong -- use a more specific role name instead * "I want to" should be an action, not just a desire

Acceptance Criteria

Acceptance Criteria Template

GIVEN ____ [precondition]
WHEN ____  [action]
THEN ____  [postcondition/assertion]

Sample Story

Title: Sign Out

Body: As a user, I want to sign out of the application, so that my other family members can't use my account

Acceptance Criteria:

Given I am signed in as a normal user
When I look at the nav bar
Then I see the "Sign Out" button

Given I am signed in as a normal user
When I click on the "Sign Out" button
Then I am returned to the home page

Given I am signed in as a normal user
When I click on the "Sign Out" button
Then I cannot view the "Edit Profile" page

Given I am not signed in
When I look at the nav bar
Then I do not see the "Sign Out" button

Backlog

A backlog is a list of stories

that have been written,

estimated,

and prioritized

in linear order

Planning Meeting

Estimation and Prioritization

The customer gets to say how soon; the coders get to say how hard

Estimation

Easy as 1-2-3

In general...

A point is not a promise of time, but is an estimate of effort

Points can also be awarded for complexity or risk or mystery

Prioritization

How to Prioritize?

It’s up to the customer, BUT here are some guidelines:

Acceptance Meetings

Acceptance Meetings: Coders Welcome!

Planning Meetings: Coders Welcome!

The goal is for any coder to be able to work on any story (maybe with help from the right pair partner).

Retrospectives

Project Planning with Pivotal Tracker

>> Lean Product Design >> << Inceptions <<

Outline

[contents]

Planning Slides - Code Like This

/

#