user centered design - software engineering · a good design is a design needless of labels or...

21
1 Chapter 1 User Centered Design Shadan Sadeghianborojeni 83693931 1.1 Introduction User Centered design is a multi-stage design process where users have the highest influence on how each stage is done. There are variety of methods how to design concerning users’ point of view and preferences, from asking them about their needs in the first steps such as requirement elicitation and participating them in the final steps in user tests to giving them a higher level of impact through co- operating with the designers as partners. The question is how to make a good design? some suggestions are: Make it easy to determine what actions are possible at any moment (make use of constraints). Make things visible, including the conceptual model of the system,the alternative actions, and the results of actions. Make it easy to evaluate the current state of the sys- tem. Follow natural mappings between intentions and the required actions;between actions and the resulting ef- fect; and between the information that is visible and

Upload: others

Post on 04-Jun-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: User Centered Design - Software engineering · A good design is a design needless of labels or explana-tions, where user can understand the state of the system immediately or after

1

Chapter 1

User Centered Design

Shadan Sadeghianborojeni 83693931

1.1 Introduction

User Centered design is a multi-stage design process whereusers have the highest influence on how each stage is done.There are variety of methods how to design concerningusers’ point of view and preferences, from asking themabout their needs in the first steps such as requirementelicitation and participating them in the final steps in usertests to giving them a higher level of impact through co-operating with the designers as partners. The question ishow to make a good design? some suggestions are:

• Make it easy to determine what actions are possibleat any moment (make use of constraints).

• Make things visible, including the conceptual modelof the system,the alternative actions, and the resultsof actions.

• Make it easy to evaluate the current state of the sys-tem.

• Follow natural mappings between intentions and therequired actions;between actions and the resulting ef-fect; and between the information that is visible and

Page 2: User Centered Design - Software engineering · A good design is a design needless of labels or explana-tions, where user can understand the state of the system immediately or after

2 1 User Centered Design

the interpretation of the system state. In other words,make sure that(1) the user can figure out what to do, and (2) the usercan tell what is going on [3].

In this chapter we are going to introduce some conceptsand methods which help you have a design based on theuser. First, you will learn about design principles and howto classify the users and their tasks. After that you willbe introduced to some methods to measure users’ behav-ior and usability testing to make sure your design is closeto users’ requirements. Then you will read some principlesfor designing user interface and some psychological lawswhich improves your design. And at last in the conclusionyou will see the advantages and disadvantages of user cen-tered design.

1.2 Design Principles

A good design is a design needless of labels or explana-tions, where user can understand the state of the systemimmediately or after a brief explanation. Designs with longand complicated manuals are inconvenient. Don Normanin his book ”The Design of Everyday Things” suggestsseven principles to make system design user friendly[3] .The principles will be discussed in the following:

1. Use both knowledge in the world and knowledge inthe head.

2. Simplify the structure of tasks.

3. Make things visible( bridge the gulfs of Execution andEvaluation).

4. Get the mappings right.

5. Exploit the power of constraints, both natural and ar-tificial.

Page 3: User Centered Design - Software engineering · A good design is a design needless of labels or explana-tions, where user can understand the state of the system immediately or after

1.2 Design Principles 3

6. Design for error.

7. When all else fails, standardize.

1.2.1 Use both knowledge in the world and knowl-edge in the head

Users are more comfortable and confident in doing tasksif the knowledge needed is available. The needed knowl-edge can be in the head like constraints or manuals or inthe world where the user can make a conceptual modelsand mappings. What should be taken care of is that theknowledge in the world should be available in a way thatusers can estimate all possible actions and their outputs.The design should not limited users to perform a certain se-quence of actions. Experienced users do not need to take allthe small steps that beginners do,they need shorter paths.There should be a possibility to go back and forth usingboth knowledge in the world and in the head dependingon which one is more available.

1.2.2 Simplify the structure of tasks

Users like to do simple task with the least effort, tasks need-ing planning and being divided to sub tasks confuse theuser. Avoid complexity and reconstruct tasks in to sim-pler ones. Overloading short term or long term memorycan cause complexity, a person is not able to remembermore than 5 unrelated items by her short memory at onetime;thus the system should provide some aids to help re-minding. Long term memory is also erroneous thus the sys-tem should apply the knowledge in the world to help theuser to know what he is able to do and how it can be done.

Page 4: User Centered Design - Software engineering · A good design is a design needless of labels or explana-tions, where user can understand the state of the system immediately or after

