March 31, 2008

...Learn TDD with Codemanship

Code Usability Testing

Ding dong!

Before I forget, I just wanted to scribble down this idea that one of the teams I'm working with is toying with: and I think they might be on to a winner.

We've been scratching our heads (and other less socially acceptable body parts) trying to figure out a way to assess the readability of their code, as part of the design of their own quality dashboard.

But what the team is coming up with is I think really rather cool: they're planning to do code usability testing.

The method could be simple:

1. Find some developer guinea pigs

2. Give them the lastest copy of your code (a working build, mind you!)

3. Set them a task to change or extend the code (e.g., add a new use case scenario)

4. Sit back and let them get on with it, l offering no help until they get stuck and ask for it

5. Every time they ask for help, note down what they got stuck on, or what they would have expected in the code but couldn't find

For the dashboard, it could be as simple as:

* Green Light - every developer managed to complete the task with minimal assistance

* Amber Light - some developers couldn't complete task without considerable assistance

* Red Light - none of the developers could complete the task without considerable assistance

Of course, if they used the same guinea pigs every time, it would get easier for them without any improvement in the code, so they'd need a stream of fresh test subjects. Realistically, with 3 subjects at a timer, they could probably manage to do code usability testing maybe once a month.

They've not tried it for real yet, so I have no field data to report - but I just thought it was such a cool idea on paper that I wanted to share it straight away.

I wonder, is anyone else out there doing this?

Posted 10 years, 3 months ago on March 31, 2008