With a background of studying software agents and user interfaces, I’ve always tried to come to grips with the conflicting views of user needs that the two fields have. Some thoughts on the matter.
I’ve fiddled around with software agents and usability for quite some time during my studies. Because of my work I haven’t lately had time to follow the new developments in both fields, but there are a few quotes I’d like to share and discuss the conflict that the two fields have in their perception of user needs. Disclaimer: I don’t think that the conflict is as pronounced as I make it to be and none of the quotes presented have been tied together anywhere else but in my mind.
We’ll start off with a view from the agent community as presented by Patti Maes:
“…direct manipulation will have to give way to some form of delegation.”
The usability community responds with Ben Schneiderman’s view that
“…users have a strong desire to be in control and to gain mastery over the system.”
In the agent view we can see some of the basic thought processes that have lead to the infamous Clippy and even dynamic menus that are used in later versions of Windows. From what I know of usability, consistence is one of the main factors leading to the learnability. Intelligent user interfaces try to automatically adapt to the user’s actions, thus changing the UI.
However, some ideas for reconciliation can be found from Donald A. Norman
“Do we need intelligent interfaces? I don’t think so: The intelligence should be inside, internal to the system. The interface is the visible part of the system, where people need stability, predictability, and a coherent system image that they can understand and thereby learn.”
So the user interface should be traditional in the sense that it doesn’t automatically adapt to the user’s actions. However, the internal intelligence can analyze the way the user acts and adapt the functioning of the system so that frequent tasks are easier or faster to accomplish. In a sense, the current trend with browsers offering to remember inputted form data is a way of hiding intelligence in the system. Google’s new Google Suggesst is another example. A typical broser interface has been extended quite significantly, but the user doesn’t see it in any way that would interfere with the way they are used to using Google (or any other search engine for that matter).
I think that the trend of creating intellingent UIs came from the fact that artificial intelligence needed a boost and user interfaces were a rising point of focus in IT during the same time. After all, we’ve been playing around with quite an old concept of windows and pointers and researchers (and companies) do try to create something new to give them kudos or more market share.
While 3D user interfaces have generally been concepts that have rarely left the drawing board or prototype implementations, Sun’s Project Looking Glass might be a good way of extending the current trend in user interfaces. I will be looking into it when I find the time for it.
All in all, intelligence in computer systems can help users in their every day tasks, but hiding the intelligence in a way that it does not become a barrier to the users goals or the learnability is a difficult thing to do. And as in any UI design, trade-offs must be made between how fast and effective the interface is to use and how easily it can be learned. But it is an interesting challenge.
P.S. Since this all ties into my current attempts at fiddling around with the Semantic Web, take a look at Stefano’s entry on A Day in the Semantic Web.