Interfaces ?

Stairs...from humans to programs, and backwards

Interfaces, why?

  • without interfaces computers would be useless
  • human-computer interfaces are not even as carefully designed as computer-computer interfaces
  • computer science has a definite role in the design of human-computer interfaces
  • creativity is very important in the design of user interfaces
  • two sides of the design problem:
    1. computer science issues - (essentially programming a chosen set of algorithms favouring human-program communication and control) and
    2. human issues - (essentially exploiting and supporting user's skills)

    Formal approaches

  • formal approaches help in abstracting the details and subtleties of how computers are used; interface features should not be looked at within particular applications: UNDO in an airline reservation system but in a wide domain - UNDO in an interactive system
  • sometimes - as we proceed in the design of user interfaces for a class of applications (i.e. word processors) such applications have evolved - what has been used in the past and recent present may also be used in the near future on new applications
  • we have abstracted general rules (low cognitive load, few basic icons, possibility of undoing all actions, backtracking availability, on-line help, etc.)

    Formalising?

  • formalizing has its detractors: are we abstracting the user too much?
  • how do we capture his intentions, his expectations, his skills? To formalize, in this context, is a question-raiser more than an issue-solver
  • documentation: saying what is implemented and implementing what is said: high level of vision on behalf of the designers, implementors and documentors
  • user interface design: complexities of the human-program communication needs + peculiarities of human users: they should all be understood, modelled, taken care of, documented, tested, validated, refined...

    Interface benefits

  • enjoyment - playing games, hacking programs, communicating with others, exploration of data, composition of music/poetry/essays, listening to music, drawing/sketching, studying, etc.
  • enabling new skills - augmentation ° enabling monitoring in a better way is an empowerment, controlling a super-jet may only be done via a special interface for the pilot
  • delegation - the computer is left to do repetitive, dangerous, critical jobs which the human would not do as smoothly (a negative case arises when the user delegates full responsibility on incomplete tasks)
  • safety - remote control operations to avoid dangerous locations (coal mines, radioactive stations, etc.)
  • development - cultural enrichment through interactive teaching programs: arithmetic drill, road signals for car driving, language practice, etc.
  • doing things at once - many different stages of a job were done in sequence, for each mistake corrections had to be done everywhere (as in a presentation, course preparation, etc.) a presentation manager (like Power Point) manages slides, notes, outlines together with timings, transitions, colours, backgrounds, etc.
  • computing - what computers were born for! integrate, plot, enhance an image, prove a theorem, compute a spacecraft trajectory, etc.

    Interaction technology



  • On/Off (1948)
  • Data input (1955)
  • Data input on request (1965)
  • Graphical input via light pen, mouse (1972)
  • Menu selection (1978)
  • Mac Style (desktop metaphor) (1983)
  • Multimedia tools (1990)
  • Multimodal tools (1994)




    Interpersonal communication


    Computer or interface?

  • productivity: the user interface is vital here, the quality of interaction and ease of action can be greatly enhanced through a good user interface
  • managing complexity: typically in air flight control for landing and take-off, a single operator can do much more work (in better conditions) if he has a good user interface
  • reliability - programs may run many times in exactly the same way (they never get tired), in some instances they may be too inflexible...
  • quality - programs may achieve greater quality, accuracy and reproducibility than humans and this comes from the computer technology and not from the user interface
  • security - the interface may check the user's authority to employ certain programs, record past transactions (financial operations, etc.), inventory accounting, etc.

    Communicating channels


    How to design together

  • with the new possibilities in computer-supported communication shared thinking is now possible
  • within user interface design: how do designers communicate with users?
  • what kind of user-model do they have in mind?
  • which information is passing from one community to the other? data and control, information contents and pragmatics (on the user of the information within a given environment)
  • to some users (handicapped) the computer and its interface may help extend their range of activities or (inverting all the benefits listed before) reduce job satisfaction

    Approaches to design

  • User interface design requires the co-operation of computer scientists and psychologists for a good understanding of algorithms and programs (computer side) and people (user side)
  • two approaches arise:
    1. where computer scientists want to have a well designed interface after a first shot - using formal design rules - and
    2. where psychologists would like an iterative design in order to gradually improve the developed system.

    Incompatibility

  • when computers cannot be interfaced, we say they are "incompatible"
  • when humans and computers cannot communicate we never refer to incompatibility although this is the case
  • do interactive programs aim at special user features?
  • better design: user centred - even user co-author
  • ... to switch off Windows 95 you have to choose the start-up icon !

    Observations

  • treat people at least as well as we already treat computers
  • too easy to ignore important design issues
  • designers tend to overcome bugs by adding ad-hoc features, extending the systems and making them more complex
  • conflicts and limitations in the original design can be camouflaged with local add-ons
  • new features are unrelated, may have side-effects and no accurate forecast of what may happen to other actions performed through the new interface
  • typically, designs grow bottom-up by accruing features

    Composition Fallacy

  • properties of the parts are also properties of the whole (composition)
  • a good interface may have bad parts
  • good parts may exist within a bad interface
  • it also holds in a jury: indecisive jurors may be decisive, a jury of decisive jurors may be indecisive
  • Barcan Formula: " For each x Lf(x) this involve L for each x f(x) (if for all x, it is necessary that f(x) is true, this implies that for all x f(x) is true) (UNION)

    Abstraction

  • ignore circumstantial details...
  • User is the participant with a choice - any kind of participant - naive, expert, discretionary, handicapped, etc.
  • computer is the participant with a program - it obeys instructions
  • designer the participant who anticipates the possible choices of the user encoding them into a computer program
  • pragmatically, many different persons participate to the design of computer systems: manager, programmer, analyst, technical author, evaluator and user

    Interaction

  • humans understand through modelling
  • computer users build up their own models of the systems they will be using
  • constant activity helps to achieve tasks even if not all the details are known provided there are no side effects

    Communication bandwidth


    Design Information


    Mental models & programs

  • additional information comes from:
  • on the user's side - mental models and
  • on the computer's side - programs but...
  • mental models and programs are not equivalent!
  • they are not isomorphic
  • not synchronised
  • use different logical systems
  • have different bugs and limitations.
  • if they were equivalent, one of them would be sufficient.either the mental model or the program
  • the program may be run and turns useful if, in some way, it matches the mental model
  • every computer system has been built on the basis of explicit or implicit models of the use
  • of his/her tasks/needs/expectations
  • generally a canonical (according to a formula) model of the user is employed by the designer

    Improvements

    HC-interaction may be improved by:
  • increasing the coherence between the mental model and the canonical model
  • decreasing the reliance on that coherence
  • increasing the information capacity of the interface

    Bottlenecks

  • information transfer bottlenecks (I/0)
  • information processing bottlenecks (mental)

    Modelling

  • to think effectively about certain aspects of the thing being modelled
  • metacircular modelling - at some stage one must understand the model itself (Hume's Problem) which requires another model and this may last indefinitely...nevertheless this feature may be turned into a positive one
  • loss of representation - we trade abstracting with a better grasp of other aspects of the design which holds whenever we want to concentrate on correctness, efficiency, efficacy or any well-defined property
  • if we care about usability this approach may not help
  • the holist criterion claims that modelling loses issues of crucial importance, the whole system has properties that are not present in any of the parts being modelled
  • the Turing hierarchy - a model powerful enough to work interactively should be Turing Complete so as to model anything a Turing Machine could model: what can we learn about such a system?
  • phenomenalist alternative - even if thinking with a model in mind, we are engaged in activity, theories/models may be alternatively be substituted by actions (phenomena) and we may think on those terms

    Projection and transference

  • to reveal a model - often subconscious - by projection: the user interacts with a system and detects motives for wanting the model to be in such a particular way - yet the model is not easy to be fully described and therefore used by the designer
  • in transference the user projects another model - not his own - one of other users (parents, teachers, etc.) the interface is locked in a discourse rehearsed in the past for instance with other systems..

    Non-determinism

  • randomness may be requested but generally is a non-wanted situation: bugs - they come from unexpected external situations, including the user
  • computer programs should be predictable, if the user has no adequate model for a situation, it may appear random
  • a particular interference from the real world is the one of time, real-time races are performed whenever decisions are made depending on which information arrives first
  • a schedule for erasing old files should be known otherwise those files exceeding the time threshold will be removed and this may appear random to the user
  • non-determinism may appear just because some information is not known - note-takers, diaries, transcripts help to "keep track"

    User

  • difficult to maintain consistent beliefs - along time not using an adequate notation
  • typically wanting transitive preferences (A better than B better than C/ implies A better than C)
  • menu interface better than command-based one
  • knowledge-based direct manipulation better than menu

    SHORT-TERM Memory

  • selective attention, shifting attention = 50 ms, eye movements 200 ms, audio is captured quickly and faster than video
  • once selected, the information is copied in STM: a conscious place which may manage 7 objects, if unused the contents of STM decays after 20" - it can be refreshed by rehearsal
  • data is stored in chunks each one being a name related to an object, the chunks (output chunks are routines) may contain sub-chunks which may be stored and processed
  • chunks are built by closure, STM may be seen as a memory stack, the closure is a pop operation

    On closure

  • closure may eclipse other goals - this may cause a termination error caused by a 'too effective closure'
  • in a cash dispenser if the money is provided AFTER the card has been returned, the user will never forget his card in the machine (termination error)
  • resource limited: too many processes to be looked at are happening
  • data limited: darkness for eyesight
  • these features are important in the design of warning/help clues within interfaces

    LONG-TERM Memory

  • After 5" the contents of STM gets transferred in LTM having a large capacity and small decay
  • our knowledge on language is contained in LTM: it is 'perfect' only sometimes it is difficult to retrieve - particularly without rehearsal - whenever successful it takes .1 "
  • mnemonics helps to retrieve wanted data, previous rehearsal in STM also helps -
  • I could insert my table on ° behaviours of people and machine during interaction
  • people can never forget, computers may completely erase data and sometimes users forget this...

    L-TM & S-TM

  • both suffer from interference since different items in memory may have the same coding (as if Hash coded) - it becomes hard to recall one thing since it was recorded with two different codes, or the same code for two different items
  • for two different interactive systems, the experience of the first carries-over the learning process of the second if they are similar - as when programming with a new language/speaking a new language in terms of an older, known one (conceptual capture)

    On behaviour

  • example of priming: impinging an idea into someone - spell "shop"- what do you do when you see a green light? (go and not stop)
  • stereotyped behaviour is when people panic and use a "default escape" solution that generally is not the best action to perform under the circumstances - people may make mistakes in this way and, even worse, are not able to recover from such mistakes...

    People are complex

  • individual differences are not equal thinking styles are not equal different interaction strategies
  • parallel processing people may handle different jobs at the same time - how can we use this?
  • expert systems, it is convenient to view the mind as an expert system: LTM a body of rules, STM a blackboard, the number of goals is limited, access to rules in LTM increases their probability of future access...
  • wider issues: motivation, stress, play, environment affect the user and therefore his attitudes

    Cognitive dissonance

  • Festinger, 1957
  • after a (program) choice is made, the new alternative looks worse than the other, possible one, and...vice versa
  • humans try to reduce such dissonance to feel better - e.g. the user may change his program, reduce the importance of choice (job is more significant than the program he is using), add further consonant ideas, selectively expose himself to read positive evaluations of his choice...(tricks that help)

    Users adapt

  • it is easier to stay with nonsense than face the cost of changing over to something which would almost certainly be better
  • a user will adapt and then the designer will continue with the same choice he made in the previous design

    Homeostasis

  • users take risks depending on their assessment of the consequences of their actions
  • if the interactive system is safe, they will behave wildly, if the system is simple they will try complex things
  • i.e. the user style will depend on his attitudes as well as on the documentation of the system - homeostasis makes designers build systems far more complex than necessary
  • Hawthorne Effect (Mayo 1933) : users tend to work harder if they are participating to something new or where they have more control, so partly invalidating the experiment

    Three levels of abstraction

    SKILL/RULE/KNOWLEDGE

  • skill-based performance runs without conscious attention or control, e.g. typing for a typist - it works only if the user's control model is an adequate representation of the interface
  • rule-based performance is the recollection of skilled behaviour patterns
  • knowledge-based behaviour is used for an interaction poorly rehearsed so that rules have not been developed - goals must be explicitly formulated in order to work out a plan
    The system will favour the transition from knowledge-based to skill-based user behaviour

    [Home Page] [Next]