IS IT DONE YET?
… HOW ABOUT NOW?
MICHELE PLAYFAIR
DDD PERTH 2019
Hi Perth!
This talk will give you some ideas about tools and techniques to use when you hear
your manager say "We just need to get better at estimating". If you have ever wished
for a crystal ball to help you predict the team's future, this talk is for you!
1
Many thanks to all the wonderful sponsors that make this event affordable –
including YOW!... YOW! Perth coming up in September, come and see us ☺
I would also like to give some love to all the organisers who have ONCE AGAIN done a
fantastic job crafting DDD Perth. THANK YOU!!!
2
micheleplayfair#DDDPerth
REAL AGILE WORKPLACES
DON’T HAVE DEADLINES
Once upon a time, when Agile and I were young… I was working in a Agile-ish
company, which still had projects, deadlines, and the associated overtime and
weekend-free death marches.
I figured that if we ONLY did this Agile thing PROPERLY then we wouldn’t have these
stupid deadlines and life would be beautiful....
Then I started working for a company that had pretty mature product development,
people were experienced and understood agile ways of working and YET we still had
some deadlines and end dates!!
What is going on???
3
micheleplayfair#DDDPerth
In my case there were government legislation related dates that need to be met, and
compliance is not optional if you want to stay in business
- I worked on teams that were creating solutions for two of these
4
micheleplayfair#DDDPerth
Maybe you’re working to meet another kind of event-related immovable date
5
micheleplayfair#DDDPerth
Photo by Pixabay
Maybe there’s a race against your competition to get a product to market first – we
had that as well!
6
micheleplayfair#DDDPerth
Photo by Pixabay
Maybe there’s some kind of staffing dependency and you’re going to lose people on a
certain date
Maybe you announced features to your user base - made a public commitment to
customers that you will deliver something.
If you do this too often without living up to it, you get….
7
micheleplayfair#DDDPerth
https://www.elonmusk.today/
Elon Musk Today – a site entirely dedicated to tracking Elon’s promises made on
Twitter!!
Hell hath no fury like a customer scorned.
8
micheleplayfair#DDDPerth
REAL AGILE WORKPLACES
DON’T HAVE DEADLINES
… said nobody ever
So where did this impression come from?? It’s not in the Agile Manifesto… it says
“sustainable pace” but nothing says “we value not having deadlines”
I figure there are a couple of factors at play here… First, companies that we’re told
have the “best agile working” - like Facebook, Google, Spotify, Twitter, Netflix – I have
never seen them make a public commitment to producing a feature by a certain time.
The updates just "appear" whether we like it or not. Sometimes in the case of Google
products you can go back to the previous version - for a short a/b period, before
you're forced to take the latest.
And sometimes you just get…
9
micheleplayfair#DDDPerthMing Johanson on LinkedIn 17 Jul 19
This.
Cheers Ming for this timely observation!!
Does your company work this way or more to the point, is it even possible for them
to do this to their customers and stay in business?
10
micheleplayfair#DDDPerth
If you could come in
on Sunday too, that
would be great.
Yeah, I’m going to
need you to go
ahead and come
in on Saturday…
Second issue is that so many people associate “deadlines” – even the word DEADLINE
- with the big push at the date looms closer, where your weekends and your life
disappears along with your sleep
And like I did, they hope that in a better, more AGILE work environment, this
deadline-induced misery would disappear… where’s my sustainable pace?!
11
micheleplayfair#DDDPerth
DOES IT HAVE TO BE LIKE THIS?
Joshua Partogi on LinkedIn 16 Jul 19
Manifesto for Deadline Driven
Development
We are uncovering bitter ways of developing
software by doing lots of overtime and helping
others do it…
Manifesto for Deadline Driven Development - We are uncovering bitter ways of
developing software by doing lots of overtime and helping others do it…
Does it have to be like this?
If we take as a given that deadlines – or milestones, or whatever you want to call
them – WILL happen….
We need to cope with the idea that sometimes you do need to know WHEN WILL IT
BE DONE and IS IT DONE YET? – while avoiding the mini-waterfall death march
12
OBVIOUSLY THE ANSWER IS….
Or is it?
Because if we only did this part RIGHT then we would *know* when we would finish!
Easy peasy.
13
micheleplayfair#DDDPerth
We need to
get better at
estimating!
To many managers, the existence of an estimate implies the existence of an “actual”,
and means that you should compare estimates to actuals, and make sure that
estimates and actuals match up. When they don’t, that means people should learn to
estimate better. (Ron Jeffries)
I have heard senior people say this!!
Do you really want to spend time getting better at estimating??
14
micheleplayfair#DDDPerth
“
”
WASTE IS ANYTHING THAT DOES
NOT ADD VALUE TO A PRODUCT,
VALUE AS PERCEIVED BY THE
CUSTOMER.
Poppendieck – “Lean Software Development”
In “Lean Software Development” Mary & Tom Poppendieck wrote that “Waste is
anything that does not add value to a product, value as perceived by the customer.”
By this definition, time spent estimating is waste and should be minimised with the
view to eliminating it. I’m not gonna say NOESTIMATES because that summons trolls
– what I will say is that you should spend LESS time on estimating, not MORE.
BUT we still need a way to know WHEN WILL IT BE DONE? So what is the
alternative??
15
micheleplayfair#DDDPerth
SIMPLE, TRANSPARENT AND PREDICTABLE
First goal: We want to make the work as simple, transparent and predictable as
possible
16
micheleplayfair#DDDPerth
“
”
PREDICTABILITY IS IMPROVED BY
BEHAVING AND DELIVERING MORE
PREDICTABLY, NOT BY MAKING
PREDICTIONS.
- Neil Killlick
Neil Killick has observed that “Predictability is improved by behaving and delivering
more predictably, not by making predictions.”
We want to put something valuable into the hands of users sooner rather than later,
then iterate on it in a rhythm.
Getting regular feedback along the way.
17
micheleplayfair#DDDPerth
I’m sure many of you have seen this drawing by Henrik Kniberg before.
Assuming in this case what I am trying to do is “get somewhere faster than
walking.” I can quickly deliver a skateboard and then get feedback from users which
might have been, “I like the wheels idea but I am afraid of falling off and it’s still hard
work” - then you next produce a scooter.
NONE of these is The Perfect Solution but each is better than the previous.
If we only made it to step 3 by the “Deadline” - are we OK? I say yes we are!
Note that if we were in a waterfall project, our “requirements” would have most
likely been to build the car!! And look where we are at step 3, we can’t use it.
Sounds good in theory but how do we actually DO this fast, predictable delivery
thing??
18
micheleplayfair#DDDPerth
STORY MAPPING – JEFF PATTON
First recommendation, use Story Mapping – this is some real secret sauce and if you
haven’t read User Story Mapping I suggest you get your hands on a copy, you won’t
regret it.
The story map describes what users will do to reach a goal, over time going left to
right the same way you would tell a story to someone else.
The backbone across the top is made of higher-level activities that represent groups
of tasks done at similar times to reach the goal
Below that in the body of yellow stickies are the user tasks – short verb phrases –
that are a breakdown of the higher level above. Using one of the examples from
Jeff’s book, you might have a summary task of “get cleaned up in the morning” and
the user tasks might be “have a shower”, “do my hair”, “shave”, “put makeup on” etc
What you have now is something that is simple – story to explain what users want to
achieve – and transparent – if its on a wall where anyone can see it!
19
micheleplayfair#DDDPerth
STORY MAPPING – JEFF PATTON
Once you have your map laid out you can identify a set of tasks that could form a goal
and literally draw a line under them to form a “slice” – something you could release
to a customer to get their feedback
Summary – go for GOOD ENOUGH then BETTER then BEST. If you have a deadline
work towards getting the GOOD ENOUGH version into your users hands as soon as
you possibly can and iterate from there.
20
micheleplayfair#DDDPerth
Here’s one from Real Life!!
You can see the first major release slice was the “compliance goal” – we used goal
instead of deadline as it’s less scary - this was the Minimum Viable Product – the
skateboard from Henrik Knieberg’s drawing
Next release would have made it nicer for users and added some extra functions –
and you get the bicycle
Third one was the really awesome bells and whistles one – the car, if you will. We
also had smaller slices of bits of it along the way that we gave to users for feedback
which was very helpful
21
micheleplayfair#DDDPerth
“EASY AGILE STORY MAP FOR JIRA”
This is a 3rd party add on called “Easy Agile Story Map for JIRA” - I assume there are
people here using JIRA? (if anyone boos – you don’t hate JIRA, you hate whoever
configured it at your workplace and maybe the managers who think it’s magical!)
Physical boards are awesome for planning but if you use JIRA I really recommend
getting this little add-on to storymap inside JIRA eg for remote teams or places where
the dang board is too big for the wall or to match JIRA to your physical board.
It Just. Makes. Things. Easier.
22
micheleplayfair#DDDPerth
STORY POINTS
Crisp.se
So now we’ve got our map of user tasks / stories to work with. I was really bothered
about all the time spent in meetings arguing about whether a story is a 3 or a 5 – and
don’t even get me started on the constant conversions to and from points and time
“umm so if that takes a week it will be a 3”, “we’ve got a total of 9 points so that’s..
What, 2 weeks? 3?”
It just seemed like a waste! But you NEED story points if you’re going to be agile,
right?
23
micheleplayfair#DDDPerth
STORY POINTS - ?
Then I saw this from Ron Jeffries talking about how to size stories: 1, 2, too big – days
not points. And I thought – yeah that sounds better
Who’s Ron Jeffries?
24
micheleplayfair#DDDPerth
STORY COUNTS NOT STORY POINTS
He’s the guy who may have invented Story points and has been apologising since for
how they are misused.
Break the work down into stories as small and uniform as possible, try for consistent
sizing – 1 or 2 days - and just get on with it. It won’t be perfect but it will be good
enough! Rule of thumb from Neil Killick is for each story to fulfil a single acceptance
criterion.
Once you have started the habit of working on small stories and each story is close to
the same size, you can COUNT them instead, and being predictable is much easier…
And YES! You can configure JIRA to use card counts instead of story points or time.
25
micheleplayfair#DDDPerth
THROUGHPUT & CYCLE TIME
Work Started Work Completed
(In Production)
Throughput = Number Stories Completed per Iteration
Sprint 1:
Sprint 2:
Sprint 3:
Cycle Time
hotpmo.com/blog/the-definitive-list-of-agile-metrics
Cycle time – this is the average time that it takes something to get from the start to
the end of a process. In development it’s often the time that something moved to “In
Progress” up until it’s “Done Done” or Released.
Throughput = units of work per unit of time. In this case, Throughput is the number
of DONE stories completed by a team per week or per sprint.
According to the theory of constraints, the best way to optimise is to focus on
throughput.
Teams with shorter cycle times are likely to have higher throughput, and teams
with consistent cycle times across many issues are more predictable. So that’s the
aim.
26
micheleplayfair#DDDPerth
CYCLE TIME (CONTROL CHART)
For those of you in JIRA land this is the Control Chart where you can check on your
team’s cycle time. This particular specimen is not great (1 week average!)
When your cycle time is consistent the green dots will be closer together and the
shaded area will be thinner… also you probably want to make your cycle time lower!
27
micheleplayfair#DDDPerth
FORECASTING
Forecasting - Once we’ve started to become predictable, we can more safely assume
that our past performance is a reasonable indicator of how things will go in the
future. So for example in Brisbane in summer you can reasonably safely say that
tomorrow’s weather will be “hot, chance of rain” – but in Melbourne, not so much.
Bearing in mind of course that this is all a model and all models are wrong, but some
are useful.
Now there are a number of ways to do this – here is an example of a burndown chart
from our friend JIRA where it has predicted based on your team’s previous velocity,
that there are 6 sprints remaining.
This is OK but we can do better.
28
micheleplayfair#DDDPerth
PROBABILISTIC FORECASTING
focusedobjective.com/forecasting-techniques-effort-versus-reward/
Probabilistic forecasting for weather might be “what is the chance of rain
tomorrow?”. In the forecasting software world, this is normally “what is the chance
of finishing on or before date x.”
In a probabilistic forecast we look at what percentage of the possible results were
actually “on or before date x.” This allows us to say things like, “We are 85% certain to
deliver by 7th August.”
Good news is that probabilistic forecasting relies upon the input parameters being
non-exact.
29
micheleplayfair#DDDPerthPhoto by Tumisu
http://bit.ly/SimResources
Using Arthur C Clarke’s 3rd law – any sufficiently advanced technology is
indistinguishable from magic – this brings me to the crystal ball I promised you!! This
link will take you to a github repository full of amazing resources related to
forecasting and modelling from Troy Magennis of Focused Objective
The tool I used from this treasure trove for PROGNOSTICATION is the Throughput
Forecaster.
This sheet has a lot of features that duplicate some of the things you can get directly
out of JIRA so even less work for you – yay
I set up filters on the JIRA board that let you easily see the story counts per release so
we could track to complete for each milestone/goal/deadline and then you can just
add them to the sheet.
30
micheleplayfair#DDDPerth
TEAM 1
It’s also pretty flexible, I used it with 2 teams that were working in different ways – so
here’s some data input for team 1
Team 1
- we did a Tshirt sizing (Small, Medium, Large) on future stories which will give us
the max-min number to use in “How many stories remaining to be
completed”. For the min we assume that a Large/Spike will eventually break up
into 3 stories, a Med into 2 and a small = 1. For the max, Large/Spike = 5, Med = 3,
small = 1
- Therefore the low and high on splitting is the same at 1 – because we already
included the variance in the stories to complete.
- used kanban not sprints so we did this per week
- Used historical Data – I got the number of completed stories from the “Created vs
Resolved” issues report and just entered them into another sheet.
- If you didn’t have that you could put a low-high guess in the fields at the bottom
AND YOU GET… drumroll
31
micheleplayfair#DDDPerth
What is this witchcraft?? It’s a Monte Carlo simulator – using statistics and
probability to help visualise potential outcomes.
In this case the simulator will forecast how long it will take to complete features
based on the data entered - Using this information it hypothetically completes the
work 500 times and shows you the likelihood of success by date.
For us this was such a valuable output for such little work to create. Essentially we’re
estimating CONFIDENCE as well as TIME
32
micheleplayfair#DDDPerth
Simple, transparent and provides an indicator of our predictability!! Thanks Troy!
33
micheleplayfair#DDDPerth
THE TL;DR
1. Deadlines happen
2. Spend less time estimating, not more
3. Use storymapping (even in JIRA) to break up and visualise the work
4. Story counts, not story points
5. Focus more on throughput & cycle time
6. Try the Throughput Forecaster – estimate confidence as well as time
1. Deadlines happen
2. Spend less time estimating, not more
3. Use storymapping (even in JIRA) to break up and visualise the work
4. Story counts, not story points
5. Focus more on throughput & cycle time
6. Try the Throughput Forecaster - estimate confidence as well as time.
34
micheleplayfair#DDDPerth
THE DISCLAIMER
These are things that we tried and they worked for us – please don’t do the SPOTIFY
MODEL thing and think this is what you HAVE to do!
I hope I have given you some ideas and a starting point - Do a bit more research,
experiment, tweak – INSPECT AND ADAPT
35
micheleplayfair#DDDPerth
FOR MORE INFO – SEE THE WORKS OF:
➢ Jeff Patton
➢ Troy Magennis
➢ Ron Jeffries
➢ Neil Killick
➢ Mary & Tom Poppendieck
➢ Gojko Adzic
➢ Johanna Rothman
If you want to know more about how to manage your work in an agile way while still
dealing with the reality of WHEN WILL IT BE DONE?? and IS IT DONE YET??
Look into the books and posts done by
Jeff Patton, Troy Magennis, Ron Jeffries, Neil Killick, Mary & Tom Poppendieck, Gojko
Adzic and Johanna Rothman
36
IS IT DONE YET?
… YEP
37

