Skip to main content

Can we have a dialogue about Estimation and the behaviors it drives?


Some topic are taboo - not safe to discuss.  I've never appreciated that concept.  Those taboo topics are my favorite topics to discuss.

Taboo Topics (ordered by fear of conversation)
  • Gender - Sexual preferences - non-standard practices
  • Religion as truth, my religion vs your wrong religion
  • Politics - the correct way to govern a group the results in my opportunity
  • Pay for services rendered - why my gender is paid more than yours
  • counting - off by one errors and how to mask them; we're # 1
  • estimates - how wrong your estimate was and why I'm missing my commitment
  • prioritization - ordering methods
  • laziness - the art of not doing work
I've recently been embroiled in a "dialogue" about the twitter topic of #NoEstimates.  I would write a summary of the topic but cannot do better that this one:

Estimates? We Don’t Need No Stinking Estimates! by Scott Rosenberg
"How a hashtag (#NoEstimates) lit the nerdy world of project management aflame — or at least got it mildly worked up."

A nice summary of the dust-up.  Imagine if the tag would have been #LeanEstimates?

There are two sides to this debate - at least two sides.  But I like that the taboo topic was raised and has questioned assumptions.  I think the think that drives a topic toward the taboo is this questioning of assumptions.  The saluter of scared cows (where does that term even come from?).

So what behaviors does the process or estimating drive:


  • a list
  • TBD
  • someone misplaced the list...


"Unable to estimate accurately, the manager can know with certainty neither what resources to commit to an effort nor, in retrospect, how well these resources were used.  The lack of a firm foundation for these two judgements can reduce programming management to a random process in that positive control is next to impossible. This situation often results in the budget overruns and schedule slippages that are all too common." -- J.A Farquhar
Does a Scrum process framework and the Agile mindset resolve Farquhar's concerns that the manager may have without accurate estimates - via empirical measurement and relative estimation techniques?

I'm not sure that the Twitter-verse is capable of holding the dialogue.  My experience was not very fruitful nor enlightening.  I've been accused by a manager at work of being "anti-management" I've asked, but got no direct answer, what that term meant, and why he believed or thought this label to be useful.  I've wondered if it was because of this type of conversation.  I also asked these fellows, but didn't resolve my query with the rhetoric of the conversation.
... deleted ... a lot of tweets about actions from years ago when when the #NoEstimates twitter conversation was beginning - some relating to a blog post being edited or complete deleted.  Something I find quite acceptable (and do quite frequently myself).






The conversation went on from there...  I'm reminded of Adam on MythBusters.



... and there is some link to Anti-Management because one is willing to discuss better options or worse options than estimation...


There appears to be large amounts of animosity amongst the principle people that were having this dialogue - nope that word is not the best word, here... try debate... twitter shouting match...








How might the analogy of estimation is like addiction be a useful analogy?




See Also:

Agile Brambles - Always Estimate || #NoEstimates
the origin story of Agile Brambles starts with the thorny estimation dialogue

When I've Skipped the Estimates - Paul Boos' Nimbicious

Exercise:  Estimate the Number of Times you can Fold a Paper in Half

Impact of Schedule Estimation on Software Project Behavior
by Tarek K. Abdel-Hamid, SRI International Stuart E. Madnick, Massachusetts Institute of Technology

Post a Comment

Most Popular on Agile Complexification Inverter

David's notes on "Drive"

- "The Surprising Truth about what Motivates Us" by Dan Pink.

Amazon book order
What I notice first and really like is the subtle implication in the shadow of the "i" in Drive is a person taking one step in a running motion.  This brings to mind the old saying - "there is no I in TEAM".  There is however a ME in TEAM, and there is an I in DRIVE.  And when one talks about motivating a team or an individual - it all starts with - what's in it for me.

Introduction

Pink starts with an early experiment with monkeys on problem solving.  Seems the monkeys were much better problem solver's than the scientist thought they should be.  This 1949 experiment is explained as the early understanding of motivation.  At the time there were two main drivers of motivation:  biological & external influences.  Harry F. Harlow defines the third drive in a novel theory:  "The performance of the task provided intrinsic reward" (p 3).  This is Dan Pink's M…

Elements of an Effective Scrum Task Board

What are the individual elements that make a Scrum task board effective for the team and the leadership of the team?  There are a few basic elements that are quite obvious when you have seen a few good Scrum boards... but there are some other elements that appear to elude even the most servant of leaders of Scrum teams.









In general I'm referring to a physical Scrum board.  Although software applications will replicated may of the elements of a good Scrum board there will be affordances that are not easily replicated.  And software applications offer features not easily implemented in the physical domain also.





Scrum Info Radiator Checklist (PDF) Basic Elements
Board Framework - columns and rows laid out in bold colors (blue tape works well)
Attributes:  space for the total number of stickies that will need to belong in each cell of the matrix;  lines that are not easy eroded, but are also easy to replace;  see Orientation.

Columns (or Rows) - labeled
    Stories
    To Do
    Work In P…

Exercise:: Definition of Ready & Done

Assuming you are on a Scrum/Agile software development team, then one of the first 'working agreements' you have created with your team is a 'Definition of Done' - right?



Oh - you don't have a definition of what aspects a user story that is done will exhibit. Well then, you need to create a list of attributes of a done story. One way to do this would be to Google 'definition of done' ... here let me do that for you: http://tinyurl.com/3br9o6n. Then you could just use someone else's definition - there DONE!

But that would be cheating -- right? It is not the artifact - the list of done criteria, that is important for your team - it is the act of doing it for themselves, it is that shared understanding of having a debate over some of the gray areas that create a true working agreement. If some of the team believes that a story being done means that there can be no bugs found in the code - but some believe that there can be some minor issues - well, …

What belongs on the Task Board?

I wonder about these questions a lot - what types of task belong on the task board?  Does every task have to belong to a Story?  Are some tasks just too small?  Are some tasks too obvious?  Obviously some task are too larger, but when should it be decomposed?  How will we know a task is too large?

I answer these questions with a question.  What about a task board motivates us to get work done?  The answer is: T.A.S.K.S. to DONE!



Inherent in the acronym TASKS is the point of all tasks, to get to done.  That is the measure of if the task is the right size.  Does it motivate us to get the work done?  (see notes on Dan Pink's book: Drive - The surprising Truth about what motivates us) If we are forgetting to do some class of task then putting it on the board will help us remember.  If we think some small task is being done by someone else, then putting it on the board will validate that someone else is actually doing it.  If a task is obvious, then putting it on the board will take vi…

Refactoring - examples from the book

Martin Fowler's book Refactoring:  Improving the Design of Existing Code has a simple example of a movie rental domain model, which he refactors from a less than ideal object-oriented design to a more robust OO design. Included in this Refactoring_FirstExample.zip Zip file are the Java source code files of the Movie, Rental, and Customer classes. Along with a JUnit CustomerTest class. Using these example source files you too can follow along with the refactoring that Fowler presents in the first few chapters of his book.