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!


Sign up to gain exclusive access to email subscriptions, event invitations, competitions, giveaways, and much more.

Membership is free, and your security and privacy remain protected. View our privacy policy before signing up.

Error: Please check your email address.
Keep up with the latest tech news, reviews and previews by subscribing to the Good Gear Guide newsletter.

Shane Schick

ComputerWorld Canada
Show Comments

Cool Tech

Toys for Boys

Family Friendly

Stocking Stuffer

SmartLens - Clip on Phone Camera Lens Set of 3

Learn more >

Christmas Gift Guide

Click for more ›

Brand Post

Most Popular Reviews

Latest Articles


PCW Evaluation Team

Aysha Strobbe

Microsoft Office 365/HP Spectre x360

Microsoft Office continues to make a student’s life that little bit easier by offering reliable, easy to use, time-saving functionality, while continuing to develop new features that further enhance what is already a formidable collection of applications

Michael Hargreaves

Microsoft Office 365/Dell XPS 15 2-in-1

I’d recommend a Dell XPS 15 2-in-1 and the new Windows 10 to anyone who needs to get serious work done (before you kick back on your couch with your favourite Netflix show.)

Maryellen Rose George

Brother PT-P750W

It’s useful for office tasks as well as pragmatic labelling of equipment and storage – just don’t get too excited and label everything in sight!

Cathy Giles

Brother MFC-L8900CDW

The Brother MFC-L8900CDW is an absolute stand out. I struggle to fault it.

Luke Hill


I need power and lots of it. As a Front End Web developer anything less just won’t cut it which is why the MSI GT75 is an outstanding laptop for me. It’s a sleek and futuristic looking, high quality, beast that has a touch of sci-fi flare about it.

Emily Tyson

MSI GE63 Raider

If you’re looking to invest in your next work horse laptop for work or home use, you can’t go wrong with the MSI GE63.

Featured Content

Product Launch Showcase

Don’t have an account? Sign up here

Don't have an account? Sign up now

Forgot password?