So you may be thinking:
- What are Story Points?
Story points rate the complexity of a task, relative to the complexity of other tasks.
- So they're hours?
- Nope! Story points rate complexity, not time. A task might take me longer to build than you, but we can probably agree that it is more or less complicated than another task.
- Give me an example.
- I can't tell you how much a motorcycle or a pickup or an airplane weighs, but I can tell you that a motorcycle weighs less than an airplane, and a pickup is somewhere in the middle.
- How does this help?
- Over time, a team's average velocity will reveal about how much complexity they can build in a given time. This helps predict how long a backlog will take to build. Building on the example, stakeholders can decide if they want five motorcycles or one airplane this sprint.
- Sounds stupid. Why not hours?
- Estimating is never perfect, but hours have a tendency to vary wildly while waiting for follow-up meetings, getting clarifications, variance between developers' skills, etc. But over time, a project team has a tendency toward a predictable velocity of building complexity.
- How do we pick a size?
- Debate with teammates about how a story might be completed, you might know a shortcut and someone else may anticipate a pitfall. Compare against other stories on complexity and approach, not by debating hours. “Does this sound as hard as that 8-pointer from last sprint or does it sound more like a 5-pointer we just talked about?”
- How do we standardize?
- As a company with many teams, if we can all come to a somewhat common understanding of rating complexity, estimates become portable and our gained business intelligence can be shared across teams.
- What about “shirt sizes?”
- Nothing wrong with that, but S + L isn't mathematically useful the same way 3 + 13 is. Story point values are 1, 2, 3, 5, 8, 13, and 20. Your product owner probably translated your shirt sizes into these numbers.
Here's a guideline:
General themes of the kinds of stories we've assigned to point values, pulled from Jira. Lacking context makes this difficult to envision but if you have any better ideas, open a PR!
- It's rarely this easy.
- Check one box.
- Change one field label.
- Add and theme straightforward field.
- Add a View or Panel pane using UI options.
- Install and simple contrib module.
- Enable commenting with known provider or module.
- Mostly themed Webform implementations.
- General to moderate meta, SEO, or analytics integrations.
- Interactive Views with programmatic manipulation or complex theming.
- Nonstandard config of Workbench or Organic Groups.
- Create and theme involved content types with Media and/or relationships.
- Robust Solr search features like combined faceting, filtering, or index alterations.
- REST API integrations, SSO implementation, ingesting feeds, migrations.
- Involved build and theming initiatives like new major section pages or home pages.
- Break these up!
- Big integrations.
- Complex migrations.
Not pictured, but acceptable: 2, 40, and 100. Since it's rarely actually a 1, but it can be easier than a 3, sometimes we settle on 2. 40 and 100 must be broken down, and we often use them for placeholder epics.