+ All Categories
Home > Documents > 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the...

1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the...

Date post: 24-Dec-2015
Category:
Upload: brian-webster
View: 227 times
Download: 0 times
Share this document with a friend
Popular Tags:
81
1 Human Computer Interaction User Interface
Transcript
Page 1: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

1

Human Computer Interaction

User Interface

Page 2: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

2

What is a User Interface?

The user interface is the part of a software program that allow users to interact with computer (system) and carry out their task.

Page 3: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

3

User Interface

• Today, building the Human-Computer Interface consumes 50 – 70 percent of the

systems development effort.

• In other words, to users, the interface is the system.

• Users care about what they enter into and get out of the system and how the entire

experience of interaction feels.

Page 4: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

4

Human Computer Interaction – User Interface development cycle

• HCI = design, prototyping, evaluation, and implementation of user interfaces (UIs)

design Implementation(Prototype)

evaluation

Page 5: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

5

Iteration

At every stage! Design

Prototype

Evaluate

Page 6: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

6

Why Study User Interfaces?

• Major part of work for “real” programs– approximately 50%

• You will work on “real” software– intended for users other than yourself

• Bad user interfaces cost expensive

• User interfaces are hard to get right– people are different and unpredictable

Page 7: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

7

Who builds UIs?

• A team of specialists (ideally)– graphic designers– interaction / interface designers– marketers– test engineers– software engineers

Page 8: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

8

Five Key Ideas about UIs in HCI

• Visibility

• Feedback

• Goal

• Affordance

• Task

Page 9: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

9

• Visibility: all necessary controls should be visible for the user – he/she is supposed to be able to use them in correct way.

• Always keep users informed about what is going on, through providing appropriate feedback within reasonable time.

• Visibility is the mapping between a control and its effect:– Show controls (toolbars, menus).– Indicate mappings (Toolbar icons and graphics, enable & disable).– Provide feedback (Messages).

– The User Interface should help the user always understand:• The current state of the system.• What operations can be done.

Five Key Ideas about UIs in HCI Cont.

Page 10: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

10

• Feedback– When anything changes it should be made visible.– Feedback concerning the actions executed:

• When you are executing an action give a feedback to the user.

– Feedback concerning their results:• After an action executed, display results and make

user aware of the results.

• Goal– A state the user wants to reach:

• To be talking with somebody on the phone.• To have saved a file.

Five Key Ideas about UIs in HCI Cont.

Page 11: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

11

• Affordance– An affordance is a quality of an object, or an

environment, which allows an individual to perform an action

– The set of operations and procedures that can be done to an object (is the fundamental properties of an object which express how it might be used).

– ‘Perceived affordance’ is what typical users think can be done to an object

• Should a door be pulled or pushed?• What does this icon mean?

Five Key Ideas about UIs in HCI Cont.

Page 12: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

12

Affordance

• Every action should be mapped to a graphical icon which can easily be understood by users.

• After an action is accomplished, a sound should indicate whether the action is successful.

• Communicate with the user when necessary.

Page 13: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

13

• Task– An action the user wants to do:

• To call somebody

• To save the file

– Goals tasks, tasks goals.

Five Key Ideas about UIs in HCI Cont.

Page 14: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

14

Bad User Interfaces

• Hard to tell the difference between the two icons and names

Page 15: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

15

Page 16: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

16

Page 17: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

17

Interface design• Interface design is important for several reasons:

1. The better the user interface the easier it is to train people to use it.

2. Reducing training costs.

3. The better your user interface the less help people will need to use it, so reducing your support costs.

4. The better your user interface the more your users will like to use it.

5. Increasing their satisfaction with the work that you have done.

Page 18: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

18

User Interface Malfunctions(األعطال )

Key idea:

•“There are no good user interfaces ... just user interfaces that fit(مناسب )”– A truly bad user interface never fits

•To maximize fitness, we must minimize the occurrence of ‘malfunctions’ in the context of the expected use of the system.

Page 19: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

19

Definitions of malfunction

