User Interface Design - UMD

Transcription

1User Interface DesignDesigning effectiveinterfacesfor software systemsImportance of user interface2 System users often judge a systemby its interface rather than itsfunctionality A poorly designed interface can causea user to make catastrophic errors Poor user interface design is thereason why so many software systemsare never used1

Graphical user interfaces3 Most users of business systemsinteract with these systems throughgraphical user interfaces (GUIs)– although, in some cases, legacy textbased interfaces are still usedGUI characteristics 4WindowsIconsMenusPointing DevicesGraphics2

GUI advantages5 They are easy to learn and use– Users without experience can learn touse the system quickly The user may switch quickly from onetask to another and can interact withseveral different applications– Information remains visible in its ownwindow when attention is switched Fast, full-screen interaction ispossible with immediate access toanywhere on the screenUser-centred design6 User-centred design is an approach toUI design where the needs of theuser are paramount and where theuser is involved in the design process UI design always involves thedevelopment of prototype interfaces3

User interface design processAnalyze andunderstanduser activitiesProducepaper-baseddesign prototypeEvaluate designWith end-usersDesignprototypeProduce dynamicDesign prototypeEvaluate designWith end-usersExecutableprototypeImplement finaluser interfaceUI design principles78 UI design must take account of theneeds, experience and capabilities ofthe system users Designers should be aware of people’sphysical and mental limitations (e.g.limited short-term memory) andshould recognize that people makemistakes UI design principles underlieinterface designs although not allprinciples are applicable to all designs4

User interface design principles9PrincipleDescriptionUser familiarityThe interface should use terms and concepts which aredrawn from the experience of the people who will makemost use of the system.ConsistencyThe interface should be consistent in that, whereverpossible, comparable operations should be activated inthe same way.Minimal surpriseUsers should never be surprised by the behaviour of asystem.RecoverabilityThe interface should include mechanisms to allow usersto recover from errors.User guidanceThe interface should provide meaningful feedback whenerrors occur and provide context-sensitive user helpfacilities.User diversityThe interface should provide appropriate interactionfacilities for different types of system user.Design principles10 User familiarity– The interface should be based on user-orientedterms and concepts rather than computerconcepts. For example, an office system should use conceptssuch as letters, documents, folders etc., rather thandirectories, file identifiers, etc. Consistency– The system should display an appropriate levelof consistency. Commands and menus shouldhave the same format, command punctuationshould be similar, etc. Minimal surprise– If a command operates in a known way, the usershould be able to predict the operation ofcomparable commands5

Design principles11 Recoverability– The system should provide some resilience touser errors and allow the user to recover fromerrors. This might include an UNDO facility,confirmation of destructive actions, 'soft'deletes, etc. User guidance– Some user guidance such as help systems, online manuals, etc. should be supplied User diversity– Interaction facilities for different types ofuser should be supported. For example, someusers have seeing difficulties and so larger textshould be availableUser-system interaction12 Two problems must be addressed ininteractive systems design– How should information from the user beprovided to the computer system?– How should information from thecomputer system be presented to theuser? User interaction and informationpresentation may be integratedthrough a coherent framework6

Interaction styles 13Direct manipulationMenu-based (Menu selection)Form fill-inCommand languageNatural languageAdvantages and advantagesApplicationexamplesD i r e c tmanipulation Fast and intuitiveinteraction Easy to learn May be hard toimplement Only suitable wherethere is a visual metaphorfor tasks and objects Video games CAD systemsM e nselection Avoids user error Little typingrequired Slow for experiencedusers Can become complex ifmany menu options Most general-purposesystemsForm fill-in Simple data entry Easy to learn Takes up a lot of screenspace Stock control,Personal loanprocessingCommandlanguage Powerful andflexible Hard to learn Poor error management Operating systems,Library informationretrieval systemsN a t u r a llanguage Accessible to casualusers Easily extended Requires more typing Natural languageunderstanding systemsare unreliable Timetable systems WWW informationretrieval systemsu7

Direct manipulationadvantages15 Users feel in control of the computerand are less likely to be intimidatedby it User learning time is relatively short Users get immediate feedback ontheir actions so mistakes can bequickly detected and correctedDirect manipulation problems16 The derivation of an appropriateinformation space model can be verydifficult Given that users have a largeinformation space, what facilities fornavigating around that space shouldbe provided? Direct manipulation interfaces can becomplex to program and make heavydemands on the computer system8

