foaf-o-matic
The mission: jazz up foaf-o-matic, an application created and maintained by a colleague of mine, within two and a half weeks.
Foaf-o-matic was meant to be presented at the year-one-review meeting of the Okkam project (my current employment). But to really make a good impression, several usability and design issues needed to be corrected.
revealing and organizing issues
- a walkthrough & think-aloud test with laboratory colleagues has been performed
- 58 task have been extracted from the test results
- priorities have been set up: the urgency depended on the kind of problem (see list below ) influenced by the number of times this issues has been mentioned by the testers
task priorities
- 5 user aborts or gets wrong conclusion about system status
- 4 major issue, user is disturbed
- 3 issue, but not disturbing
- 2 minor issue
- 1 future request
task categories
- logic
behavior differed from expectation - labels
incomprehensible captions used - layout
structural improvements due to wrong placement of components - simplify
unnecessary functionality, or very specific options not hidden in menus - design
use of unnecessary, disturbing or misleading design elements - function
missing or inappropriate functionality, e.g. back button problem - feedback
missing or inappropriate (too strong or too weak) feedback - bug
unhandled exceptions in the application
As the time period was very much limited and one week has been used to drive the tests, evaluate and structure the results and to define solutions, the tasks needed to be ranked, as we could not expect to solve all of them within one week.
errors and solutions
Following Nielsen’s heuristics.
Visibility of system status
The busy indicator is totally lost and invisible, it is hidden in the upper right corner, between four dark circles and the “7″.
Surrounding images are too strong, missing space, indicator too small and too light colored.
See the solution in the final screenshot.
Match between system and the real world



Nerdish language, “FOAF it now” unrecognizable as link, at first trail, I could not start the application due to this issue. Additionally there is a menu above without function in this application state and the user can not disable this intro screen.
Finally “FOAF” and “ENS” got an small explanation, the user can disable this screen with a checkbox at the bottom and he or she easily finds the link to start.
An illogical menu structure labeled with system-oriented terms. To find options about ones profile, the user needed to choose “FOAF” -> “Primary person” -> … despite the fact, that the according GUI section one the left, is titled “Me”.
“Generate FOAF” has been moved to “File”, as it creates file output. “Primary person” was renamed “Me” and the submenus became main menu items, as they are main elements of the GUI.
Error prevention

The label “Picture” did not communicate, that an URL is required here. Users always ran into errors here. Same for all “…WebPage” fields, as is necessary to enter “http://” in the beginning, as the field content is checked to be a valid URI.
By editing labels and pre-filling form fields, those problems could be solved already.
Aesthetic and minimalist design

The messy look of the old version could be improved by hiding less important information. In this case, the notice at the bottom of the dialog has been hidden behind the question mark symbol. As soon as the user moves the mouse pointer upon, a hint appears.
Help users recognize, diagnose, and recover from errors
Improved version indicates errors in a much more visible way and additionally gives a short explantion of the problem in simpler language, i.e. “invalid address” instead of “invalid URI”. For now, the user is asked to check again, in a follow up version the suggestion should be problem specific, in this case for example an example of a valid URL could be shown.
Re-engineered interface at a glance
About 60 issues have been found during the evaluation, 37 issues reached an acceptable state, 12 complete satisfaction within just 10 days of work. The majority of problems have simply been overlooked by the developer in the past, or have not been recognized as problems at all.


