2004.08.17
Usability Does and Don'ts : widgets determining behaviour of other widgets
by Karel Thönissen
Recently, we had another beauty of a usability problem. We are developing software that should be simple to use. Our customers must be able to install the software without help from a system administrator. Running our software should also be safe. Therefore, our users should be not forced to have system administrator privileges. So when we develop software, we use normal user accounts, not SA-accounts. If we can develop the software without system administrator rights, then our users can certainly use it without these rights.
Last Friday we experienced problems with Delphi exactly in this category: Delphi requires that developers have SA-accounts for several mundane tasks. For example, when Delphi is freshly installed, the help database has not been compiled yet. This is done when it is first used. Unfortunately, the compiled help database is written in the program files hierarchy. This is, however, not accessible to the normal user. This can be solved by calling in the SA, make him run Delphi, and invoke the help function. Then the database is compiled and written to the system with sufficient privileges. This is a one-off problem.

However, we found another problem. During development it is nice to have templates for standard code. Delphi provides this functionality in the IDE. However, the template database is also stored in the program files hierarchy, but this is not a one-off problem, because developers may want to change the template files every now and then. So what we had to do was granting all developers access to the template file.
I know how to set access rights in Windows 2000 Pro: right clicking on the file or folder, go to properties, click on the tab for security and then set the permissions for the different users and user groups. However, I could not find the feature in XP-Pro. Knowing the supplier, the feature could not have gone: they have never increased usability by removing functionality, except perhaps for Bob and the dancing Paperclip. I asked my colleague for help. Together we looked everywhere, but nowhere we could find something closely related to sharing and/or permissions, except for the broken shared document folder. We searched the help information, but the information there was totally incomprehensible. Neither of us understood a word of what was written there.
After an hour of frustration we found the solution: somewhere in the Windows Explorer options one can set a preference for a simple or advanced sharing of files. When the advanced option is chosen, the missing permissions tab is shown with the properties of every folder or file.

My usability frustration is this: certain parts of the user interface are hidden depending on a preference elsewhere in the user interface. There is no indication of why the functionality is hidden, neither a hint where to look for the preference. To make matters worse, the location of the meta-preference is non-intuitive and the help information is totally broken. Microsoft repaired a usability problem (user playing with permissions) by making things worse.

When writing this blog entry and making the screen capture for the illustration above I found another usability problem. Currently, I am not logged in as a system administrator. I changed the settings and saved them by pressing on OK. However, the changes are not applied. Problably because this is beyond my permissions as an ordinary user. That makes sense. But why fail silently, why not tell the user that changing the preference is not allowed, or why not gray-out the option since it is not available? Or even better: why not allow the user to log-on as administrator just for this one task as is possible in MacOS X? It took me 5m30s, just to change this single preference! Running as a system administrator would have been faster, but that is ***not a good idea***.
|