Você está na página 1de 13

Becoming an Agile Enterprise

Exercise: Using planning poker to estimate COD and calculate WSJF


This exercise builds on the plann
earlier. Youll be put back into t in g p o k er simulation you did
team. This time, youll be given t h e S la c k channel with your
time youll also get dependencies h e s a m e user story, but this
planning poker to estimate cost f o r it . N o w your job is to use
with your earlier size and value o f d e la y ( C OD), and combine it
estimates to calculate WSJF.
2017 Stellman and Greene Consulting LLC https://www.stellman-greene.com
Becoming an Agile Enterprise

In this exercise, youll be put in back in a


Slack channel, and this time youll
estimate the cost of delay (COD) and
calculate WSJF for those same user story.

Weve added information about dependencies to your story. This time, youll use
planning poker to estimate the cost of delay (COD) for it, taking dependencies into
account. Youve got more time to converge on an estimate with your team. If you do,
user your earlier size and value estimates to calculate WSJF for the story.

2017 Stellman and Greene Consulting LLC 2


Becoming an Agile Enterprise
Practice focus: Planning poker

Here are the


rules of Planning Planning poker is a simple
Poker from the
live presentation. collaborative estimating technique
Setup: Find an example story that represents 1 point. Choose a moderator (can be anyone on the team). If
playing in person, give everyone cards with possible estimate values (like 0, 1, 2, 3, 5, 8, 13, 20, 40, 100, and ).

Start: Moderator reads the story. The team


discusses the story (but not the estimate). Step 1: Each person decides on an estimate.
in person: place the card face-down
via IM: send the estimate to the moderator
Step 3: If everyone agrees, were done!
Otherwise, the people with the highest
and lowest values explain their thinking.
Then the team returns to Step 1.
Step 2: The moderator tells everyone to flip
their cards (or if via IM, sends all estimates).

It usually only takes two or three rounds before the


converges on an estimate. Then they move on to the ne te am
3
xt story.
2017 Stellman and Greene Consulting LLC
Becoming an Agile Enterprise
Practice focus: Planning poker over Slack

This is the same


slide from the How to play Planning Poker with a
first exercise. team of strangers in Slack
Setup: You have been added to a Slack channel. Click the channel name in the upper right-hand side of the screen. If youre
at an office that blocks Slack, you can use your mobile phone. Your instructor will be the moderator. This goes really fast!
Start: The moderator gives you a baseline 1-point story,
assigns a story to your slack channel, and indicates
whether youre estimating size or value. You will play Step 1: The moderator will give you one minute to
up to two rounds of planning poker for each estimate. read the story and have a very quick discussion by
posting short messages in your Slack channel.

Step 3: If everyone agrees, then youre done! If at least two


people disagreed, then youll return to Step 1 and play
another round. Only the people with the highest and lowest
estimates will participate in the discussion this time.
Step 2: The moderator will give you 10 seconds to choose a number
from this list for your estimate: 1, 2, 3, 5, 8, 13. You dont have to be
perfect! When time is up, post your estimate in the Slack channel.
In many cases, teams converge after 2 or 3 rounds, but
youve got
a very tight time limit. How close can you and your te 4
am come?
2017 Stellman and Greene Consulting LLC
Becoming an Agile Enterprise

This slide about


WSJF was in the The WSJF Scheduling Principle: When job durations and delay costs
are not homogeneous, use WSJF.
presentation. When both task durations and delay costs are different, we have both the
most complex situation and the most common
one. In such cases, the best strategy is to do the weighted shortest job firs
t (WSJF). In this case, we set priority based on
a jobs duration and its cost of delay. We base priority on delay cost divide
d by task duration. This is a useful scheduling
metric because it uses data from a single job to determine the jobs priori
ty.
Donald Reinertsen, The Principles of Product Development Flow: Sec
ond Generation Lean Product Development (2012)

Reinertsen gave us this simple formula for WSJF:


Write the WSJF in the corner 1.6
WSJF = COST OF DELAY TASK DURATION
When the team estimates Cost of Delay (COD) for a
But since most agile teams use a relative sizing
story, they judge it relative to the other stories. When
method (like points) instead of duration, they can estimating COD, things they think about include:
use SIZE and value to calculate WSJF instead: Actual cost: How much money would the company
make if we deployed the feature today?
WSJF = (COD + VALUE) SIZE Internal Dependencies: What other stories will
The team can use planning poker to estimate the
need to wait for this one if we dont do it now?
COD, Size, and value of each story, compute the External Dependencies: Will other teams need to
WSJF, and write it on the story card. delay their work if we dont deliver this story?

2017 Stellman and Greene Consulting LLC 5


Becoming an Agile Enterprise
Practice focus: Using WSJF to prioritize the backlog

This slide about Use Weighted Short Job First (WSJF)


WSJF was also in
the presentation. to Order the Product Backlog
Check current cash level
When teams estimate the size of each story 2.2 These two stories
have the same size.
in points, they often end up with many stories As a bank manager, We need more
that have approximately the same size. That I want to check how much cash is in the ATM information in order
to prioritize them.
can make it difficult to figure out which ones so that I can find out if it needs to be
refilled soon
to prioritize first. But once the team is good Pay my credit card bill
at using planning poker to estimate size and 3.2
value, they can also use it to estimate COD Size = 5, Value = 8, COD = 3
As a bank customer,
and calculate WSJF for every story. Now the By estimating the I want to pay the bill for my credit
Product Backlog can be sorted by WSJF, and SIZE, value, and card issued by this bank
COD for each story, so that I dont have to remember to do
Sprint Planning can start by looking at the the team could it later.
stories with the highest WSJF first. calculate the WSJF
and sort them in Size = 5, Value = 3, COD = 13
decreasing order
WSJF is useful because it helps the team identify the
low-hanging
fruit. Small stories with high value rise to the top of 6
the backlog.
2017 Stellman and Greene Consulting LLC
Becoming an Agile Enterprise

Just like last time, you dont need to be an expert to


take part in planning poker. You do need to listen
to the other people on your team, because you may
have made an assumption about the work that isnt
correct, and your teammates will help you find it.

Once again, if theres information you dont know in order to estimate the cost of
delay (COD), use your common sense and take an educated guess. Again, be
reasonable, consistent and realisticdont go overboard and make up ridiculous
stuff. Get through as many user stories as you can. For the last minute of the
exercise, have a quick discussion about which story you would prioritize first.

2017 Stellman and Greene Consulting LLC 7


Becoming an Agile Enterprise

The rest of these slides contain user stories.

Weve added red dependency cards to help you calculate


COD. Just like last time, you dont have a lot of information,
so use your common sense and take an educated guess.
About those red de
pendency cards
In some cases, your
another team. But t e a m depends on
another team depen in o t h er cases
to you to decide ho d s o n yours. Its up
w that affects COD
.
2017 Stellman and Greene Consulting LLC 8
Becoming an Agile Enterprise

Front of card Cancel the session immediately Use a web browser from the ATM

Front of card
As a bank customer, As a bank customer,
I want to press a button and cancel my I want to browse certain websites
session before I enter my PIN so that I can open up a web
so that I can quickly end the session if I browser and view certain pages You used this stor y as your
put the wrong card in the machine on the banks website reference for a 1-point
reference for value. No other
teams are depending on this, so
you can also use it as a 1-point
This was the 1-point Use a web browser from the ATM reference for COD.
reference stor y for

Back of card
size estimates. * After entering the PIN, the user can
Cancel the session immediately open a browser from the main menu
Back of card

* The user can cancel the session * The user can choose from a set of
web pages to view
before entering the PIN
* The web page is rendered correctly,
but only approved links can be
navigated
The web browser connects to a
custom-built web proxy that filters
out pages and links that are not on
an approved list. This depends on the
server team to build the proxy and a
UI for maintaining approved lists.

2017 Stellman and Greene Consulting LLC 9


Becoming an Agile Enterprise

View and pay credit card bill Live video customer service

Front of card
Front of card
As a bank customer, As a bank customer,
I want to view or print my credit I want to talk to a customer service
card statement and pay it from my representative via live video chat
account so that I can get help if something
so that I can manage my credit goes wrong with my transaction
card in one convenient place

View and pay credit card bill Live video customer service

Back of card
Back of card