4 1 User Centered Design

1.2.3 Make things visible, including the concep-tual model of the system,the alternative ac-tions, and the results of actions

Bridge the gulf of execution and evaluation,the user shouldbe able to see the currents state of the system, the possi-ble actions that can be done and the output of each action.There should be a clear sequence of actions that leads theuser to the intended result.

1.2.4 Get the mappings right

Exploit natural mappings. Make sure that the user can de-termine the relationships:

• Between intentions and possible actions

• Between actions and their effects on the system

• Between actual system state and what is perceivableby sight,sound, or feel

• Between the perceived system state and the needs, in-tentions, and expectations of the user

[3]

1.2.5 Exploit the power of constraints, both naturaland artificial

Exploit the power of constraints to reduce the amount ofpossible action to the fewest possible ones. For example aslider which is designed in a way which can only have hor-izontal movements stops the user from doing other move-ments such as rotation. Having seen it the very first timethe user knows how to interact with it and in most casesinduces the common mappings such as ”left is less, right ismore” to it.

Page 5: User Centered Design - Software engineering · A good design is a design needless of labels or explana-tions, where user can understand the state of the system immediately or after

1.3 How to Involve Users in Design? 5

1.2.6 Design for error

Imagine the situation that the user makes any possible er-ror in the system. Plan for it and make the design in a waythat the possibility that the user commits the error is re-duced, make the design as clear as the user is able to un-derstand what has happened and how she can avoid theerror next time she is using the system or what is the wayto recover from it. Make reversible operations easy and theirreversible ones hard.

1.2.7 When all else fails, standardize

Standardization is applied when something can not be de-signed without using arbitrary mappings. The experienceof standardization has shown that once people learn it theystart to use it forever. A good example can be traffic signs.

Applying the mentioned rules,the designer makes theknowledge needed available and simplify the tasks bymaking them visible and using clear mappings. Errors areprevented mostly by constraints and there is a solution forevery possible error. Last but not least standards are usedto provide usage regulation.

1.3 How to Involve Users in Design?

As we are focusing on is user centered design it is clear thatuser plays an important role in it. In this section we aregoing to see who the user is and how many types of usersdo we have. Knowing this we will learn how to define thespecific groups of users of our product and the critical tasksthey carry out using it in the first steps of the design. Thishelps us having a general image of the whole system. Lateron we will cover several methods for measuring user be-havior using the product. And finally we will learn how totest the usability of the design to improve it.

Page 6: User Centered Design - Software engineering · A good design is a design needless of labels or explana-tions, where user can understand the state of the system immediately or after

6 1 User Centered Design

1.3.1 Who is the user?

Users in it simplest meaning are the people who are usingthe the final product or artifact to accomplish a task orgoal,but according to Eason (1987), users are classified into three groups [2]:

Primary users are those persons who actually use theartifact.

Secondary usersare those who will occasionally usethe artifact or those who use it through an intermediary.

Tertiary users are persons who will be affected by theuse of the artifact or make decisions about its purchase. Adesigner should identify the users of the system and theirgoal of using it, there exists no average user!

1.3.2 Early and continual focus on users and theirtasks

To be able to monitor user and her interaction with theproduct, the designer needs to clarify who are the poten-tial users of the product and which subclasses they can bedivided to, then it will become easier to define the require-ments when designing the product. Moreover the designerneeds to know what are the more important and criticaltasks that the user performs using the product. This helpsdesigner to design by priorities. Following we define twoconcepts which help the designer get the information men-tioned above:

Create personas

Personas are pen portraits of typical customers of the prod-uct ,each representing a group of users. A good designershould have focus of the users who frequently use the prod-uct to know the users, their interests, and the environmentthey use the product in, to define good personas.[5]

Page 7: User Centered Design - Software engineering · A good design is a design needless of labels or explana-tions, where user can understand the state of the system immediately or after

1.3 How to Involve Users in Design? 7

Define red routs

”Red routs are the critical tasks that people want to carryout- tasks that need to be completed as smoothly andquickly as possible.”[5] By prioritizing the tasks that can bedone by the user and defining the ones with higher priorityas red routs the most important tasks are placed handy inthe interface and the less important ones don’t clutter withthem,so the user can focus on a task without being inter-rupted.

1.3.3 Empirical measurement of user behavior

