Tuesday, April 29, 2008

"Forcing functions"- interaction design technique, used but not widely understood

Defining and using forcing functions ...

"What is a forcing function?

A forcing function is a constraint where the user "is forced" to complete a task based on a limited, paired down set of features or controls.

Forcing functions help streamline, simplify or minimize how a user interacts with a design. Designers benefit from this interaction design technique by reducing navigation redundancy, task effort and the complexity caused by "feature frenzy" (see my previous article on feature creep).

Not all forcing functions are based on good design decisions. Successful designs that make use of the forcing function interaction design technique are based on an empirical understanding of user default behavior, task expectations, error and failure analysis and context of use observations.

When should you use "forcing functions" in your design?

When you want to:

1. Constrain a user interaction
2. Speed up or re-direct a task
3. Limit an interaction
4. Eliminate confusion
5. Simplify a design
6. Protect users from danger or hazards

When forcing functions go wrong

Feature-forcing (making users interact with features they don't want) tends to be the end result of inappropriate use of the forcing-function technique. A forcing function is a disciplined use of force, the way a mother would give her child what they need, not what they want.

In general, products that lack good usability are characterized by designs where users are more error-prone, where defaults are inexact, where layout or instinctive behaviors don't feel right. In general designs that include error handling and/or error recovery as a component of the user experience, are lacking a forcing-function. This isn't to say error-handling is bad, it's just that many times error prevention should be the focus not error recovery.

"Making a user do something an elegant way is far better than making a user do something a mediocre way and then offering them support as they fail and recover from the error."    (Continued via Demystifying Usability)    [Usability Resources]

Forcing Functions - Usability, User Interface Design

Forcing Functions


Post a Comment

<< Home

<< Home