As of yesterday, I have consulted on, managed, planned or been otherwise involved with $2 million in multitouch research and application development. What has shocked me is the fantastic ability of these projects to go over time and over budget.
There are a number of reasons for this. The biggest and brightest is that teams are so excited with the technology that they forget to define their objectives first.
The second reason is the designer is brought in at the end of the process instead of the begining. The third is that user testing starts too late in the process.
There are five "must ask" questions that will help you to quickly define your application and avoid much wheel spinning.
1. What is the interaction model for each task module?
One strike aspect of multitouch devices, particularly large multitouch devices, is their social nature. Multiple users want to use them at the same time. This seems obvious, but it requires rethinking interaction models that are assumed in GUI interfaces.
- Freeform (One person manipulates one screen. The objective and order of tasks are not important...like the Surface Sample Apps)
- Time/order Sensitive (The order of input is unimportant, but the order and rate of task completion is...like the classic videogame Millipede)
- Turn-based (I do, then you do...like Poker)
- Synchronous (We both work on different content at the same time...like Halo)
- Asynchronous (We manipulate different content at different times...like an email thread)
- Collaborative (We manipulate the same content together)
2. How are content and controllers accessed?
In GUI simple applications, it's easy to get away with a single mode interface. In multitouch, the innate space limitations make it very difficult to have complex, modeless interactions where every window/controller is available all of the time.
A strategy for prioritizing, indexing and quickly accessing content and controllers is vital to application usability.
3. What is the minimum amount of contextual information that users need at any point to move toward their goal?
It's important to limit the amount of visual noise on screen for two reasons:
- The inherent "pixel inefficiency" of multitouch interfaces
- Unnecessary information is frequently misinterpreted by users, decreasing usability.
A clearly prioritized, minimalist approach to information almost always enhances the usability of new interfaces. One great example of this is the Surface attract app.
Users first notice the bright reflection on the pebble in the center. This subtle cue encourages users to make a first touch. When users get bored of the water ripples, subtle animation of the Surface logos in the corner suggest that they might be worth touching as well.
4. How clearly does the design of controllers need to articulate what they do?
There are a number of "short hands" in GUI...We know to read web pages from top to bottom, left to right. In multitouch applications (particularly in tabletop applications) these customs go out the door.
It's important to design controllers so that they are as clear and simple about how to achieve tasks as possible. If an asset looks, sounds and animates like what it does, it will be highly usable.
Leveraging the real world experiences that users have of physical artifacts is a key communicating what they do and how to use them. Metaphors that are both graphic and tangible seem to be the simplest to deduce...buttons, knobs, hinges, moving objects forward and backward in space...etc.
5. How do users know what each controller does, how to use it and what content it affects?
Discoverability of features is intimately linked to visual design. It's important to have a strategy for communicating whether controllers have the ability to manipulate a single window or multiple windows.