After the red routs are designed, the users are asked tocarry them out and think aloud while using them , thishelps us know which parts of the design is confusing thethe usability of the system is measured in three ways:

Effectiveness: How many people manage to complete thered route successfully. Because if the design is easy to use,more people can achieve their goals.

Efficiency: How long do people take to complete thetasks. Because if the design is easy to use, people will beable to achieve their goals quickly.

Satisfaction: How do people feel about the design.Because there’s no point having a design that people canuse effectively and efficiently if they don’t like it.[5]

1.3.4 Usability testing

Usability testing is a vital process to make the design better.In a usability test we ask screened user to perform typicalactions (mostly red routs). The data is gathered in differentways, such as:Think aloud techniques: in which the user is asked to ar-ticulate all the steps of her actions.

Page 8: User Centered Design - Software engineering · A good design is a design needless of labels or explana-tions, where user can understand the state of the system immediately or after

8 1 User Centered Design

Videotaping: is valuable to review what the participantsdid, and to show designers where the problems are in theirdesigns.Interviews and user satisfaction questionnaires: enabledesigners to evaluate the users’ likes and dislikes about thedesign and to gain a deeper understanding of any prob-lems. [4]A designer should always remember that the user is alwaysright and she should not defend her design is something isconfusing or not working as expected. A usability test nor-mally takes place to reach goals like:

• Improve the product’s usability

• Involve real users in the testing

• Give the users real tasks to accomplish

• Enable testers to observe and record the actions of theparticipants

• Enable testers analyze the data obtained and makechanges accordingly

Before creating the product users are asked to accomplishtasks on a paper prototype or a mock up of the system inter-face. A paper prototype is made of pieces of paper havingtabs , menus or new windows with all planned controls (buttons, combo-boxes,etc.) drawn on them. A mock up isan electronic prototype which is which looks a lot more re-alistic but is still a simulation of the system.By asking users to work first with the paper prototype andthen the mock up while being monitored and by the datarecorded and analyzed, the design can be improved to amore user friendly one. The data which should be gatheredis:

• Time for users to learn a specific function

• Speed of task performance

• Type and rate of errors by users

• User retention of commands over time

Page 9: User Centered Design - Software engineering · A good design is a design needless of labels or explana-tions, where user can understand the state of the system immediately or after

1.3 How to Involve Users in Design? 9

• Subjective user satisfaction

As normally usability tests take place in the working envi-ronments and have the duration of a couple of hours, usersrarely get full satisfaction, as a solution to this Mayhew(1999) suggested iterative testing.

Iterative testing

Designing a user friendly interface, one should go throughthree levels of iterative usability testing:

• The first level is done before any code is written, withthe paper prototypes; Making the test iterative andperforming it for several times helps us improve theprototype and make it closer to what the user desires.The number of users in these tests varies betweenthree to ten. The goal is to test ease of learning.

• The second level is after the prototype is coded.These tests are done to evaluate the usability thesame criteria used in the first level is used here.These tests give informative results to guide designfor screen layouts, terminology, color and graphicsdesign, input and selection devices, shortcuts forexperts, error reduction methods, and dozens ofother user interface aspects.

• The third level is testing the final prod-uct,ccontinuous monitoring of usage to recorderror rates and performance speed provide the datato make improvements even for the expert frequentusers.

The advantage of iterative design is that a lot of prob-lems are fixed before the product is shipped and bymonitoring the users the designers can deal with realproblems not the ones they assume. The improve-ment of the usability of the product can be evalu-ated after each iteration and the designers can check if

Page 10: User Centered Design - Software engineering · A good design is a design needless of labels or explana-tions, where user can understand the state of the system immediately or after

10 1 User Centered Design

the system meets the requirements, moreover it givesthem the opportunity to test system against competi-tor’s products.

1.4 Principles of User Interface Design

To design a user interface there also principles indepen-dent of technology and implementation which should beconsidered. Schneiderman divided these principles in tothree groups[4]Principle 1 : Recognize User DiversityPrinciple 2 : Follow the Eight Golden RulesPrinciple 3 : Prevent Errors

1.4.1 Principle 1 : Recognize User Diversity

Considering the human diversity in the world multipliedby a a big number of tasks, situations, usage frequency, at-titudes and goals makes big number of alternative designsa designer should consider.a 9 year old school boy who plays computer games on-line is totally different from a travel agency agent whois searching the web everyday for hours to answer hecustomers, as well as a programmer’s usage can be totallydifferent than a library clerk.

