I was working with a client earlier this year and I asked their top QA person to pull me a list of any open UI bugs in their bug tracking system. He did, and I got a list of a few dozen bugs. This is hardly the first time I’ve looked at one of these lists – I’ve made contributions to them many times. But I was really struck by a something as I read the bug list.
Most UI bugs are priority LOW
When I thought about this at first, I thought: well that’s typical. Engineering never gives UI any respect. Engineering bashing is always the easy shortcut, isn’t it? But when I compare a UI bug such as “The Help button is not in the usual location” to “The application crashes when I try to save”, it’s easy to see how a UI bug ends up with a low priority. In fact, I totally agree.
The problem is the scale that the bug tracking system uses. The bug priorities are all about the function of the software, not the usability of the software. In practice this means that having the application crash or fail to save data is considered a disaster – highest priority. But having the user give up and stop using the software isn’t on our scale.
The bug system scale measures whether or not the software functions – does it do what it’s supposed to without errors? And this is something that we can easily quantify. When there’s a problem we get a bug report, then the software engineers try to reproduce the bug and then track down the problematic code and fix it.
Since UI problems rarely cause anything resembling a crash, they end up in the “low priority” bucket nearly every time.
Death by a thousand cuts
The truth is that very few UI bugs will result in the user getting up and walking away. What kills a piece of software isn’t one big design problem, but rather the death by a thousand cuts. Little frustrating problems that pop up again and again. Having to retype information I just entered. Having to click 6 times to complete a single action. Having poorly presented information that’s hard to read. The steady drumbeat of poor experiences.
And there’s absolutely no system for representing these problems in the bug system. Bugs are not evaluate in the aggregate – they’re looked at individually. No one will die from one cut, so each bug is unimportant. But taken together, they are a bigger problem. I think it’s time to rethink bug tracking and how to best integrate good UI design practices into bug tracking systems. Anyone have any success stories they’d like to share?