[comp.groupware] Prescient agents

mcgregor@hpsmtc1.HP.COM (Scott McGregor) (03/20/90)

> Scott McGregor recently brought up the idea of prescient agents which
> automatically adjust system behavior to match the habits of the user.
> But, doesn't such adaption confuse users?  How do you form a consistent
> mental model of a system which magically changes?  In practice, are users
> (particularly novices) confused?  Any good papers on the topic?

I have not seen much written on prescient systems.  Systems that show the
simplest level of memory (i.e. remembering only the most recent state) are
not uncommon (Mac desktop, ISPF panels, rooms).  Such systems rarely seem
to confuse the user, since they don't see it as a system that magically
changes (because the display is slightly different every time they get
started) but instead see it as a system with a constant RULE about what
should be displayed (namely the most recent state).  

In our experience, systems that can return to more than one state can
be confusing--with much the same feeling  you can get when lost in hyperspace.
It is a challenge for the designer to provide aids that allow the user
to build habits that will be successful and to maintain a clear mind
as to the state of the system.  Clearly some systems do this better
than others, but our experience was that the reasons some were better
than others had much to do with well known Human Computer Interface
principles:

 * Simplicity, especially through limiting displays to what is most likely 
   to be valuable in the current context helps avoid mental overload.

 * Attention to Habit Formation strategies is valuable.  Note that you must
   be able to know what to expect to build habits--when things are subject  
   to change rules like most recently used or alphabetical order can be 
   helpful.

 * Constantly visable state displays can help minimize lost in hyperspace
   feelings.

Keeping these strategies in mind, we didn't notice any difference between
novice and expert users.  These strategies allow users to make predictive
models of the system in question and avoid perception of obfuscatory magic.

The question about "How do you form a consistent mental model of a system
which magically changes" is really prejudicial.  If the system "magically
changes" in an unpredicatable way, then obviously users cannnot make useful 
consistent mental models.  Any system that did so would be poorly designed
on the face of it.  It should therefore be the duty of the designer to make 
sure that changes are predicatable, simple and desirable to the user.
You should not wonder "why?" the system behaved a certain way, nor "how?"
to use it, nor "where?" important information is.

"Magic", to the degree it plays any part should be of the form "I wonder
how this clever system was able to do this?"  Rhetorical questions such as
these do not interfere with the task at hand unless the user lacks 
confidence that the system will behave correctly, just as wondering how MASH's
Radar O'Reilley knows what his commander is going to say doesn't prevent
a successful work relationship between the two.  But wondering if the
system will work correctly at all (questions also raised about MASH's
corporal Max Klinger) can sabotage all added advantage from the new 
capabilities.  Achieving that confidence requires talented and hard
working designers.

The extreme levels of prescience that I have been working on are certainly
overkill for many situations.  In such cases the simpler form exhibited
by the Mac Desktop, or even totally non-prescient systems such as the
unix command line prompt may be much more appropriate.  In such cases
simplicity is more important than additional functionality.  There are
however other situations, such as collaborative software design, where
the ability to return to previous contexts or to uncover collaborative
contexts can be very powerful and useful to the user despite the implied
increase in functionality and complexity.   

The comment about novices might be telling in that people seem most 
comfortable to learn at a constant pace.  A novice has more to learn
(the simple capabilities) that the expert has already mastered.  The
expert can thus turn their attention more fully to just the new capabilities.
I think this accounts for why many users who first used release 1.0,
then 2.0, and then 3.0... of a product find it easy to learn all the
new things in each new release, and think each previous release was
easy to learn as well.  A novice starting immediately with release 3.0
often is faced with more to learn at first than the original 1.0 user
and thus finds the system more complicated.

I also find that differences in frequency of usage (occasional user
vs. daily user) can have great impact on trade-offs between simplicity
and functionality.  Our prescient prototype system was aimed as software
developers who would probably be already very familiar with the computer
and would use it frequently to accomplish their tasks.

Scott McGregor
mcgregor@limbo.intuitive.com