More Related Content

PDF
User Story Mapping, Discover the whole story
PDF
Interaction Design Beyond the Interface Workshop
PDF
Story writing and mapping.pdf
PDF
Don't demo facts. Demo stories! (handouts)
PDF
Building real things for real people 2009
PDF
Programming for Non-Programmers - SXSW Vegas 2014
PDF
M3 changing the odds
PDF
Deflecting Bullshit: How to Defend Your Work Against Terrible Feedback
User Story Mapping, Discover the whole story
Interaction Design Beyond the Interface Workshop
Story writing and mapping.pdf
Don't demo facts. Demo stories! (handouts)
Building real things for real people 2009
Programming for Non-Programmers - SXSW Vegas 2014
M3 changing the odds
Deflecting Bullshit: How to Defend Your Work Against Terrible Feedback

What's hot (19)

PDF
The first 100
PDF
Crap. The Content Marketing Deluge.
PDF
Choose Boring Technology
PDF
They Are Not Who You Think They Are
PDF
Adventures In Intrapreneurship
PDF
Keynote for Salesforce Users Group
PDF
Deck Design for Non Designers
PDF
Designing with content-first
PDF
Martyn Evans - Implementing Lean Startup
PDF
How Can Artificial Intelligence Make Business More Human?
PDF
Ux: The New Brand Leaders
PPTX
Pre production techniques - resubmission
PDF
Product design for Non Designers - Montreal Digital Nomad Meetup
PDF
Ten Lessons in Designing Content for Mobile
PDF
Brand APIs: How brands can act like middleware
PDF
Lean Startup + Story Mapping = Awesome Products Faster
PDF
UX STRAT 2013: Klemens Wengert, Implementing The Pillars Of Cool For March Ma...
PDF
Lecture to 3rd year New Media students: University of Leeds
PDF
User Story Mapping - Add a 2nd Dimension to your Flat, Product Backlog
The first 100
Crap. The Content Marketing Deluge.
Choose Boring Technology
They Are Not Who You Think They Are
Adventures In Intrapreneurship
Keynote for Salesforce Users Group
Deck Design for Non Designers
Designing with content-first
Martyn Evans - Implementing Lean Startup
How Can Artificial Intelligence Make Business More Human?
Ux: The New Brand Leaders
Pre production techniques - resubmission
Product design for Non Designers - Montreal Digital Nomad Meetup
Ten Lessons in Designing Content for Mobile
Brand APIs: How brands can act like middleware
Lean Startup + Story Mapping = Awesome Products Faster
UX STRAT 2013: Klemens Wengert, Implementing The Pillars Of Cool For March Ma...
Lecture to 3rd year New Media students: University of Leeds
User Story Mapping - Add a 2nd Dimension to your Flat, Product Backlog
Ad

