Tag Archives: Estimation

In Agile hills are epic

Hill-training

Some of you may be aware that earlier this year, I started running. This is something I’ve tried to avoid in my life up until this point, because, quite frankly it has seemed too hard. I always blamed this on the hills around my home, not my lack of fitness. So recently, while running up a hill, it struck me that a hill is just a mindset. To put you in the picture, my usual 6.5km run, starts with the steepest hill ever, followed by downhill, about 2km of level running, then up and down another hill, before returning on the same route.

Mentally, I tackle the run by breaking it into manageable chunks. Firstly there’s the uphill run, and it takes longer and certainly more effort, than the downhill run. The level part is really quite straightforward. I size the second uphill and downhill part by comparing it to the first one. It’s not quite so bad, but maybe this is because my legs are warmed up and no longer objecting to the cold winter’s morning.

At a certain point, during my run last weekend, I began wondering if my approach was because of my Agile mindset. Agile looks at a body of work and calls it an epic. Here’s an example of an epic: “As a student, I want to submit a Change of Enrolment form online, so that I don’t have to fill out a paper based form”. An Epic is further broken down into “stories”. These are the smaller chunks of work that need to get done in order to deliver the epic. These might look like this: “As a student, I want to be able to fill out a form and hit submit, so that I can get an acknowledgement of submission of the form”, and “As a student, I want the form data I submitted to be emailed to the faculty, so that it can be approved”. The advantage of breaking an epic down into stories, is not just because the work can be tackled in these smaller chunks, but because it’s easier to estimate the amount of effort required to complete these chunks of work and schedule accordingly.

In our team we size stories according to small, medium, large and extra large. When we go to size a story, we look at it relative to other stories. So in the case of the Change of Enrolment story, if we previously completed a similar form, we can estimate the size of this one, by thinking, that last time that form was a medium, and this one is more complex, so we’ll estimate it as a large. Estimation is run as a group activity in Agile, and this helps the team use their joint knowledge of our history of typical tasks to agree on an estimate.

Agile values relative sizing, rather than absolute sizing, because it acknowledges that sometimes you need to size something without all the information to do so. Certainly, it’s best to have as much information as you can, but given that there is often time pressure to define a project timeline, relative sizing, is a way you can develop a fairly accurate estimate.

So, back to my hills. It’s clear to me that sizing the hills, helps me break the run down into bearable chunks. I know, as I approach my second uphill bit, that there will be a downhill bit that’s just 2km from home. Sizing makes the run feel achievable. I’d even go so far as to say that it was probably estimation that helped me complete my first ever fun run – the Mother’s Day Classic, where I’m proud to say I placed 3775th! During my practice run, I even sized the notorious Anderson St hill on the Tan, as less grueling than the hill of horror near home. Right now, I now have my sights loftily set on a 10km fun run. After all, it’s just 6.5km with a couple more stories.