Monday, December 17, 2007

Peer Evaluation

I am evaluating Daniel Josefsson's interface for booking laundry machines.

User Evaluation

The student residence where I stay in uses exactly such a system as described by Daniel, where residents can book 2 washing machines, 1 tumble dryer and 1 drip dryer in 3-hour slots, therefore I asked a neighbour of mine to evaluate the interface. He is a 20-year-old Englishman who has been in Uppsala on exchange for 4 months.

His comments are as follows:
  • On the calendar screen, it should perhaps show your existing bookings in a different colour.
  • The interface is clearly laid out and aesthetically pleasing.
He had no problems using the interface to perform the tasks as laid out in Daniel's scenarios.

Heuristic Evaluation

I have also evaluated the interface using the heuristic evaluation method. The ten principles below are rated on a scale of 1 to 5, with 1 being Very Bad and 5 being Very Good.

Visibility of system status - 3
There is no explicit display that lets the user know what stage of the task he is at. However since this is a simple interface for a simple task, with only 4 different screens, it will not affect the user much. This can be improved by adding a title bar to each screen, that gives an indication of what the screen is about.

Match between system and the real world - 4
Only the English interface is available for evaluation, and it is clear and easily understood, with no complicated words used. Information is also presented logically.

User control and freedom - 4
"Back" buttons are provided where necessary, which is good. There is no "undo" function, however a booking that is added or removed in error can be manually removed/added by the user.

Consistency and standards - 5
The interface is consistent in its use of colors, words and other cues.

Error prevention - 4
The interface itself is not prone to errors. There is no confirmation screen to confirm the user's booking addition/removal, however, as mentioned above, it is rather easy for the user to manually "undo" any mistakes that he has made.

Recognition rather than recall - 4
This aspect can be improved by highlighting the user's own bookings in a different colour, in the screen where time slots are displayed for selection. It will be helpful to the user who deliberately spaces out his laundry bookings, for example once every 3 days. It is also helpful to users who want to book 2 consecutive time slots.

Flexibility and efficiency of use - 5
The simplicity of the task means that little can be done to make it more efficient.

Aesthetic and minimalist design - 5
The design is simple and easy to use, and pleasing to the eye.

Help users recognize, diagnose, and recover from errors - 3
No documentation is provided regarding error handling.

Help and documentation - 5
There is a prominent help button on the top-right corner of every screen, which is good. Concise instructions are also provided beside most buttons. No mention of separate help or documentation is made but it does not seem necessary for such a simple task and such a simple-to-use interface.

Monday, December 3, 2007

QOC Documentation Notes

Dwarf Fortress already has an user interface, albeit one that is based purely on keyboard input, so the challenge in my design is to improve upon it. However I did not wish to alter the interface in major ways that will make it unfamiliar to existing players of the game. The focus of the interface design is therefore to

1) Add mouse support to the interface.
2) Add information, or ways to obtain information, to the interface.

While designing the interface, 2 key questions occurred to me. The QOC diagram is here.

1. How will the interface lead the user through the process?

A very popular method nowadays for the process of set-up, be it installing a new program or creating a new document/project, is the use of wizards. Wizards are intended to guide the user's hand through the setting-up process, through a series of sequential steps. The advantage of this is that it is easy to use and understand.

However, I decided to adopt the traditional approach of laying out all the options in one window. This is because the tasks of the program do not have a sequence -- they can generally be performed in any order, and in many cases can be omitted completely. So, rather than fit a sequence to the tasks and force the user to complete them in order, I will design an interface that allows the user to control which task to complete and when to complete each of them. Laying out all the options in one screen also allows the user to review his choices in one screen.

2. How will the interface display additional information/help text?

There are many areas within the interface that will benefit from additional descriptions. For example, the items and skills of the game can be explained briefly. Also, actions and buttons within the interface might need explanation of their effects. I have come up with 3 possible ways to display this information to the user.

The first way is through the use of tooltips. These will appear when the user hovers the mouse pointer over an object within the interface. This method of obtaining help and information will be very familiar to users of Microsoft Windows and most other operating systems with a GUI. Tooltips also serve to reduce the amount of text on the actual interface, therefore making it less cluttered and intimidating.

An alternative way is by making information appear in a status bar at the bottom of the window. This is also a popular method used by many programs. However, due to the status bar being at the bottom of the window, users will not naturally pay attention to it. Furthermore, the status bar is usually designed to be unobtrusive, and therefore has small font that is not very readable. This method is, therefore, not as preferable as the use of tooltips.

The final, and most unpreferred way, is to make descriptions in the interface more verbose. This includes making button text and other descriptive text within the interface more verbose. While this means that the user has all the information he needs displayed on the window, this also makes the interface very cluttered and intimidating.

I have therefore decided to use tooltips to display additional help and information for the elements in the interface, and will keep the information fixed in the interface to the critical ones.

Saturday, December 1, 2007

Interface Design Notes

Preface

This page documents the event flow for the designed interfaces for the game Dwarf Fortress. The interfaces are meant to be used when the user starts a new game, in either Fortress mode or Adventurer mode. The interfaces currently have no aesthetic elements, having been designed purely for the purpose of demonstrating usability and element placement.

