Agile estimation techniques are amazingly simple yet can sometimes be made more complex than necessary for software development teams. Having experienced the wrath of missing a deadline on previous assignments and fearing 20-hour workdays in the last weeks of a big project, it's no wonder agile team members approach estimation cautiously. How many times has your estimation come back to bite you? 😱
Designed to create a sustainable development pace and provide more realistic deadline expectations for stakeholders, agile estimation techniques use relative sizing rather than predicting real-time estimates.
Popular estimating methods in an agile development environment include story points, dot voting, a bucket system, affinity mapping, and t-shirt sizing. T-shirt sizing is a common agile estimation technique that can be very effective for long-term planning or helping your team get used to relative estimating.
We'll give you a quick review of these agile estimation techniques, but then, we'll dive into t-shirt sizing and the different ways you can use this technique.
A quick review of some popular agile estimation techniques
If you're reading this article, you're probably already familiar with story points typically used for sprint planning, so we won't spend time rehashing these. However, if story pointing isn't a familiar agile estimation technique, here's an article defining story points and another about specific times when story points might work best on your team.
The other agile estimation techniques we'll review first are more appropriate for road mapping or release planning than sprint planning. Let's run through a quick overview of affinity mapping, bucket systems, and dot voting.
In product development, “affinity” refers to similar backlog items, either in terms of types of code, areas of the product, or effort. For affinity mapping within agile estimation, we're talking about grouping work items of similar size. Go figure.
To perform an affinity mapping exercise, the facilitator puts the backlog items on individual sticky notes and attach them to a wall. On another wall, identify one side as "Smaller" and the other side as "Larger." Then, ask the Scrum team to silently move the items from the backlog wall to the sizing wall where they fit based on the item's perceived size, or how long the team will likely take to complete it.
The key to this technique is to move quickly, don't overthink it, and don't discuss it. Once all the items are placed on the wall, team members can discuss which items are potentially sized incorrectly. After a brief discussion, the team can choose whether to move the items.
After everyone is satisfied with the placement, the Product Owner can imagine vertical lines on the wall dividing the backlog into sections and easily assign a t-shirt size to each item and place it on a roadmap.
A bucket system is similar to affinity mapping, except it expects you to get a little more specific. It uses the numbers 0, 1, 2, 3, 4, 5, 8, 13, 20, 30, 50, 100, and 200 as relative sizes, and team members put all the backlog items in one of the buckets. Again, this is done silently, but the team is free to discuss any items they feel have been placed in the wrong bucket at the end.
Another way agile development teams can estimate is dot voting. Yeah, it's really about putting dot stickers on note cards or sticky notes. But, this is an interesting technique that brings in concepts other than relative size.
During dot voting, team members receive five dots. Those dots relate to what each team member thinks is the most critical work in the backlog. The importance could come from a technical reason like reworking a database to scale before the next busy season or business value like the most requested new functionality from customer feedback.
Backlog items are then added to the roadmap based on value (the number of dots) and then can be sized for effort using another technique.
As you can see, these agile estimation techniques are especially useful if you have a large backlog that makes you feel like you're herding cats every time you try to organize it. Typically, these estimating processes are used at the beginning of a project, significant feature build, or annual or semi-annual roadmap planning.
Now let's take that deep dive into t-shirt sizing.
T-Shirt sizing for product backlog items
Ahhhh, the t-shirt size. XS, S, M, L, XL — how can that be intimidating? It's so simple and yet so flexible. Mostly used for roadmap and release planning, t-shirt sizing is nothing more than a guesstimate at effort based on the information available at the time of the estimate. That's why it's so basic. It's a guesstimate, and that's ok. 👌
You might be wondering why t-shirt sizing is essential if it's such a ballpark figure and relative estimation. It's helpful for long term planning. Yep, you heard it right. Agile teams plan. If you take a quick look at the Agile Manifesto, the fourth value of agile development teams is:
“Responding to change over following a plan.”
A team can't respond to change if they were never following a plan from the start. Long-term agile planning lets you know if you're setting realistic expectations with stakeholders for the next 6 to 12 months. Or if the company's needs change or existing resources won't suffice and you need to spin up an additional team. T-shirt estimates also help determine how many iterations need to be included in each release to deliver the most value to end-users.
Agile estimation starts as a t-shirt size for planning future releases, then is broken down into story points for sprint planning, and can even be broken down further into hours for sprint execution. Regardless, the main point is this: The closer the work gets to a developer's keyboard, the smaller and easier it is to estimate accurately. The t-shirt size is furthest away from execution, so the estimation isn’t expected to be perfect.
T-Shirt sizing is fast
If you've ever inherited a backlog of hundreds of work items and then received the question "How long will it take to finish all that?" you're not alone. Your first attempt to avoid answering that impossible question might be a good backlog cleansing. Let's say you delete any work item over six months old. I mean, hey, if it's been in the product backlog that long, maybe it's not really that important.
But if you've joined a team just getting started with agile methodologies, you'll probably be stuck with a large backlog and product executives expecting an old-fashioned estimate.
T-shirt sizing comes in handy here. Because it's understood that you're delivering gut-level estimations, your team can power through a super-sized backlog in no time. To ensure team members aren't over-thinking each item during t-shirt sizing exercises, restrict decision-making to 30 seconds per item.
The result is a somewhat organized backlog with relative estimates. The product owner and stakeholders can use that information to decide what to move forward within the short term.
How does t-shirt sizing work?
There are a couple of different ways you can tackle t-shirt sizing depending on your backlog size. For a small number of items, planning poker works great — just ask your Scrum Master to swap out the Fibonacci sequence number cards for t-shirt size letters.
This technique also works well if you need to estimate a subset of a more extensive backlog.
You'll probably want to use a process similar to affinity mapping and bucket systems for large backlogs. Everyone works independently to assign sizing and then discusses conflicts at the end. This technique allows even small teams to get through a large backlog relatively quickly.
Finally, some new agile teams might want to start their estimating journey using t-shirt sizes for user stories and sprint planning. Mike Cohn, one of the founders of Scrum Alliance and an authority on agile processes, suggests that if teams go with that approach, they assign a story point value to each t-shirt size. This technique helps teams get comfortable with story points within the safety net of t-shirt size estimating.
Practice makes perfect with agile estimation techniques
Regardless of the type of agile project you're working on or the estimation process you choose, the more you practice, the quicker your team will become master estimators. 👑 We recommend trying a couple of different methods to see which one feels most comfortable for your team.
One last thing, remember that story point estimates are best for sprint planning. Affinity mapping, bucket systems, dot planning, and T-shirt sizing are better for roadmap and release planning.