•“A mismatch between what the user wants, needs or expects and what the system provides”.

•“A breakdown(تعطل ) in usability”.

•“An obstacle(عقبة ) to performing a desired task”.

Page 20: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

20

• HCI should be designed to achieve a fit between the ( human ) user, computer and task.

• Fit: The match between the computer design, the user and the task so as to optimize the human resources needed to accomplish the task.

• Performance: Reflects both the efficiency of performing the task and the quality of the task product.

• Well-being: reflects an overall concern with the user’s physical and psychological(نفسي ) welfare(خير ).

The fit of HCI elements

Page 21: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

21

The fit of HCI elements leads to performance and well-being

Human

Fit

Task Computer

Performance&

Well-being

Page 22: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

22

What constitutes(يشكل ) a good user interface?

• Achieve required performance by operator(مشغل ), control and maintenance

personnel.• Minimize skill and personnel requirements and

training time.• Achieve required reliability of person-computer combinations ( reliability, availability, security and

data integrity ).• Foster(تعزيز ) design standardization within and

among systems ( integration, consistency and portability ).

Page 23: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

23

Human Computer Interaction

Usability and Design

Page 24: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

24

Usability

• A usable system is:– easy to learn– easy to remember how to use– effective to use– efficient to use– safe to use– enjoyable to use

Page 25: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

25

Why is usability important?

• Many everyday systems and products seem to be designed with little regard to usability.

• This list contains examples of interactive products: – mobile phone, computer, personal organizer, remote

control, coffee machine, ATM, etc….

Page 26: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

26

List of common measurable goals for usability:

• Time to learn how to operate the system.• Speed of performance.

• Rate of errors made by users.• User’s retention(احتفاظ ) time of information

presented.• User’s satisfaction with the system.

• Yet high-quality HCI is not just about usability or performance. It is also about emotions and

about the overall physical and social experience of interacting with computers.

Page 27: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

27

Principles supporting usability

LearnabilityThe ease with which new users can begin effective interaction and achieve maximal performance.

FlexibilityThe multiplicity of ways the user and system exchange information.

Robustness ( Powerful )The level of support provided to the user in determining successful achievement ( Error Handling ).

Page 28: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

28

1. Learnability Principles

• The ease with which new users can begin effective interaction and achieve maximal performance. There are a lot of aspects which support the learnability principle in usability subject, such as:– Predictability.– Synthesizability.– Generalizability.– Familiarity.– Consistency.

Page 29: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

29

learnability Principles Cont.

Predictability– Determining effect of future actions based on

past interaction history.

Synthesizability(تجميع )– Assessing the effect of past actions.– While the user learns the system, the user

constructs a picture of the inner of the black box.

Page 30: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

30

Generalizability– Extending specific interaction knowledge to new

situations.– The user guess the functionality of new

commands.– Can knowledge of one system/UI be extended

to other similar ones?– Example: cut & paste in different applications.

learnability Principles Cont.

Page 31: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

31

Familiarity– How prior knowledge applies to new system.– New user get good clues to use the system.– Names and icons that are common to the users

domain.

Consistency– Likeness(تشابه ) in input/output behaviour arising from

similar situations or task objectives.– Operation perform similarly for similar inputs.

learnability Principles Cont.

Page 32: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

32

2. Flexibility Principles

• Multiplicity of ways that users and system exchange information, and the following are some aspects which support the flexibility principle:– Dialog Initiative(مبادرة ).– Multithreading.– Task migratability(الهجرة ).– Substitutivity(استبدال ).– Customizability.

Page 33: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

33

Flexibility Principles Cnt.Dialogue initiative

– Freedom from system imposed(فرضت ) constraints on input dialogue.

– Old dialogue boxes are called system pre-emptive. System does all prompts, user responds sometimes necessary.

– Modern dialogue boxes are called user pre-emptive. More flexible, user initiates actions.

Multithreading– Ability of system to support user interaction for

more than one task at a time.– Allow user to perform simultaneous tasks.

Page 34: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

34

