12 steps to stellar software design

Usability is an always-neglected art. A pair of Canadian experts offer a fresh approach.

Many organizations can't understand why their software doesn't perform as expected, or why users make unexpected errors. According to David Crow, usability advisor at Microsoft Canada and Jay Goldman, president of Radiant Core in Toronto, waking up to the need for usability testing is akin to hitting rock bottom. At Seneca College's Free Software and Open Source Symposium last month, the two offered a 12-step program to get back on track, along with some recommended reading.

Step 1: Admit you have a problem. "It is impossible to design good usability on your own," said Goldman. They advocate the use of personas, fictitious characters that are created to represent the different user types within a targeted demographic that might use a site or product. "Guerilla" usability tactics such as informal customer interviews and teaming up with tech support staff might work too. "Know thy user," Crow said.

Resource: The Design of Everyday Things, by Donald A. Norman

Step 2: Believe in a power greater than yourself. Crow showed slides of three different types of public benches and asked which design the audience preferred. Inevitably, the reaction was mixed. "You see this with application development all the time," he said. "You need to find out who these folks are that are using your stuff, and they may not end up being the people you started out with when you designed the product."

Step 3: Make a decision to recognize good design. Goldman invoked a Steve Jobs quote: "Design is not just what it looks like and feels like. Design is how it works." It's worth remembering, given the resurgence in Mac-based hardware sales, Crow pointed out.

Step 4: Make a searching and fearless inventory of your user experience shortcomings. Crow and Goldman invited the audience to help draw a stick figure, and showed how even simple illustrations involve a lot of logic and questioning of basic assumptions. That's why they say comic book guides could be useful text for software development, too.

Resources: Understanding Comics, by Scott McCloud; Creating Conceptual Comics, by Kevin Chang.

Step 5: Admit to someone else the nature of your problems. More than just getting feedback, talking as an equal to users can help sort out why an application may not be working. "This is often when you look at your task list and say, 'Wow, I've got a ton of other stuff to do,'" said Goldman. "It takes a lot of courage to take that step (of talking to users regularly) but once you've said something publicly, you're a long way down that path."

Step 6: Be ready to remove these defects of character. Crow used Microsoft's Office 2007 as a case study. As the company added more features into its Word product, for example, it began using "rafted" toolbars buried in the interface, moving from 12 to more than 31 toolbars by the time it offered Word 2003. "Of the top 10 feature requests, five had been in Office for more than one release," Crow said. The latest version, in contrast, uses a "ribbon" with a master set of toolbars that helps find what you need.

Step 7: Ask for help. "It's out there," said Crow. Even large organizations with supposedly wide resources, like the open source Mozilla Foundation, have taken to posting mockups of the next Firefox browser on their Web site. That may scare off enterprises concerned about rivals watching their plans, but Goldman and Crow said the results can be rewarding. "You don't have to listen (to the feedback)," Goldman said.

Resources: The Usability Professional Association Sigchi.org and OpenUsability.org. Also, A Pattern Language, by Christopher Alexander.

Step 8: Make a list of all the users you've harmed, and then make their lives better. Goldman offered a scale that ranged from functional to reliable to usable to convenient to pleasurable to meaningful. "You have to assess where you fall. Most fall half-way to convenient," he said. "It's a really hard one to cross," added Crow.

Join the newsletter!

Error: Please check your email address.

More about GoldmanMicrosoftMozillaMozilla FoundationNormanRockYahoo

Show Comments

Market Place