Usage Profiles

A successful designer consider the diversity betweenusers in learning, thinking and solving problems. Somepeople learn faster using graphs while some other prefertables. All design should begin with an understanding ofintended users including population profiles that reflectage, gender, physical ability,education, cultural ethnicbackground, goals, motivation, and personality.The designer should produce usage profiles to classifythe users by their characteristics, for examples for a webapplication users with different jobs such as teachers

Page 11: User Centered Design - Software engineering · A good design is a design needless of labels or explana-tions, where user can understand the state of the system immediately or after

1.4 Principles of User Interface Design 11

nurses and programmers have different combinations ofknowledge and usage patterns. Other aspect such as thecountry of the user or her cultural background can alsoinfluence the design.One of the good ways to separate user groups is to dividethe in to three groups of first-time users,knowledgeableintermittent users and expert frequent users.

• First-time users These users are aware of the task thewant to perform but not the interface they work with.A designer should always take care of placing instruc-tions and manuals for these users. Limiting the vo-cabulary used in the interface to fewer and simplerwords and also limiting the tasks to fewer ones ex-ecutable via readable dialogue boxes and activatorshelps first-time users to perform easy tasks and givesthem confident for further use.

• knowledgeable intermittent users This group of usershave broad knowledge about tasks and the user inter-face but have difficulty finding the structure of menusor features. To help these users , the designer shouldconsider ordered menus,and apparent menus whichrely on recognition than recall. Consistent sequenceof actions, meaningful messages and guides to fre-quent patterns of usage will help. Assuring the userof the danger is also important, it gives them confi-dent to explore in the system without being afraid ofdestroying anything. Online help screens and wellorganized user manuals are always handy for theseusers.[4]

• Expert frequent users These users are familiar with boththe task concepts and interface ,they seek a way to ac-celerate their actions. Shortcuts and abbreviations forsequence of tasks is a method to ease their jobs. De-signers should provide shortcuts for them to performtasks with few key strokes or menu options whereyou can have a sequence of actions done by pressinga button. Moreover the feedback should be as fast aspossible and without any unnecessary interruption.

Page 12: User Centered Design - Software engineering · A good design is a design needless of labels or explana-tions, where user can understand the state of the system immediately or after

12 1 User Centered Design

1.4.2 Principle 2 : Follow the Eight Golden Rules

A designer should always consider the users’ level of ca-pability, previous knowledge and tolerance working with aproduct. Furthermore the design should be clear and easyto learn. Don’t forget that dealing with the interface is notthe user’s goal. An interface should be a tool to help userget the tasks done faster and easier. Schneiderman has de-fined ”The eight golden rules” following which the designwill become more desirable for the user [4] :

1.Strive for consistency

A consistent interface reduce user confusion carrying outa task. A design with too many varieties is normally errorprone and difficult to learn, users need to have simple andconsistent designs to remember the sequence of actionsthey have done on the system and generalize a sub taskto bigger ones. Keeping the consistency of a system is noteasy to do but reduces the error rate noticeably. Inconsis-tencies are defined in three levels: 1.Lexical inconsistency ,2.Syntactic inconsistency and 3.Semantic inconsistency.

Lexical inconsistency happens when the coding of coloror space is not the same as common usage for examplewhen an alert is shown in green and a recommendedcommand is written in red. Having consistent abbreviationrules also helps the user remember shortcuts to do taskseasier,moreover designers should also remember to use thedevices and activating keys(e.g. ESC) always in the sameway.Syntactic inconsistency is avoided by placing the errormessages at the same logical place, always giving thecommands at first or at last, applying selection consistencylike selecting the text and then the tool or vice versa andkeeping the menu items in the same order to use musclememory.Semantic inconsistency can be prevented by making globalcommands such as Help, Abort and Undo always availableand having reasonable operations for all existing objectsvalid.

Page 13: User Centered Design - Software engineering · A good design is a design needless of labels or explana-tions, where user can understand the state of the system immediately or after

1.4 Principles of User Interface Design 13

2.Enable shortcuts

Beginner users need manuals and help, casual users needreminders to remember the path to their goal,but as the fre-quency of usage increases users need to get their feed backfaster and in fewer steps of actions, here shortcuts are re-quired. Abbreviations, function keys, hidden commands,and macro facilities are very helpful to an expert user.

3.Offer informative feedback