Task migratability– Passing responsibility for task execution between

user and system.

– The user perform the task or have the computer perform the tasks.

– Example: Spell-checking.

Flexibility Principles Cnt.

Page 35: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

35

Substitutivity– Allowing equivalent values of input and

output to be substituted for each other.

– Assume different forms for equivalent values.

– Allow different ways of presenting output.

– The user should be able to see the results in the units of the user's choice.

Flexibility Principles Cnt.

Page 36: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

36

Flexibility Principles Cnt.

Page 37: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

37

Customizability

– Modifiability of the user interface by user or system ( adaptability ).

– The user modify the interface in order to improve efficiency.

– The user can add commands, or change font size for better visibility.

Flexibility Principles Cnt.

Page 38: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

38

3. Robustness(متانة ) Principles

• Supporting user in determining successful achievement and assessment of goals, by the following concepts:

– Observability.– Recoverability.– Responsiveness.– Task Conformance.

Page 39: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

39

Principles robustness Cnt.

Observability

– Ability of user to evaluate the internal state of the system from its perceivable representation.

– Browsability:• Explore current state (without changing it).

– Reachability:• Navigate through observable states.

– Persistence: • Is how long the system states or user inputs

are visible to the user.

Page 40: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

40

Recoverability

– Ability of user to take corrective action once an error has been recognized.

– At a minimum the user ought(يجب ) to be able to correct the output, forward recovery, (Ability to fix when we can’t undo).

 

– Users have grown accustomed to the undo command, backward recovery.

Principles robustness Cnt.

Page 41: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

41

Responsiveness– How the user perceives the rate of communication with

the system.

– Response time• Time for system to respond in some way to user action (s).

– The system respond in suitable time.

– Some applications require msec response, others seconds and some applications can run overnight.

Principles robustness Cnt.

Page 42: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

42

•Task conformance–Degree to which system services support

(perform) all of the user's tasks.– Task completeness

• Can system do all tasks?

– Does it allow user to define new tasks?

Principles robustness Cnt.

Page 43: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

43

User-centred design

