Affordance and Fitts’s law in Interface Design
by Rod on July 28, 2010
Claris main page is the Dashboard. Here you will see a list of all the project stories, in two panels: on the left, the stories expected to finish in the current sprint, and on the right, the stories that are planned for future sprints (or, in other words, stories in the Product Backlog).
The catch is that you will be able to organize your stories by dragging and dropping from the Product Backlog panel to the Current Sprint panel and vice versa. No page refreshes, no new pages, no filling complicated forms, no nothing.
So, how can we improve the display of each story? How can we “hint” the user that they can be dragged and sorted? Here’s an early mockup of each story:

At first, we thought that the icon in the right could indicate that the story can be dragged. But it’s so tiny… and it doesn’t actually look like a button… that it doesn’t seem very promising. Fortunately we have two well known concepts in Interface Design that we could get our hands on: first is Affordance and the second is the Fitt’s law.
Affordance is the quality of an object that suggests how it should be used. In the real world we have hints everywhere, for example, a door grip that suggests that it can be pushed or pulled. In software, affordance is used prominently. Have a look at the screenshot below: there’s no doubt that these icons are meant to be pressed, because they look as real world buttons.

The Fitt’s law theory is more complex. It basically says that the time required to move to an area is a function of the distance and the size of that area. In other words: If your button is too tiny, users will have trouble to click it. Applied in our application: users will need a big icon/area so they can drag each story naturally and without problems.
Here’s a screenshot of a new story, taken directly from the web application:

By adding a block in the top of each story, i.e. a story header, we add dimension and affordance. And by removing the tiny grip icon, and letting users sort stories by dragging from the story header, we implement the Fitt’s law in a simple, elegant way. Can you spot it? You are also accustomed to move your windows by clicking and dragging from the window title… and that’s what we call a pattern in User Interface.
But we will talk about patterns in a next entry. What do you think about this iteration?