To inform the user that the action she has just done hastaken place there should be a feed back for all of her actions.Depending on the importance and frequency of the actionthe feed back should change; Frequent and smaller taskshave modest and peripheral feed backs such as progressbars, cursor change and highlighting while infrequent andimportant actions get substantial feed backs like dialoguesand warning sounds.

4.Design dialogues to yield Closure

When you have an action that requires several steps, besure to separate it into a logical beginning, middle and end.After each step be sure to give feedback that will clarify thatthe step was done correctly and they can move on to thenext step. At the end of all the steps be sure to let the userknow that they are completed and that they have finishedall the requirements this makes the user feel the satisfied ofaccomplishment and start to plan for the next steps.

5.Prevent errors

The design of the system should be in way that the useris not prone to make errors by for example using menusinstead of commands or options instead of text fields, andif an error is made system should be able to detect the errorand offer simple and constructive solutions for handling it.

Page 14: User Centered Design - Software engineering · A good design is a design needless of labels or explana-tions, where user can understand the state of the system immediately or after

14 1 User Centered Design

Errors should live the system state unchanged otherwisethere should be instructions to get back to the previoussystem state.To prevent errors one should know what are the errorsand the reason they are made. Errors are categorized in 2groups according to their reason of occurrence:Mistakes:over-generalizationwrong conclusionswrong goalSlips:Result of ”automatic” behaviorAppropriate goal but performance/action is wrong

6.Permit easy reversal of actions

Give a way for the user to undo an error. This will helpkeep the user at ease if they know that not everything has tobe perfect. This will encourage further exploration of yourinterface. You might want to place an undo feature whendealing with a single actions, a data entry or a completegroup of actions. Any word processor is a good exampleof this. Ctrl + z is probably one of the most popular keycommands available.

7.Support easy locus of control

Make users feel they have control over the system and theyare the ones initiating the actions and system is there to re-spond them. Issues like surprising system actions, inabilityor difficulty obtaining necessary information and inabilityin doing the desired action cause dissatisfaction. Informthe user of the reason behind each change in the state ofthe system, lack of causality reduces user’s confidence inexploring the system.

Page 15: User Centered Design - Software engineering · A good design is a design needless of labels or explana-tions, where user can understand the state of the system immediately or after

1.5 Easy looking is not always easy to use 15

8.Reduce short term memory load:

People have a limited short-term memory. Having to keeptrack of several things at once can leave a user frustratedor incapable of using your interface. Try and consolidatemultiple pages, reduce unneeded motion, and generallyjust keep things simple. This will go a long way to helpyour user’s frustration level.

1.5 Easy looking is not always easy to use

There are many things around us that look really simple butare not that simple to use; Think of tennis rockets or a skateboard, they both look pretty simple but each of them needyears of practice, thus a simple design does not necessar-ily mean ease of usage. Imagine an alarm clock with onlytwo buttons and a display for setting the time, changingthe alarm tone, setting the alarm and turning it on/off. Al-though it might look simple at the first sight ,it takes usersome time to learn or remember which button is used forwhich action and whats the order of using them and whichactions need do both buttons to take place. While havingan alarm clock with one button for each task makes it mucheasier for the user, since she only needs to find the buttonmatching her goal and press it. Considering this we canconclude one control per task is the ideal method to makethe design simpler for the user. But what about the casewhen we have a number of more than 20 tasks? Imagine anovice user facing an interface with 30 controls for the firsttime, she definitely would not make it achieving her goal inappropriate time looking for the right control. The questionis how to make the design easier without using too manycontrols that makes it time consuming and difficult to findand too less controls to learn? One solution is to use ex-actly the same number of controls as the tasks but hidingthe unneeded ones by making panels for relevant controls.Another solution is using Gestalt laws.The Gestalt approach emphasizes that we perceive objectsas well-organized patterns rather than separate component

Page 16: User Centered Design - Software engineering · A good design is a design needless of labels or explana-tions, where user can understand the state of the system immediately or after

16 1 User Centered Design

parts. According to this approach, when we open our eyeswe do not see fractional particles in disorder. Instead, wenotice larger areas with defined shapes and patterns. The”whole” that we see is something that is more structuredand cohesive than a group of separate particles. The Gestaltlaws are as below1.1:

ProximityWe tend to group things together that are close together inspace. Objects that are grouped together then become a sin-gle perceived object.