Adventurer game creation

Upon selecting to create an adventurer game in the main screen, the user is presented with the view in Window 1. The current implementation of Dwarf Fortress is that a set of random attributes is generated at the start for the player, and a player who does not wish to spend time on character creation can immediately start the game by pressing the "Start the Adventure" button. Otherwise, the user is free to change any attribute of his character by pressing the "Change" button beside the approopriate attribute. All "Change" buttons will open a new dialog box detailing the available options, with the exception of the gender "Change" button which will simply toggle between male and female. However it must be noted that, should the user change his race, a new random name will be given to him and the skill competencies will be reset to none.

The name change dialog box is shown in Window 2. The user can change their first name via the text box at the top. The last name is given in the game language, and is made up of multiple optional components. A row of buttons allows the user to select which component of the name to change. The white button is the currently selected button, while dark buttons are not available (some components only have an effect if other components are present). Upon selecting a name component button, the user is presented with english words and their game equivalent. The user then chooses from the list by clicking on the desired word. The user can also narrow down the word list by typing in the search textbox. The word list is then updated dynamically. The "Clear component" button allows the user to clear the component. The "Randomize name" button gives the user a random name.

The race selection dialog box is shown in Window 3. In this dialog box the user can select which race and civilization he belongs to. The race determines his available skills while the civilization determines his starting location, which is shown on the map at the right of the dialog box. The "Human: Play Now!" option is a special option that gives the user a pre-allocated civilization and set of skills, and is the default option.

The skills selection dialog box is shown in Window 4. Here the user is presented with a list of the available skills for his character and his competency for each skill. The amount of skill points available for spending is shown in the upper right corner. The cost to increase the competency of each skill by one level is also shown. All the information for a skill is presented on the same row, including the "+" and "-" buttons with which the user can change his skill competency. The rows are marked in alternating colours for additional clarity. There will be tooltips available when the user hovers his mouse over a skill name, that explains briefly what each skill does.

Fortress game creation

Setting up a fortress game involves first selecting the location of the fortress. The screen for doing so is shown in Window 5. The 3 maps shown in the window are the world map, the region map (a zoom of the world map) and the local map (a zoom of the region map). The dotted lines between the maps attempt to demonstrate that each map is the zoomed-in view of the previous map. The local map has 3 display modes, one that shows the terrain type, one that shows the relative elevation of the land, and one that shows the presence of cliffs. These display modes can be changed using the drop-down list located beneath the local map. The legend at the bottom of the window changes according to the display mode of the local map.

In this window, the user can perform a variety of tasks related to location selection. First of all, using the buttons located below the region and local maps, the user can adjust his starting location and its size. Information regarding the selected play area is shown in the lower left of the window, with a drop-down list allowing the user to view the information for each biome that falls within the playing area. Below the information box, the user can select which civilization his pioneers come from, a decision that currently has minor impact on the game, and therefore is relegated to an unimportant part of the screen. The user can also choose to reclaim an old fortress, that he had abandoned in a previous game, rather than start a new fortress. Any reclaimable fortress can be selected, instead, in the drop-down list at the bottom of the window, and the maps and information boxes will updates themselves accordingly.

Once the user has decided on his starting location, and clicked on the "Next" button in window 5, he is presented with Window 6, where he can choose either to start his game immediately, with a preset template of dwarves and equipment, or to plan his journey more carefully, allowing him to customise his starting dwarves and equipment (which will bring him to window 7). The "Cancel" button allows him to go back to window 5 and choose his starting location again.

Window 7 presents the equipment and personnel selection screen. Here the user can customise the dwarves and equipment that he starts with. The user has 200 points to spend and that is reflected in the upper right corner of the window. At the top of the window the user can change his fortress name and the name of his group of pioneers, either of which will bring up a dialog window (Window 8) that is similar to the one used in Adventurer Creation.

The main part of the equipment and personnel selection screen consists of a tabbed section with 2 tabs, one for personnel and one for equipment. In the personnel tab, the user can change the first name or the profession of the dwarves, as well as assign them skills using an interface similar to the one used in Adventurer Creation. An addition to the skill interface is a counter at the upper right corner, because each dwarf can start with a maximum of 10 skill levels. The user can select the dwarf whose skills he wishes to modify using the column of radio buttons at the left of the tab. He can also view information about the selected dwarf, which will open a dialog box that displays that information.

In the equipment tab, the user can choose the type and quantity of equipment that he wishes to bring along. The left half of this tab consists of food and tools while the right half consists of livestock. The amount of each item brought and the cost per item is displayed, in an interface similar to that used for skill selection. The user can modify the quantity of existing items by clicking on the "+" and "-" buttons beside every item listing, and can add new items to the list by clicking on the "Add new item" button. The user will also be able to get information regarding each item by hovering the mouse pointer over it, at which point a tooltip will appear.

The Add New Item screen, presented as Window 7c, is very similar to the name change screens, featuring the same dynamic search capabilities. Search results are presented in 2 columns, and the user selects the item to add by clicking on it directly.