Skip to main content

The Triage Secret

Working in a software company comes in two flavours - the green-fields, dream-plan -build-software bit, (which is fun) and the dreary endless bug reports that come from testers and customers (which are not fun).

As a very depressed project manager once said :

"The software is not finished until the last user is dead"


At TOWER Software, as these bugs arrive, they are prioritised according to a simple scale:

1) Urgent Fix
2) Fix ASAP
3) Fix
4) Fix if Time
5) Won't Fix

It's pretty self explanatory, so I won't go into the bleeding obvious, but each day, the team goes through and assigns a significance score to each bug. Then we hand them all out and get to work. That process is called triage, after the medical hospital waiting system. The goals might seem pretty similar -you might think "Ok, you want the bugs that are really bad to be fixed first - not unlike the hospital scenario where the man with the axe protruding from his head gets treatment before the snot-nosed baby".

Well, yes. But also, no. Therein lies The Secret.

People (usually testers, but I generalize and digress) have this crazy idea that the aim should be to fix all the bugs, and ship with none. Well, I don't know what planet these people come from, but all I have to say to those people is this:
A ha ha ha ha ha ha ha!
*gasp*
*breath*
A ha ha ha ha ha ha ha!
There is no software with no bugs. All software projects have bugs in them. All of them. Leaving aside the definition of a bug, just think about the bugs you live with in the software you use. Did you ever have Microsoft Word just spontaneously shit itself and delete your document? You know you did. Do you know why Microsoft implemented system restore points in Windows XP? Because The Bugs live with us, baked into our binary apple-pie that we consume every day.

The big secret difference between the medical Triage and Software Bug Triage is this:

We're not trying to decide which bugs to fix. We're trying to decide which bugs to ship.

That way, we only ship with bugs that people a) won't find or b) won't mind.

Each time we find a bug we are prepared to ship, it's like a fairy gets it's wings somewhere.

At the moment, as we inch towards the 1.0 release for ice, the only thing climbing higher than the team's stress levels is the triage bar. It's getting pretty hard to get a bug fixed right now.

This comic makes a joke out of it, but the fact is, as you get closer to shipping, you just can't wobble the jelly. Remember that as soon as a developer fixes a bug, there's a risk that they'll add a new bug, or break something somewhere else. It's a constant balancing act and one that takes incredible attention to detail to get it right. .

That's not to say that I don't think you should fix bugs. You should. And in a perfect world, where we could push a button on a wacky time machine-o-tron and stop time, and fix absolutely every bug, and then ship - well, then that would obviously be a better option. (Obviously I left out the bit about where you would start time again, otherwise there would be nobody to buy your instantly developed and totally bug free product.)

But the reality is that we don't have one, and so we try to make most of the people happy, most of the time.

Oh and if anyone has such a machine, can I borrow it for a week? Only one, honest....

Comments

  1. Hey you! I followed the link from your comment on Eric's blog. You say he put it more eloquently. Yeah I guess, but yours is great too (and I've only just read one paragraph). Good thing I found your blog, now I have another good software blog to read. Shweet.

    ReplyDelete

Post a Comment

Popular posts from this blog

Going West vs Going to Sleep

Phew! That was one busy adventure to the other side of this wide brown land (It is wide, and brown, but mainly wide) TUF 2005 in Perth was the launching ground for our new product, ice. Stilly and I were presenting the keynote, which was based around showing off ice, and talking about collaboration and other reasons why a bunch of customers might want to buy it. In a stroke of genius\insanity, we decided to let the audience pick the demonstration platform based on random outcomes - we built a giant cardboard die with various operating systems and platforms written on each side - then we'd let a volunteer from the audience roll the dice(die?) to determine which platform we should do our demo on. ice (the italics belong to the marketing department) works on any platform, so we were pretty confident that we would be okay. But, what I hadn't counted on (those italics are mine), was my crummy laptop (which was acting as the server) deciding that it would be a good idea to hibernat...

Considerably smaller than Texas...

Well, after jonron 's nagging, I figured I better post something! It's weird - being so far away from home and in such a strange foreign place - you'd think that I'd have all kinds of things to say, but in truth most of the time I'm either so busy with work that I don't have time to post, or so lonely that I don't want to burden you all with my misery... (sob!) Anyway - I'm currently posting from the Best Western Hotel in Corpus Christi, Texas . (We have a TRIM Customer here who needs some help with configuring their records management system, so Simon and I have been helping out. ) I'm not sure that I'd ever want to stay at the Worst Western. Or even the Average Western, but no matter... Texas has been a pretty entertaining place to visit. Our efforts at finding a place to park ended in a church parking lot where the sign said "Clergy Only - Sinners Will be Prosecuted (and towed)" When we finally found the office, there was another gi...

Dreams of a night on the TRIM

Disclaimer:People's dreams are often not very interesting to anyone but them. But this was so weird I had to write it down. I don't know what it means, other than to highlight the fact that I'm a little deranged. All companies and people in this dream are actually me, and almost definitely wouldn't behave in such a fashion in real life. No correspondence will be entered into. Shimmery Dissolve in In my dream, software was alcohol . Everybody was drunk all the time, because of the amount of software in the work place. Big companies like Microsoft and Oracle were in the business of getting people shitfaced at big conventions, where they'd teach you about the alcohol molecule and how they'd added a new hydroxide molecule. Microsoft called this directDrink. IBM had a reputation for taking out the CEOs of large enterprises and getting them all really drunk, thus mandating more IBM liquor (which was blue) be bought and drunk by millions of government employees around ...