Similar to Is it done yet? (How about now?) (20)

PDF
Leading Agile Product Discovery
PDF
Introduction To Agile Refresh Savannah July20 2010 V1 4
PPTX
What it Really Means to Be Agile
PDF
Software development is hard
PPTX
How To Be An Unofficial Agile Transformation Catalyst
PDF
Being agile while standing in a waterfall
PDF
Being agile while standing in a waterfall
PDF
Patton Building Better Products Using.pdf
PDF
Agile practices for management
PDF
Stop writing stories, start validating working software
PPTX
PPTX
Agile Topics - Explained Simply - Practical Agilist.pptx
PDF
Agile user story mapping
PPTX
Products and Value: An Agile Perspective BY Matt Nudelmann (GUEST PRESENTER)
PPTX
How Agile Are You Really?
PPTX
Agile marries itil
PPTX
Agile Model for Beginner’s
PDF
Get Ready For Your First Iteration
PPT
Agile Methods: Fact or Fiction
PDF
Move Over, Product: Driving True Talent Innovation Lean and Agile Style
Leading Agile Product Discovery
Introduction To Agile Refresh Savannah July20 2010 V1 4
What it Really Means to Be Agile
Software development is hard
How To Be An Unofficial Agile Transformation Catalyst
Being agile while standing in a waterfall
Being agile while standing in a waterfall
Patton Building Better Products Using.pdf
Agile practices for management
Stop writing stories, start validating working software
Agile Topics - Explained Simply - Practical Agilist.pptx
Agile user story mapping
Products and Value: An Agile Perspective BY Matt Nudelmann (GUEST PRESENTER)
How Agile Are You Really?
Agile marries itil
Agile Model for Beginner’s
Get Ready For Your First Iteration
Agile Methods: Fact or Fiction
Move Over, Product: Driving True Talent Innovation Lean and Agile Style
Ad