SimilarityHuman brain tends to group similar shapes together as onecoherent object and then map it to a meaning as an output.

ClosureOur mind is always seeking familiar patterns even thoughthe information we receive is often incomplete,with shapesthat aren’t closed, our mind tries to fill in the gaps and getthe completed shape.

ContinuationThis principle says that our mind tends to perceive a lineas continuing its established direction. In other words,we tend to continue the lines we see to be heading to animplicit direction.

Common fateThe law of common fate states that we tend to see theobjects moving in the same direction as a unit.

SimplicityThis law says that human mind tends to group the ele-ments of an object to form a simple and regular pattern.

SymmetryThis law implies that the human being mind perceivesobjects in the world to be symmetrical and shaped arounda center point,it also divides objects in to a number of

Page 17: User Centered Design - Software engineering · A good design is a design needless of labels or explana-tions, where user can understand the state of the system immediately or after

1.6 Conclusion 17

symmetric parts, having this ability when two symmetricobjects are not connected the brain perceive them as asingle unit.

Past experienceOur past experience has a big affect on how we perceivethings, when one object is similar to another one we haveseen recently or are familiar with we normally perceive theobject as the other one.

Figure 1.1: Gestalt Laws

1.6 Conclusion

Involving the users in the design helps the designer toknow their needs and prioritize them. It makes the productbe user friendly, easy to learn, matching more the psycho-logical and ergonomic characteristics of the user and the us-age environment. Having users participated at every stageof the design helps the designer to avoid complicated anderroneous design. Below you can find the table1.1 showingthe advantages and disadvantages of user design.[1]

Page 18: User Centered Design - Software engineering · A good design is a design needless of labels or explana-tions, where user can understand the state of the system immediately or after

18 1 User Centered Design

Tabl

e1.

1:ad

vant

ages

and

disa

dvan

tage

sof

usin

gU

CD

Adv

anta

ges

Dis

adva

ntag

esPr

oduc

tsar

em

ore

effic

ient

,eff

ecti

ve,a

ndsa

feIt

ism

ore

cost

lyA

ssis

tsin

man

agin

gus

ers’

expe

ctat

ions

and

leve

lsof

sati

sfac

tion

wit

hth

epr

oduc

tIt

take

sm

ore

tim

eU

sers

deve

lop

ase

nse

ofow

ners

hip

for

the

prod

uct

May

requ

ire

the

invo

lvem

ento

fadd

itio

nald

esig

nte

amm

embe

rs(i

.e.e

thno

grap

hers

,usa

bilit

yex

pert

s)an

dw

ide

rang

eof

stak

ehol

ders

Prod

ucts

requ

ire

less

rede

sign

and

inte

grat

ein

toth

een

viro

nmen

tmor

equ

ickl

yM

aybe

diffi

cult

totr

ansl

ate

som

ety

pes

ofda

tain

tode

sign

The

colla

bora

tive

proc

ess

gene

rate

dm

ore

crea

tive

desi

gnso

luti

ons

topr

oble

ms.

The

prod

uctm

aybe

too

spec

ific

for

mor

ege

nera

luse

,thu

sno

trea

dily

tran

sfer

able

toot

her

clie

nts;

thus

mor

eco

stly

Page 19: User Centered Design - Software engineering · A good design is a design needless of labels or explana-tions, where user can understand the state of the system immediately or after

19

Bibliography

[1] C. Abras, D. Maloney-krichmar, and J. Preece. User-Centered Design. In In Bainbridge, W. Encyclopedia ofHuman-Computer Interaction. Thousand Oaks: Sage Pub-lications, 2004.

[2] K. D. Eason, C. W. Olphert, F. Novara, N. Bertaggia, andN. Allamanno. The design of usable it products: Theesprit/hufit approach. In HCI (2), pages 147–154, 1987.

[3] D. Norman. The Design of Everyday Things. Doubleday,1988.

[4] Shneiderman and Ben. Designing the User Inter-face – Strategies for Effective Human-Computer-Interaction.Addison-Wesley Longman Inc., 3 edition, 1998.

[5] D. Travis. The Fable of the USER-CENTRED DE-SIGNER, 2009.

Page 20: User Centered Design - Software engineering · A good design is a design needless of labels or explana-tions, where user can understand the state of the system immediately or after
Page 21: User Centered Design - Software engineering · A good design is a design needless of labels or explana-tions, where user can understand the state of the system immediately or after

Typeset August 17, 2012