SN-Logo NewSN-Logo NewSN-Logo NewSN-Logo New
  • Scrum Courses
  • Agile Keynotes
  • Agile Books & Tools
  • Blog
  • About
  • Contact
0

CHF0.00

✕
What is the difference between Scrum and RUP?
15-02-2008
Story Points and the Heart of Scrum
23-02-2008

More on Selling Story Points to Management

Published by Peter Stevens on 16-02-2008
Categories
  • estimating
  • Getting Started
  • hypothetical time
  • mike cohn
  • scrum
  • sizing
  • story points
Tags

Useful as they are, Story Points are not uncontroversial nor is this problem of creating a “reference kilogram” for code trivial.

One problem we had on the WLC project was that we had two fundamentally different kinds of work to estimate: HTML Publishing and Software Development. Although we had attempted to have one reference Story Point for everyone, this proved to be elusive. After a few Sprints, I noticed that we had much less effort per publishing Story Point than per development Story Point.

A second issue is that some stories are intellectually complex while others are just time consuming. If Story Points represent complexity, then a simple but repetitive task should get a low number. This is unsatisfying, because such a story will put a higher load on the team, just because it takes so much time.

A third issues was that some developers just did not like Story Points and insisted on estimating in days.

After we had some experience with Story Points, we had an empircal measure of velocity, which we could also use to generate work days (“AT” for Arbeitstage) per Story Point. We discovered that the average of 3.5 AT / SP worked pretty well for us. Those 3.5 days included things like testing, code review, the Scrum-Master’s time, and everything that when into realizing that Story Point.

This allowed using the conversion when estimating stories. Having the stories somehow anchored in time was very reassuring to the developers who didn’t like Story Points. One they knew the could convert to time, they didn’t feel the need to.

This led to a different approach, let the team estimate hypethetical days, but on the Cohn scale. 1, 2, 3, 5….

I think people naturally estimate hypethetical days without being told to. This is the time it would take if they had nothing else to do, no email to read, no collegues asking for help, etc. Most Project Leaders add 50% to the developers estimate, and the difference between hypethetical and elapsed time is usually about this amount.

I have a certain fear talking about hypothetical days to customers. Just a matter of time before they only want to pay for the hypothetical time…

Still, this is not a bad reference kilogram. Something for the Scrum Team to fall back on, in case they don’t have any other brilliant ideas. At the same time, we call them Story Points, calculate velocity like if they were story points, and compare stories to each other for estimated purposes. So very quickly, they become real, live story points!

Update: There is no ultimate truth, and this proposal has its naysayers…

Share
0
Peter Stevens
Peter Stevens

Related posts

05-02-2019

Is your agile transition building a train but ignoring the track?


Read more
31-03-2018

Scrum is simple to understand but difficult to master(?)


Read more
09-01-2018

Lowest prices for Scrum Training


Read more

3 Comments

  1. Anonymous says:
    09-03-2015 at 14:31

    Hi, Thanks for your post. I have one question. Consider there 2 identical stories in the backlog. One taken at the sprint1 and anotehr one is planned only for spirnt 5. During spirnt 1 the team has sized Story A as "M" and when we went to Sprint 5 the sized the Story B as "M" again bec the previous story was sized as "M".

    My quesiton is

    1. Do we have to consider that the similar story was implemented earlier and so duplicating the story might be easy and so size should be less

    2. Or do we have to size the new story as "M" and take additional story if the team has time to work on more story..

    i asked this qustion bec the customer is insisting us to reduce the size of the story because they think it is easy to implement this story bec similar story already exists

    I need your advince in this'

  2. Peter says:
    09-03-2015 at 15:04

    Dear Anonymous,

    Thanks for your question! Questions like this are easier to answer if we ask ourselves, why are we making an estimate. I think there are three good (and many bad) reasons for estimating. The good ones:

    Build a common understanding of the story — This helps everybody get the implementation right.

    Get an idea how expensive a story will be to implement — this helps the Product Owner decide whether and when to prioritize the story.

    Ensure that your wishes are more or less in sync with reality — this enables to Product Owner to set realistic expectations with other stakeholders.

    Among the bad reasons: giving the PO and Dev-Team ammunition to fight with.

    My first piece of advice: It's only an estimate. Don't spend more time on the estimate than necessary, because estimates have no value for your users. Fundamentally it's an artifact of the development process, not a deliverable.

    What speaks for changing the estimate: If you expect the feature will be much cheaper or much more expensive to implement than you originally anticipated, sharing that with the Product Owner will help him/her make better decisions.

    What speaks against changing the estimate: Time spent on estimating is fundamentally wasted time. Changing the estimate of a story individual story also changes the estimate of the remaining features to release (burn-down target moves closer or further away). Estimate changes look like changes in scope, so this makes it much more difficult to figure out when you actually expect to release and it is less clear whether your backlog is changing because of changing estimates or scope creep.

    So my personal inclination is not to worry about changing the estimate (unless there has been a substantial change in the acceptance criteria or understanding of the story). The difference between a 5 and 3 on 100 or 200 point project is just not worth wasting time on. Your velocity will be a little bit different in that sprint. So what?

    OTOH – if your PO wants it and it's important to her/him, go with the flow. It's just an estimate. So pick a pragmatic approach that works for you and your Scrum Team and go with it.

    Cheers,
    Peter

  3. Anonymous says:
    06-07-2015 at 15:32

    Hi, Thanks for your post. I have one question. Consider there 2 identical stories in the backlog. One taken at the sprint1 and anotehr one is planned only for spirnt 5. During spirnt 1 the team has sized Story A as "M" and when we went to Sprint 5 the sized the Story B as "M" again bec the previous story was sized as "M".

    My quesiton is

    1. Do we have to consider that the similar story was implemented earlier and so duplicating the story might be easy and so size should be less

    2. Or do we have to size the new story as "M" and take additional story if the team has time to work on more story..

    i asked this qustion bec the customer is insisting us to reduce the size of the story because they think it is easy to implement this story bec similar story already exists

    I need your advince in this'