More from Michele Playfair (7)

PDF
Death by Powerpoint
PDF
CS In Schools
PDF
A testers guide to marketing
PPTX
RST - Makati Testers Meetup
PPTX
We're here... and our testers are there
PPTX
Transforming an Offshore QA Team
PPTX
A tasty slice of cucumber
Death by Powerpoint
CS In Schools
A testers guide to marketing
RST - Makati Testers Meetup
We're here... and our testers are there
Transforming an Offshore QA Team
A tasty slice of cucumber

Recently uploaded (20)

PDF
UEFA_Embodied_Carbon_Emissions_Football_Infrastructure.pdf
PDF
August -2025_Top10 Read_Articles_ijait.pdf
PPTX
Petroleum Refining & Petrochemicals.pptx
PPTX
Amdahl’s law is explained in the above power point presentations
PPTX
Graph Data Structures with Types, Traversals, Connectivity, and Real-Life App...
PPT
Chapter 1 - Introduction to Manufacturing Technology_2.ppt
PPTX
Measurement Uncertainty and Measurement System analysis
PPTX
mechattonicsand iotwith sensor and actuator
PDF
Exploratory_Data_Analysis_Fundamentals.pdf
PPTX
CONTRACTS IN CONSTRUCTION PROJECTS: TYPES
PDF
Influence of Green Infrastructure on Residents’ Endorsement of the New Ecolog...
DOC
T Pandian CV Madurai pandi kokkaf illaya
PDF
First part_B-Image Processing - 1 of 2).pdf
PPTX
tack Data Structure with Array and Linked List Implementation, Push and Pop O...
PPTX
PRASUNET_20240614003_231416_0000[1].pptx
PDF
20250617 - IR - Global Guide for HR - 51 pages.pdf
PDF
Accra-Kumasi Expressway - Prefeasibility Report Volume 1 of 7.11.2018.pdf
PPTX
Chemical Technological Processes, Feasibility Study and Chemical Process Indu...
PPTX
wireless networks, mobile computing.pptx
PDF
Computer System Architecture 3rd Edition-M Morris Mano.pdf
UEFA_Embodied_Carbon_Emissions_Football_Infrastructure.pdf
August -2025_Top10 Read_Articles_ijait.pdf
Petroleum Refining & Petrochemicals.pptx
Amdahl’s law is explained in the above power point presentations
Graph Data Structures with Types, Traversals, Connectivity, and Real-Life App...
Chapter 1 - Introduction to Manufacturing Technology_2.ppt
Measurement Uncertainty and Measurement System analysis
mechattonicsand iotwith sensor and actuator
Exploratory_Data_Analysis_Fundamentals.pdf
CONTRACTS IN CONSTRUCTION PROJECTS: TYPES
Influence of Green Infrastructure on Residents’ Endorsement of the New Ecolog...
T Pandian CV Madurai pandi kokkaf illaya
First part_B-Image Processing - 1 of 2).pdf
tack Data Structure with Array and Linked List Implementation, Push and Pop O...
PRASUNET_20240614003_231416_0000[1].pptx
20250617 - IR - Global Guide for HR - 51 pages.pdf
Accra-Kumasi Expressway - Prefeasibility Report Volume 1 of 7.11.2018.pdf
Chemical Technological Processes, Feasibility Study and Chemical Process Indu...
wireless networks, mobile computing.pptx
Computer System Architecture 3rd Edition-M Morris Mano.pdf

