Skip to content
Home » Blog Posts » Teach students to stop estimating, and just start the work

Teach students to stop estimating, and just start the work

It’s all guesswork for student teams, so have them start to learn more.

The only time you know how long something will take is when you’re done. All of the surprises have occurred. Everything is completed. Now you know the length of the piece of string. This is useful if you’re going to repeat the process again. It might be less useful for a new project or product.

When we start developing a software product we have ideas of what it might do, and how it might work. We might even know how to do some of the steps or required tasks. There are also probably things we’ve not done before, but which we know we can find details about in assorted tutorials, blog posts, and documentation. Sometimes, we might be doing completely new things too.

In other words we’re back in the space where we’re considering how long it might take to do something. I’d argue that we should stop doing this. We can do better things with our time. We can do this instead.

Explore the complexity

Teach students to start with the basic assumptions. Do they know how to do what they want to do, or is it new to them? I think I put up this image from Liz Keogh’s post on ignorance, which turns the issue on its head. I remember it as a slide from a conference talk.

For students this helps to put the challenge into perspective. They “don’t yet” know how to do what they want to do, but someone does. They are often in category 4, sometimes a team member brings it to a 3.

With this in mind, the team needs to next slice the stories down into thin slices that are more manageable. If they slice them to ‘about a day of work’, then they can start to forecast what’s achievable week by week.

This brings the team into the ‘just start doing the work’ space. They can skip estimating. Instead, they slice stories thin, and create tasks of about a day. They are sizing work and not estimating it. Yes, this might be a sleight of hand, but I think it’s important.

Discuss the work with the team to uncover the small slices

By doing it this way, the team is collaborating to discuss the issues, and spend enough time thinking about the challenges in order to better understand the potential work, and how they might accomplish it. This is time well spent, as it builds a shared understanding in the team, and helps them discover potential solutions and a path to implement them. This has to happen anyways. If they can do this without spending time estimating something they don’t know enough about ‘yet’, then this is a win for time that can better applied building the thing.

Teach your students to establish the complexity, and go from there to slice the stories small, and then just start doing the work. Remember with small tasks and stories they feel they are making more progress, and if they pair and mob on the work, then this improves their work too.

Now you too can tell them estimating is less useful than it seems.

This post is part of a project pulling together my materials and ideas about Teaching Team Collaboration: the Human-Side of Software Development for software development to students.

The ideas above are from my book 101+ Ideas to Improve Team Collaboration, which covers all of these little things that students can do to improve their collaboration.

If you’d like to be notified of future posts, then please sign up for more using the adjacent form, or follow me on LinkedIn

Cookie Consent with Real Cookie Banner