• In UI design the needs of the user are paramount( قصوى and where the ( أهميةuser is involved in the design process.

• UI design always involves the development of prototype interfaces.

Page 44: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

44

The UI design process

• UI design is an iterative process involving close liaisons( المتبادلة between ( العالقاتusers and designers.

• The 3 core activities in this process are:– User analysis. Understand what the users will

do with the system;– System prototyping. Develop a series of

prototypes for experiment;– Interface evaluation. Experiment with these

prototypes with users.

Page 45: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

45

The design process

Executableprototype

Designprototype

Produce paper-based design

prototype

Producedynamic design

prototype

Evaluate designwith end-users

Implementfinal userinterface

Evaluate designwith end-users

Analyse andunderstand

user activities

Page 46: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

46

User analysis

• User analyses have to be described in terms that users and other designers can understand.

• Scenarios where you describe typical episodes(الحلقات ) of use, are one way of describing these analyses.

Page 47: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

47

Analysis techniques

• Task analysis– Models the steps involved in completing a

task.

• Interviewing and questionnaires– Asks the users about the work they do.

• Ethnography– Observes the user at work.

Page 48: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

48

User interface prototyping

• The aim of prototyping is to allow users to gain direct experience with the interface.

• Prototyping may be a two-stage process:– Early in the process, paper prototypes may be

used;– The design is then refined and increasingly

sophisticated automated prototypes are then developed.

Page 49: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

49

User interface evaluation

• Some evaluation of a user interface design

should be carried out to assess its suitability.

• Ideally, an interface should be evaluated against a usability specification.

Page 50: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

50

Information presentation

• Information presentation is concerned with presenting system information to system users

• The information may be presented directly or may be transformed in some way for presentation

• The Model-View-Controller approach is a way of supporting multiple presentations of data

Information tobe displayed

Presentationsoftware

Display

Page 51: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

51

Error messages• Error message design is critically important. • Poor error messages can mean that a user

rejects rather than accepts a system• Messages should be polite, concise, consistent

and constructive• The background and experience of users

should be the determining factor in message design.

Page 52: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

52

HCI design models

• The waterfall life cycle model.

• The star life cycle model.

• Rapid prototyping model.

Page 53: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

53

Design Process Models

• Waterfall model The waterfall model assumes that the

design is fixed before entering to the next phase of design. Does not fit well in interactive systems.  – It is a sequence of steps from software

engineering field.

• Spiral model– Only continue after step if feedback is positive.

Page 54: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

54

Waterfall Model( From Software Engineering Field )

Application Description

RequirementsSpecification

SystemDesign

Product

Initiation

Analysis

Design

Implementation

Page 55: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

55

The waterfall model

• Application description – General description of the purpose and the functions

of the system to be designed.

• Requirements specification – Detailed description of the functions the system

should perform.

• System design– Defining the software functions and software

modules.

• Product– The resulting implementation of the system

Page 56: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

56

The star life cycle

Task analysis / functional analysis

Requirements specification

Conceptual design / formal design

Prototyping

Implementation

Evaluation

Page 57: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

57

The star life cycle

• The design of interactive systems typically does not follow a specific order of steps.

• The design can start in any step - followed by evaluation.

• Needs good software tools.

Page 58: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

58

Software prototyping

• A prototype is an initial version of a system used to demonstrate concepts and try out design options.

• Different kinds of prototyping:– Low fidelity.– High fidelity.

• Compromises in prototyping:– Vertical.– Horizontal.

Page 59: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

59

Why prototype?• Evaluation and feedback are central to interaction design.

• Stakeholders can see, hold, interact with a prototype easily.

• Team members can communicate effectively.

• You can test out ideas for yourself .

• It encourages reflection: very important aspect of design.

• Prototypes answer questions, and support designers in choosing between alternatives.

Page 60: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

60

Benefits of prototyping

• Improved system usability.

• A closer match to users’ real needs.

• Improved design quality.

• Improved maintainability.

• Reduced development effort.

Page 61: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

61

What to prototype?

• Work flow, task design.

• Screen layouts and information display.

• Difficult, controversial, critical areas.

Page 62: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

62

Low-fidelity( الدقة ( منخفضPrototyping

• Uses a medium which is unlike the final medium, e.g. paper, cardboard.

• Is quick, cheap and easily changed.

• Examples:sketches of screens, task sequences,

storyboards, etc…

Page 63: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

63

High-fidelity prototyping

• Uses materials that you would expect to be in

the final product.

• Prototype looks more like the final system than

a low-fidelity version.

Page 64: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

64

Compromises(التسويات ) in prototyping

•Two common types of compromise:• Horizontal: provide a wide range of

functions, but with little details.

• Vertical: provide a lot of details for only a few functions.

•Compromises in prototypes mustn’t be ignored.

Page 65: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

65

The prototyping process

Establishprototypeobjectives

Defineprototype

functionality

Developprototype

Evaluateprototype

Prototypingplan

Outlinedefinition

Executableprototype

Evaluationreport

Page 66: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

66

Sketches

– Drawing of the outward(الخارجي ) appearance of the intended system.

– Sketching is important to low-fidelity prototyping

Computer Telephone

Last Name:

First Name:

Phone:

Place Call Help

Page 67: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

67

Storyboard of a computer telephone

Computer Telephone Last Name: First Name: Phone:

Place Call Help

Help->

Computer Telephone

Last Name: Greenberg First Name: Phone:

Place Call Help

Dialling....

Cancel

Call connected...

Computer Telephone

Last Name: Greenberg First Name: Phone:

Place Call Help

Connected

Hang up

Call completed...

Return

Help Screen You can enter either the person's name or their number. Then hit the place button to call them

Call by name->

Computer Telephone

Last Name: Greenberg First Name: Phone:

Place Call Help

Establishing connection->

Page 68: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

68

Computer Telephone Last Name: First Name: Phone:

Place Call Help

Help-

Type name and place call

Return

Help Screen You can enter either the person's name or their number. Then hit the place button to call them

Computer Telephone Last Name: First Name: Phone:

Place Call Help

Computer Telephone

Last Name: Greenberg First Name: Phone:

Place Call Help

Computer Telephone

Last Name: Greenberg First Name: Phone:

Place Call Help

Dialling....

Cancel

Computer Telephone

Last Name: Greenberg First Name: Phone:

Place Call Help

Connected

Hang up

Computer Telephone Last Name: First Name: Phone:

Place Call Help

Page 69: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

69

UI design principles

• UI design must take account of the needs, experience and capabilities of the system users.

• Designers should be aware of people’s physical and mental limitations (e.g. limited short-term memory) and should recognise that people make mistakes.

• UI design principles underlie interface designs although not all principles are applicable to all designs.

Page 70: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

70

Design principles• 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 have the same format, command punctuation(الترقيم ) should be similar, etc.

• Minimal surprise– If a command operates in a known way, the user should

be able to predict the operation of comparable commands.

Page 71: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

71

Design principles Cnt.• Recoverability

– The system should provide some resilience(مرونة ) to user errors and allow the user to recover from errors. This might include an undo facility, confirmation of destructive actions, 'soft' deletes, etc.

• User guidance– Some user guidance such as help systems, on-line

manuals, etc. should be supplied.

• User diversity(تنوع )– Interaction facilities for different types of user should

be supported. For example, some users have seeing difficulties and so larger text should be available.

Page 72: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

72

User interface design principlesPrinciple DescriptionUser familiarity The interface should use terms and

concepts which are drawn from theexperience of the people who will make mostuse of the system.

Consistency The interface should be consistent in that,wherever possible, comparable operationsshould be activated in the same way.

Minimal surprise Users should never be surprised by thebehaviour of a system.

Recoverability The interface should include mechanisms toallow users to recover from errors.

User guidance The interface should provide meaningfulfeedback when errors occur and providecontext-sensitive user help facilities.

User diversity The interface should provide appropriateinteraction facilities for different types ofsystem user.

Page 73: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

73

Interactive systems and software life cycle

• How to develop the Software ?

• Software is:– Large number of connected computer

programs.– High level of quality.

Page 74: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

74

Factors of Software Quality

• Correctness• Reliable• Robustness• Friendly User Interface• Modifiable• Compatible• Portable• Interpretable• Efficiency• Well documented

Page 75: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

75

Feasibility Study

Customer

Request to develop SW

Requirement Engineering

Yes

Page 76: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

76

Requirement Engineering

• Requirement Elicitation.

• Requirement Analysis.

• Requirement Validation.

• Requirement Specification.

Page 77: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

77

Requirement Types

• Functional Requirement.

• Non-Functional Requirement.

• Data.

• Domain.

• Constraint.

• Glossary.

Page 78: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

78

Interactive systems

• After the iterative process, the result of the requirement engineering must be:– Clear.– Accurate.– Complete.

Page 79: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

79

Feasibility StudyFeasibility Study

Customer

Request to develop SW

Requirement EngineeringRequirement Engineering

Yes

Architecture designArchitecture designProblemProblem

SolvingSolving

Page 80: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

80

Requirement Engineering Phases:

Domain understandingDomain understanding

Req. ElicitationReq. Elicitation

Req. DecompositionReq. Decomposition

Conflict ResolutionConflict Resolution

Req. PrioritizationReq. Prioritization

Req. ValidationReq. Validation

Req. SpecificationReq. Specification

Design)1(

)2(

)3(

)4(

)7(

)6(

)5(

Page 81: 1 Human Computer Interaction User Interface. 2 What is a User Interface? The user interface is the part of a software program that allow users to interact.

81

Architecture designArchitecture design Module DesignModule Design Coding UnitCoding Unit

Unit TestingUnit TestingSystem integration ,linking, connectionSystem integration ,linking, connectionSystem testingSystem testing

Accepting testing

Accepting testing

Deployment Usage

Deployment Usage


Recommended