Is it done yet? (How about now?)

  • 1. IS IT DONE YET? … HOW ABOUT NOW? MICHELE PLAYFAIR DDD PERTH 2019 Hi Perth! This talk will give you some ideas about tools and techniques to use when you hear your manager say "We just need to get better at estimating". If you have ever wished for a crystal ball to help you predict the team's future, this talk is for you! 1
  • 2. Many thanks to all the wonderful sponsors that make this event affordable – including YOW!... YOW! Perth coming up in September, come and see us ☺ I would also like to give some love to all the organisers who have ONCE AGAIN done a fantastic job crafting DDD Perth. THANK YOU!!! 2
  • 3. micheleplayfair#DDDPerth REAL AGILE WORKPLACES DON’T HAVE DEADLINES Once upon a time, when Agile and I were young… I was working in a Agile-ish company, which still had projects, deadlines, and the associated overtime and weekend-free death marches. I figured that if we ONLY did this Agile thing PROPERLY then we wouldn’t have these stupid deadlines and life would be beautiful.... Then I started working for a company that had pretty mature product development, people were experienced and understood agile ways of working and YET we still had some deadlines and end dates!! What is going on??? 3
  • 4. micheleplayfair#DDDPerth In my case there were government legislation related dates that need to be met, and compliance is not optional if you want to stay in business - I worked on teams that were creating solutions for two of these 4
  • 5. micheleplayfair#DDDPerth Maybe you’re working to meet another kind of event-related immovable date 5
  • 6. micheleplayfair#DDDPerth Photo by Pixabay Maybe there’s a race against your competition to get a product to market first – we had that as well! 6
  • 7. micheleplayfair#DDDPerth Photo by Pixabay Maybe there’s some kind of staffing dependency and you’re going to lose people on a certain date Maybe you announced features to your user base - made a public commitment to customers that you will deliver something. If you do this too often without living up to it, you get…. 7
  • 8. micheleplayfair#DDDPerth https://www.elonmusk.today/ Elon Musk Today – a site entirely dedicated to tracking Elon’s promises made on Twitter!! Hell hath no fury like a customer scorned. 8
  • 9. micheleplayfair#DDDPerth REAL AGILE WORKPLACES DON’T HAVE DEADLINES … said nobody ever So where did this impression come from?? It’s not in the Agile Manifesto… it says “sustainable pace” but nothing says “we value not having deadlines” I figure there are a couple of factors at play here… First, companies that we’re told have the “best agile working” - like Facebook, Google, Spotify, Twitter, Netflix – I have never seen them make a public commitment to producing a feature by a certain time. The updates just "appear" whether we like it or not. Sometimes in the case of Google products you can go back to the previous version - for a short a/b period, before you're forced to take the latest. And sometimes you just get… 9
  • 10. micheleplayfair#DDDPerthMing Johanson on LinkedIn 17 Jul 19 This. Cheers Ming for this timely observation!! Does your company work this way or more to the point, is it even possible for them to do this to their customers and stay in business? 10
  • 11. micheleplayfair#DDDPerth If you could come in on Sunday too, that would be great. Yeah, I’m going to need you to go ahead and come in on Saturday… Second issue is that so many people associate “deadlines” – even the word DEADLINE - with the big push at the date looms closer, where your weekends and your life disappears along with your sleep And like I did, they hope that in a better, more AGILE work environment, this deadline-induced misery would disappear… where’s my sustainable pace?! 11
  • 12. micheleplayfair#DDDPerth DOES IT HAVE TO BE LIKE THIS? Joshua Partogi on LinkedIn 16 Jul 19 Manifesto for Deadline Driven Development We are uncovering bitter ways of developing software by doing lots of overtime and helping others do it… Manifesto for Deadline Driven Development - We are uncovering bitter ways of developing software by doing lots of overtime and helping others do it… Does it have to be like this? If we take as a given that deadlines – or milestones, or whatever you want to call them – WILL happen…. We need to cope with the idea that sometimes you do need to know WHEN WILL IT BE DONE and IS IT DONE YET? – while avoiding the mini-waterfall death march 12
  • 13. OBVIOUSLY THE ANSWER IS…. Or is it? Because if we only did this part RIGHT then we would *know* when we would finish! Easy peasy. 13
  • 14. micheleplayfair#DDDPerth We need to get better at estimating! To many managers, the existence of an estimate implies the existence of an “actual”, and means that you should compare estimates to actuals, and make sure that estimates and actuals match up. When they don’t, that means people should learn to estimate better. (Ron Jeffries) I have heard senior people say this!! Do you really want to spend time getting better at estimating?? 14
  • 15. micheleplayfair#DDDPerth “ ” WASTE IS ANYTHING THAT DOES NOT ADD VALUE TO A PRODUCT, VALUE AS PERCEIVED BY THE CUSTOMER. Poppendieck – “Lean Software Development” In “Lean Software Development” Mary & Tom Poppendieck wrote that “Waste is anything that does not add value to a product, value as perceived by the customer.” By this definition, time spent estimating is waste and should be minimised with the view to eliminating it. I’m not gonna say NOESTIMATES because that summons trolls – what I will say is that you should spend LESS time on estimating, not MORE. BUT we still need a way to know WHEN WILL IT BE DONE? So what is the alternative?? 15
  • 16. micheleplayfair#DDDPerth SIMPLE, TRANSPARENT AND PREDICTABLE First goal: We want to make the work as simple, transparent and predictable as possible 16
  • 17. micheleplayfair#DDDPerth “ ” PREDICTABILITY IS IMPROVED BY BEHAVING AND DELIVERING MORE PREDICTABLY, NOT BY MAKING PREDICTIONS. - Neil Killlick Neil Killick has observed that “Predictability is improved by behaving and delivering more predictably, not by making predictions.” We want to put something valuable into the hands of users sooner rather than later, then iterate on it in a rhythm. Getting regular feedback along the way. 17
  • 18. micheleplayfair#DDDPerth I’m sure many of you have seen this drawing by Henrik Kniberg before. Assuming in this case what I am trying to do is “get somewhere faster than walking.” I can quickly deliver a skateboard and then get feedback from users which might have been, “I like the wheels idea but I am afraid of falling off and it’s still hard work” - then you next produce a scooter. NONE of these is The Perfect Solution but each is better than the previous. If we only made it to step 3 by the “Deadline” - are we OK? I say yes we are! Note that if we were in a waterfall project, our “requirements” would have most likely been to build the car!! And look where we are at step 3, we can’t use it. Sounds good in theory but how do we actually DO this fast, predictable delivery thing?? 18
  • 19. micheleplayfair#DDDPerth STORY MAPPING – JEFF PATTON First recommendation, use Story Mapping – this is some real secret sauce and if you haven’t read User Story Mapping I suggest you get your hands on a copy, you won’t regret it. The story map describes what users will do to reach a goal, over time going left to right the same way you would tell a story to someone else. The backbone across the top is made of higher-level activities that represent groups of tasks done at similar times to reach the goal Below that in the body of yellow stickies are the user tasks – short verb phrases – that are a breakdown of the higher level above. Using one of the examples from Jeff’s book, you might have a summary task of “get cleaned up in the morning” and the user tasks might be “have a shower”, “do my hair”, “shave”, “put makeup on” etc What you have now is something that is simple – story to explain what users want to achieve – and transparent – if its on a wall where anyone can see it! 19
  • 20. micheleplayfair#DDDPerth STORY MAPPING – JEFF PATTON Once you have your map laid out you can identify a set of tasks that could form a goal and literally draw a line under them to form a “slice” – something you could release to a customer to get their feedback Summary – go for GOOD ENOUGH then BETTER then BEST. If you have a deadline work towards getting the GOOD ENOUGH version into your users hands as soon as you possibly can and iterate from there. 20
  • 21. micheleplayfair#DDDPerth Here’s one from Real Life!! You can see the first major release slice was the “compliance goal” – we used goal instead of deadline as it’s less scary - this was the Minimum Viable Product – the skateboard from Henrik Knieberg’s drawing Next release would have made it nicer for users and added some extra functions – and you get the bicycle Third one was the really awesome bells and whistles one – the car, if you will. We also had smaller slices of bits of it along the way that we gave to users for feedback which was very helpful 21
  • 22. micheleplayfair#DDDPerth “EASY AGILE STORY MAP FOR JIRA” This is a 3rd party add on called “Easy Agile Story Map for JIRA” - I assume there are people here using JIRA? (if anyone boos – you don’t hate JIRA, you hate whoever configured it at your workplace and maybe the managers who think it’s magical!) Physical boards are awesome for planning but if you use JIRA I really recommend getting this little add-on to storymap inside JIRA eg for remote teams or places where the dang board is too big for the wall or to match JIRA to your physical board. It Just. Makes. Things. Easier. 22
  • 23. micheleplayfair#DDDPerth STORY POINTS Crisp.se So now we’ve got our map of user tasks / stories to work with. I was really bothered about all the time spent in meetings arguing about whether a story is a 3 or a 5 – and don’t even get me started on the constant conversions to and from points and time “umm so if that takes a week it will be a 3”, “we’ve got a total of 9 points so that’s.. What, 2 weeks? 3?” It just seemed like a waste! But you NEED story points if you’re going to be agile, right? 23
  • 24. micheleplayfair#DDDPerth STORY POINTS - ? Then I saw this from Ron Jeffries talking about how to size stories: 1, 2, too big – days not points. And I thought – yeah that sounds better Who’s Ron Jeffries? 24
  • 25. micheleplayfair#DDDPerth STORY COUNTS NOT STORY POINTS He’s the guy who may have invented Story points and has been apologising since for how they are misused. Break the work down into stories as small and uniform as possible, try for consistent sizing – 1 or 2 days - and just get on with it. It won’t be perfect but it will be good enough! Rule of thumb from Neil Killick is for each story to fulfil a single acceptance criterion. Once you have started the habit of working on small stories and each story is close to the same size, you can COUNT them instead, and being predictable is much easier… And YES! You can configure JIRA to use card counts instead of story points or time. 25
  • 26. micheleplayfair#DDDPerth THROUGHPUT & CYCLE TIME Work Started Work Completed (In Production) Throughput = Number Stories Completed per Iteration Sprint 1: Sprint 2: Sprint 3: Cycle Time hotpmo.com/blog/the-definitive-list-of-agile-metrics Cycle time – this is the average time that it takes something to get from the start to the end of a process. In development it’s often the time that something moved to “In Progress” up until it’s “Done Done” or Released. Throughput = units of work per unit of time. In this case, Throughput is the number of DONE stories completed by a team per week or per sprint. According to the theory of constraints, the best way to optimise is to focus on throughput. Teams with shorter cycle times are likely to have higher throughput, and teams with consistent cycle times across many issues are more predictable. So that’s the aim. 26
  • 27. micheleplayfair#DDDPerth CYCLE TIME (CONTROL CHART) For those of you in JIRA land this is the Control Chart where you can check on your team’s cycle time. This particular specimen is not great (1 week average!) When your cycle time is consistent the green dots will be closer together and the shaded area will be thinner… also you probably want to make your cycle time lower! 27
  • 28. micheleplayfair#DDDPerth FORECASTING Forecasting - Once we’ve started to become predictable, we can more safely assume that our past performance is a reasonable indicator of how things will go in the future. So for example in Brisbane in summer you can reasonably safely say that tomorrow’s weather will be “hot, chance of rain” – but in Melbourne, not so much. Bearing in mind of course that this is all a model and all models are wrong, but some are useful. Now there are a number of ways to do this – here is an example of a burndown chart from our friend JIRA where it has predicted based on your team’s previous velocity, that there are 6 sprints remaining. This is OK but we can do better. 28
  • 29. micheleplayfair#DDDPerth PROBABILISTIC FORECASTING focusedobjective.com/forecasting-techniques-effort-versus-reward/ Probabilistic forecasting for weather might be “what is the chance of rain tomorrow?”. In the forecasting software world, this is normally “what is the chance of finishing on or before date x.” In a probabilistic forecast we look at what percentage of the possible results were actually “on or before date x.” This allows us to say things like, “We are 85% certain to deliver by 7th August.” Good news is that probabilistic forecasting relies upon the input parameters being non-exact. 29
  • 30. micheleplayfair#DDDPerthPhoto by Tumisu http://bit.ly/SimResources Using Arthur C Clarke’s 3rd law – any sufficiently advanced technology is indistinguishable from magic – this brings me to the crystal ball I promised you!! This link will take you to a github repository full of amazing resources related to forecasting and modelling from Troy Magennis of Focused Objective The tool I used from this treasure trove for PROGNOSTICATION is the Throughput Forecaster. This sheet has a lot of features that duplicate some of the things you can get directly out of JIRA so even less work for you – yay I set up filters on the JIRA board that let you easily see the story counts per release so we could track to complete for each milestone/goal/deadline and then you can just add them to the sheet. 30
  • 31. micheleplayfair#DDDPerth TEAM 1 It’s also pretty flexible, I used it with 2 teams that were working in different ways – so here’s some data input for team 1 Team 1 - we did a Tshirt sizing (Small, Medium, Large) on future stories which will give us the max-min number to use in “How many stories remaining to be completed”. For the min we assume that a Large/Spike will eventually break up into 3 stories, a Med into 2 and a small = 1. For the max, Large/Spike = 5, Med = 3, small = 1 - Therefore the low and high on splitting is the same at 1 – because we already included the variance in the stories to complete. - used kanban not sprints so we did this per week - Used historical Data – I got the number of completed stories from the “Created vs Resolved” issues report and just entered them into another sheet. - If you didn’t have that you could put a low-high guess in the fields at the bottom AND YOU GET… drumroll 31
  • 32. micheleplayfair#DDDPerth What is this witchcraft?? It’s a Monte Carlo simulator – using statistics and probability to help visualise potential outcomes. In this case the simulator will forecast how long it will take to complete features based on the data entered - Using this information it hypothetically completes the work 500 times and shows you the likelihood of success by date. For us this was such a valuable output for such little work to create. Essentially we’re estimating CONFIDENCE as well as TIME 32
  • 33. micheleplayfair#DDDPerth Simple, transparent and provides an indicator of our predictability!! Thanks Troy! 33
  • 34. micheleplayfair#DDDPerth THE TL;DR 1. Deadlines happen 2. Spend less time estimating, not more 3. Use storymapping (even in JIRA) to break up and visualise the work 4. Story counts, not story points 5. Focus more on throughput & cycle time 6. Try the Throughput Forecaster – estimate confidence as well as time 1. Deadlines happen 2. Spend less time estimating, not more 3. Use storymapping (even in JIRA) to break up and visualise the work 4. Story counts, not story points 5. Focus more on throughput & cycle time 6. Try the Throughput Forecaster - estimate confidence as well as time. 34
  • 35. micheleplayfair#DDDPerth THE DISCLAIMER These are things that we tried and they worked for us – please don’t do the SPOTIFY MODEL thing and think this is what you HAVE to do! I hope I have given you some ideas and a starting point - Do a bit more research, experiment, tweak – INSPECT AND ADAPT 35
  • 36. micheleplayfair#DDDPerth FOR MORE INFO – SEE THE WORKS OF: ➢ Jeff Patton ➢ Troy Magennis ➢ Ron Jeffries ➢ Neil Killick ➢ Mary & Tom Poppendieck ➢ Gojko Adzic ➢ Johanna Rothman If you want to know more about how to manage your work in an agile way while still dealing with the reality of WHEN WILL IT BE DONE?? and IS IT DONE YET?? Look into the books and posts done by Jeff Patton, Troy Magennis, Ron Jeffries, Neil Killick, Mary & Tom Poppendieck, Gojko Adzic and Johanna Rothman 36
  • 37. IS IT DONE YET? … YEP 37