Menu systems17 Users make a selection from a list ofpossibilities presented to them by thesystem The selection may be made bypointing and clicking with a mouse,using cursor keys or by typing thename of the selection May make use of simple-to-useterminals such as touch-screensAdvantages of menu systems18 Users need not remember commandnames as they are always presentedwith a list of valid commands Typing effort is minimal User errors are trapped by theinterface Context-dependent help can beprovided. The user’s context isindicated by the current menuselection9

Problems with menu systems19 Actions that involve logicalconjunction (and) or disjunction (or)are awkward to represent Menu systems are best suited topresenting a small number of choices.If there are many choices, some menustructuring facility must be used Experienced users find menus slowerthan command languageCommand interfaces20 User types commands to giveinstructions to the system e.g. UNIX May be implemented using cheapterminals. Easy to process using compilertechniques Commands of arbitrary complexitycan be created by commandcombination Concise interfaces requiring minimaltyping can be created10

Command interfaces problems21 Users have to learn and remember acommand language. Commandinterfaces are therefore unsuitablefor occasional users Users make errors in commands. Anerror detection and recovery systemis required System interaction is through akeyboard so typing ability is requiredCommand languages22 Often preferred by experiencedusers because they allow for fasterinteraction with the system Not suitable for casual orinexperienced users May be provided as an alternative tomenu commands (keyboard shortcuts).In some cases, a command languageinterface and a menu-based interfaceare supported at the same time11

Natural language interfaces23 The user types a command in a naturallanguage. Generally, the vocabulary islimited and these systems areconfined to specific applicationdomains (e.g. timetable enquiries) NL processing technology is now goodenough to make these interfaceseffective for casual users butexperienced users find that theyrequire too much typingMultiple user interfacesGraphical userinterfaceCommand languageinterfaceGUImanagerCommand languageinterpreter24Operatingsystem12

Information presentation25 Information presentation isconcerned with presenting systeminformation to system users The information may be presenteddirectly (e.g. text in a wordprocessor) or may be transformed insome way for presentation (e.g. insome graphical form) The Model-View-Controller approachis a way of supporting multiplepresentations of dataInformation presentationInformation tobe displayed26PresentationsoftwareDisplay13

ies&updates27ControllerStateView modification editsModelMethodsInformation presentation28 Static information– Initialized at the beginning of a session.It does not change during the session Dynamic information– Changes during a session and the changesmust be communicated to the systemuser Both may be either numeric ortextual14

Information display factors29 Is the user interested in preciseinformation or data relationships? How quickly do information values change?Must the change be indicated immediately? Must the user take some action in responseto a change? Is there a direct manipulation interface? Is the information textual or numeric? Arerelative values important?Alternative 0000April15

Analog vs. digital presentation31 Digital presentation– Compact - takes up little screen space– Precise values can be communicated Analog presentation– Easier to get an 'at a glance' impressionof a value– Possible to show relative values– Easier to see exceptional data valuesDynamic information display32140210203Dial with needlePie chartThermometerHorizontal bar16

Displaying relative valuesPressure0100200Temperature3004000255075Text highlighting!3310034The filename you have chosen has beenused. Please choose another nameCh. 16 User interface designOKCancel17

User documentation35 As well as on-line information, paperdocumentation should be suppliedwith a system Documentation should be designed fora range of users from inexperiencedto experienced As well as manuals, other easy-to-usedocumentation such as a quickreference card may be providedDocument types36 Functional description– Brief description of what the system can do Introductory manual– Presents an informal introduction to the system System reference manual– Describes all system facilities in detail System installation manual– Describes how to install the system System administrator’s manual– Describes how to manage the system when it isin use18

User interface evaluation37 Some evaluation of a user interfacedesign should be carried out to assessits suitability Full scale evaluation is very expensiveand impractical for most systems Ideally, an interface should beevaluated against a usabilityspecification. However, it is rare forsuch specifications to be producedUsability attributesAttributeDescriptionLearnabilityHow long does it take a new user to becomeproductive with the system?How well does the system response match theuser’s work practice?Speed ow tolerant is the system of user error?How good is the system at recovering from usererror?How closely is the system tied to a single modelof work?19

Simple evaluation techniques39 Questionnaires for user feedback Video recording of system use andsubsequent tape evaluation Instrumentation of code to collectinformation about facility use anduser errors The provision for on-line userfeedback20

Design principles 10 User familiarity – The interface should be based on user-oriented terms and concepts rather than computer concepts. For example, an office system should use concepts such as letters, documents, folders etc., rather than directories, file identifiers, etc. Consistency – The system should display an appropriate level of consistency. Commands and menus should .