Learn more about Agile

  • Certified Scrum Product Owner | Face-2-Face | English | 230413-CP2
    in Zürich
    April 13, 2023 -
    April 14, 2023
    Register Now
  •  

  • Certified Scrum Master | Face-2-Face | English | May 22-23, 2023
    in Zürich
    May 22, 2023 -
    May 23, 2023
    Register Now
  •  

  • Certified Scrum Product Owner | Face-2-Face | English | Jun 15-16, 2023
    in Zürich
    June 15, 2023 -
    June 16, 2023
    Register Now
  •  

  • Certified Scrum Master | Face-2-Face | English | Jul 06-07, 2023
    in Zürich
    July 06, 2023 -
    July 07, 2023
    Register Now
  •  

High Performing Teams

  • Get Stuff Done
  • Get Right Stuff Done
  • Create Alignment
  • Leadership

Free Resources

  • Personal Agility Institute
  • Impressum
  • Terms and Conditions
  • Privacy Policy

Upcoming courses

  • Certified Scrum Product Owner | Face-2-Face | English | 230413-CP2 in Zürich
    April 13, 2023 -
    April 14, 2023
    Register Now
  • Certified Scrum Master | Face-2-Face | English | May 22-23, 2023 in Zürich
    May 22, 2023 -
    May 23, 2023
    Register Now
© 2020 Saat Network GmbH. All Rights Reserved.
    0

    CHF0.00

      ✕

      Login

      Lost your password?

      We use cookies on our website to give you the most relevant experience by remembering your preferences and repeat visits. By clicking “Accept All”, you consent to the use of ALL the cookies. However, you may visit "Cookie Settings" to provide a controlled consent.
      Read more about our Privacy Policy
      Cookie SettingsAccept All
      Manage consent

      Privacy Overview

      This website uses cookies to improve your experience while you navigate through the website. Out of these, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may affect your browsing experience.
      Necessary
      Always Enabled
      Necessary cookies are absolutely essential for the website to function properly. These cookies ensure basic functionalities and security features of the website, anonymously.
      CookieDurationDescription
      cookielawinfo-checkbox-advertisement1 yearSet by the GDPR Cookie Consent plugin, this cookie is used to record the user consent for the cookies in the "Advertisement" category .
      cookielawinfo-checkbox-analytics11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Analytics".
      cookielawinfo-checkbox-functional11 monthsThe cookie is set by GDPR cookie consent to record the user consent for the cookies in the category "Functional".
      cookielawinfo-checkbox-necessary11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookies is used to store the user consent for the cookies in the category "Necessary".
      cookielawinfo-checkbox-others11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Other.
      cookielawinfo-checkbox-performance11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Performance".
      viewed_cookie_policy11 monthsThe cookie is set by the GDPR Cookie Consent plugin and is used to store whether or not user has consented to the use of cookies. It does not store any personal data.
      Functional
      Functional cookies help to perform certain functionalities like sharing the content of the website on social media platforms, collect feedbacks, and other third-party features.
      CookieDurationDescription
      mailchimp_landing_site1 monthThe cookie is set by MailChimp to record which page the user first visited.
      Performance
      Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.
      Analytics
      Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics the number of visitors, bounce rate, traffic source, etc.
      CookieDurationDescription
      CONSENT2 yearsYouTube sets this cookie via embedded youtube-videos and registers anonymous statistical data.
      _ga2 yearsThe _ga cookie, installed by Google Analytics, calculates visitor, session and campaign data and also keeps track of site usage for the site's analytics report. The cookie stores information anonymously and assigns a randomly generated number to recognize unique visitors.
      _gat_gtag_UA_42152348_11 minuteSet by Google to distinguish users.
      _gcl_au3 monthsProvided by Google Tag Manager to experiment advertisement efficiency of websites using their services.
      _gid1 dayInstalled by Google Analytics, _gid cookie stores information on how visitors use a website, while also creating an analytics report of the website's performance. Some of the data that are collected include the number of visitors, their source, and the pages they visit anonymously.
      Advertisement
      Advertisement cookies are used to provide visitors with relevant ads and marketing campaigns. These cookies track visitors across websites and collect information to provide customized ads.
      CookieDurationDescription
      NID6 monthsNID cookie, set by Google, is used for advertising purposes; to limit the number of times the user sees an ad, to mute unwanted ads, and to measure the effectiveness of ads.
      test_cookie15 minutesThe test_cookie is set by doubleclick.net and is used to determine if the user's browser supports cookies.
      VISITOR_INFO1_LIVE5 months 27 daysA cookie set by YouTube to measure bandwidth that determines whether the user gets the new or old player interface.
      YSCsessionYSC cookie is set by Youtube and is used to track the views of embedded videos on Youtube pages.
      yt-remote-connected-devicesneverYouTube sets this cookie to store the video preferences of the user using embedded YouTube video.
      yt-remote-device-idneverYouTube sets this cookie to store the video preferences of the user using embedded YouTube video.
      Others
      Other uncategorized cookies are those that are being analyzed and have not been classified into a category as yet.
      CookieDurationDescription
      COMPASS1 hourNo description
      cookies.jssessionNo description available.
      S1 hourNo description available.
      SAVE & ACCEPT
      Powered by CookieYes Logo