* The user can view the card balance * The user can start a live video
chat with customer service from
* The user can view recent statements, the main menu or a special button
and print if the ATM has a printer if available
* The user can pay some or all of the * The customer service
balance and print a confirmation representative can make the ATM
dispense cash from the users
* The user can report a lost card account

The team that maintains the system The team that builds software for
that handles credit card payments is the customer service center needs
waiting for the ATM team to finish another few sprints to finish their
the credit card payment feature piece. Theyll give our team a
before they start implementing an complete library that we can include
important stats logging service. with little extra work.
2017 Stellman and Greene Consulting LLC 10
Becoming an Agile Enterprise

Front of card Use audio cues for all features Fast cash withdrawal

Front of card
As a vision impaired bank customer, As a bank customer,
I want to use the most common I want to withdraw cash with one
features of the ATM with audio cues button press
so that withdraw cash and do other so that I can quickly conclude my
activities without relying on eyesight session without going through a lot
of menu options
Use audio cues for all features Fast cash withdrawal
Back of card

Back of card
* The user can easily put the ATM * The user can withdraw a pre-set
into visually impaired mode amount of cash immediately after
* The user can withdraw cash in entering the PIN
visually impaired mode * The user can set the fast cash
* The user can check the account withdrawal amount from the main
balance in visual impaired mode menu or the personal banking website

The hardware team working on the The consumer banking website team
ATM kiosks enabled for vision will add a feature to let users set
impaired cant finalize their design their fast cash withdrawal amount,
or begin manufacturing until this so theyre delaying a major upgrade
feature is completed. to their preference storage system
until this ATM feature is complete.
2017 Stellman and Greene Consulting LLC 11
Becoming an Agile Enterprise

Remotely check cash levels Put the ATM in maintenance mode

Front of card
This user story has
Front of card
As a bank branch manager, As a bank branch manager,
I want to check the amount of cash two dependency I want to put the ATM in
in the ATMs safe remotely cards. One of them maintenance mode
so that I can monitor all of the so that it displays an in service
ATMs in my branch without leaving is identical to a car message while were adding cash,
my desk attached to the d changing the receipt paper roll, or
next user story. doing repairs

Remotely check cash levels Put the ATM in maintenance mode

Back of card
Back of card

* Each cash machine updates a server with * The bank branch manager can put
its current cash levels the ATM in maintenance mode via a
* The bank manager can check cash levels via web page or from the machine itself
a web page * Maintenance mode can be optionally
* Cash machines that have different set to turn itself off after a delay
denominations update their levels correctly * The ATM displays an in service

The cash level API is in a system The web page used by the bank
thats going through a major The web page used by the bank branch manager is in a third-party
upgrade. The team that maintains it branch manager is in a third-party maintenance system, and our company
asked if we could move this work maintenance system, and our company has to go through a contractor to
forward by two sprints so they can has to go through a contractor to add features. This costs extra, and
gauge the performance of the API. add features. This costs extra, and sometimes requires a long lead time.
Remotely checka cash
sometimes requires levels
long lead time.
2017 Stellman and Greene Consulting LLC 12
Becoming an Agile Enterprise

Dispense stamps ATM soft ware upgrade

Front of card
Front of card
As a bank customer, As a system administrator,
I want to buy postage stamps using I want to initiate a software
my checking or savings account upgrade remotely
so that I dont have to go to the so that I can deploy an updated
post office version of the ATM software

Dispense stamps ATM soft ware upgrade

Back of card
Back of card

* The user can choose to buy a book of * A system administrator (SA) can
20 stamps from the main menu remotely deploy a new version of the
* Buying stamps is treated like a ATM software
withdrawal for the cost of the stamps * The SAs identity and the software
* The ATM can detect whether or not must be confirmed via crypto key
it is capable of dispensing stamps or if * The SA can roll the software back
its out of stamps
There are regulatory requirements
The hardware team working on the for all security related features,
ATM kiosks is waiting to choose from including an audit by our security
two different stamp hardware contractor. It usually takes several
vendors until they see an early months to schedule the audit, but
working version of our software. theres a last-minute opening if we
can finish this in the first sprint.
2017 Stellman and Greene Consulting LLC 13

Você também pode gostar