1.  Areas of concern 1. The design of interfaces between software components 2. The design of interfaces between the software and other nonhuman producers.

Slides:



Advertisements
Similar presentations
Chapter 12 User Interface Design
Advertisements

Chapter 11 Designing the User Interface
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw-Hill, 2009) Slides copyright 2009 by Roger Pressman.1.
Chapter 12 User Interface Design
Chapter 12 User Interface Design
1 Software Engineering: A Practitioner’s Approach, 6/e Chapter 12b: User Interface Design Software Engineering: A Practitioner’s Approach, 6/e Chapter.
Chapter 12 User Interface Analysis and Design
Human Computer Interface. HCI and Designing the User Interface The user interface is a critical part of an information system -- it is what the users.
Developed by Justin Francisco, SUNY Fredonia USER INTERFACE DESIGN By: Justin Francisco.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
User Interface Design. Overview The Developer’s Responsibilities Goals and Considerations of UI Design Common UI Methods A UI Design Process Guidelines.
1 CMPS115 Class 6 : User Interface Design Due today –Scenarios –Decomposing paper Next class –Deliverable: Requirements look at template and at example.
© 2005 by Prentice Hall Chapter 3c Designing Interfaces and Dialogues.
1 User Interface Design CIS 375 Bruce R. Maxim UM-Dearborn.
Performing User Interface Design
Design, goal of design, design process in SE context, Process of design – Quality guidelines and attributes Evolution of software design process – Procedural,
CS-499G 8/17/ Design Concepts and Principles.
Software Engineering User Interface
User Interface Theory & Design
Systems Analysis and Design in a Changing World, 6th Edition
Chapter 11: Interaction Styles. Interaction Styles Introduction: Interaction styles are primarily different ways in which a user and computer system can.
1 Interface Design Easy to use? Easy to understand? Easy to learn?
Systems Analysis and Design in a Changing World, 6th Edition
11.10 Human Computer Interface www. ICT-Teacher.com.
User interface design. Recap OOD is an approach to design so that design components have their own private state and operations Objects should have constructor.
CSC 480 Software Engineering Lecture 19 Nov 11, 2002.
CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Chapter 12 User Interface Design Highlights of user (human) interface design concepts.
These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw-Hill, 2009) Slides copyright 2009 by Roger Pressman.1.
Click to edit Master subtitle style USABILITY and USER INTERFACE DESIGN Application.
1 Chapter 15 User Interface Design. 2 Interface Design Easy to use? Easy to understand? Easy to learn?
Developed by Reneta Barneva, SUNY Fredonia User Interface Design (Chapter 11)
CS 8532: Adv. Software Eng. – Spring 2007 Dr. Hisham Haddad Chapter 12 Class will start momentarily. Please Stand By … CS 8532: Advanced Software Engineering.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Slide 1 Human Computer Interface Design (HCI - Human Computer Interactions Alias.
User Interface Theory & Design Lecture 6a 1.  User interface is everything the end user comes into contact with while using the system  To the user,
E.g.: MS-DOS interface. DIR C: /W /A:D will list all the directories in the root directory of drive C in wide list format. Disadvantage is that commands.
1 COSC 4406 Software Engineering COSC 4406 Software Engineering Haibin Zhu, Ph.D. Dept. of Computer Science and mathematics, Nipissing University, 100.
Input Design Lecture 11 1 BTEC HNC Systems Support Castle College 2007/8.
1 Chapter 4: User Interface Design. 2 Introduction … Purpose of user interface design:-  Easy to learn  Easy to use  Easy to understand.
Software Engineering B.Tech Ii csE Sem-II Unit-V PPT SLIDES By Hanumantha Rao.N Newton’s Institute of Engineering 1.
Chapter 15 사용자 인터페이스 설계 User Interface Design
Chapter 5:User Interface Design Concepts Of UI Interface Model Internal an External Design Evaluation Interaction Information Display Software.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Conceptual Model Design Informing the user what to do Lecture # 10 (a) Gabriel Spitz.
Importance of user interface design – Useful, useable, used Three golden rules – Place the user in control – Reduce the user’s memory load – Make the.
These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw-Hill, 2009) Slides copyright 2009 by Roger Pressman.1.
User Interface Design Make Your Program Easy to Use and Look Good.
Component-Level Design and User Interface Design Departemen Ilmu Komputer IPB 2009.
Programming Techniques Lecture 11 User Interface Design Based on: Software Engineering, A Practitioner’s Approach, 6/e, R.S. Pressman Software Engineering.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Chapter 12 User Interface Analysis and Design - Introduction - Golden rules of user interface design - Reconciling four different models - User interface.
6. (supplemental) User Interface Design. User Interface Design System users often judge a system by its interface rather than its functionality A poorly.
CompSci 280 S Introduction to Software Development
User Interface Design The Golden Rules: Place the user in control.
User Interface Design.
Chapter 15 User Interface Design
Software Engineering: A Practitioner’s Approach, 6/e Chapter 12 User Interface Design copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc.
Chapter 15 User Interface Design
Chapter 12 User Interface Analysis and Design
Chapter 15 User Interface Design
Highlights of user (human) interface design concepts and principles
CS 8532: Advanced Software Engineering
Chapter 11 User Interface Design
Interface Design Easy to learn? Easy to use? Easy to understand?
Chapter 11 User Interface Design
Chapter 11 User Interface Design.
COSC 4406 Software Engineering
Presentation transcript:

1

 Areas of concern 1. The design of interfaces between software components 2. The design of interfaces between the software and other nonhuman producers and consumers of information (i.e., other external entities) 3. The design of the interface between a human (i.e., the user) and the computer 2

3 Easy to use? Easy to understand? Easy to learn?

 Typical Design errors Lack of consistency Lack of consistency Too much memorization Too much memorization No guidance / help No guidance / help No context sensitivity No context sensitivity Poor response Poor response Arcane/unfriendly Arcane/unfriendly 4

 User interface design creates an effective communication medium between a human and a computer.  Following a set of interface design principles, design(er) identifies interface objects and actions and then creates a screen layout that forms the basis for a user interface prototype. 5

 Place the user in control  Reduce the user’s memory load  Make the interface consistent 6

“What I really would like,” said the user solemnly, “is a system that reads my mind. It knows what I want to do before I need to do it and makes it very easy for me to get it done. That’s all, just that.” -- Reply of a user was asked about the attributes of the window-oriented graphical interface needed by the information system 7

1. Define interaction modes in a way that does not force a user into unnecessary or undesired actions. spell checker, debug errors, showing an error message or a home page repeatedly etc. spell checker, debug errors, showing an error message or a home page repeatedly etc. 2. Provide for flexible interaction. Keyboard, Mouse, Pen, Voice, Actions etc. Keyboard, Mouse, Pen, Voice, Actions etc. 3. Allow user interaction to be interruptible and undoable. Make sure – no loss of data already worked Make sure – no loss of data already worked 4. Streamline interaction as skill levels advance and allow the interaction to be customized. Expert users, unattended workings, macros Expert users, unattended workings, macros 5. Hide technical internals from the casual user. 6. Design for direct interaction with objects that appear on the screen. Give the user real world feel Give the user real world feel Allow stretch, skew, rotation etc. Allow stretch, skew, rotation etc. 8

Principles : 1. Reduce demand on short-term memory. 2. Establish meaningful defaults. 3. Define shortcuts that are intuitive. 4. The visual layout of the interface should be based on a real world metaphor. 5. Disclose information in a progressive (Hierarchical) fashion. 9

Guidelines : 1. All visual information should be organized according to a design standard that is maintained throughout all screen displays 2. Input mechanisms should be constrained to a limited set that are used consistently throughout the application 3. Mechanisms for navigating from task to task should be consistently defined and implemented. 10

Principles : 1. Allow the user to put the current task into a meaningful context. Window titles, graphical icons etc that enable the user to know the context of the work at hand. Window titles, graphical icons etc that enable the user to know the context of the work at hand. User should be able to determine where he has come from and what alternatives exist for a transition to a new task. User should be able to determine where he has come from and what alternatives exist for a transition to a new task. 2. Maintain consistency across a family of applications. 3. If past interactive models have created user expectations, do not make changes unless there is a compelling reason to do so. E.g. do not use ctrl + s for scaling E.g. do not use ctrl + s for scaling 11

 User model A profile of all end user requirements of the system Created by “Human Engineer” (or Software Engineer)  Design model Design realization of the user model Created by Software Engineer  Mental model (system perception) The user’s mental image of what the interface is  Implementation model Created by implementers The role of interface designer is to reconcile the differences in these models and derive a consistent representation of the interface. 12

13

 Interface analysis means understanding 1. The people (end-users) who will interact with the system through the interface; 2. The tasks that end-users must perform to do their work, 3. The content that is presented as part of the interface 4. The environment in which these tasks will be conducted. 14

Can be done through : 1. User interviews 2. Sales Team Input 3. Marketing Team Input 4. Support Team Input 15

1. Are users trained professionals, technician, clerical, or manufacturing workers? 2. What level of formal education does the average user have? 3. Are the users capable of learning from written materials or have they expressed a desire for classroom training? 4. Are users expert typists or keyboard phobic? 5. What is the age range of the user community? 6. Will the users be represented predominately by one gender? 7. How are users compensated for the work they perform? 8. Do users work normal office hours or do they work until the job is done? 9. Is the software to be an integral part of the work users do or will it be used only occasionally? 10. What is the primary spoken language among users? 11. What are the consequences if a user makes a mistake using the system? 12. Are users experts in the subject matter that is addressed by the system? 13. Do users want to know about the technology the sits behind the interface? 16

 Task Analysis answers the following questions … What work will the user perform in specific circumstances? What tasks and subtasks will be performed as the user does the work? What specific problem domain objects will the user manipulate as work is performed? What is the sequence of work tasks—the workflow? What is the hierarchy of tasks?  Use-cases define basic interaction  Task elaboration refines interactive tasks  Object elaboration identifies interface objects (classes)  Workflow analysis defines how a work process is completed when several people (and roles) are involved 17

18

Format and Aesthetics of the contents are considered 1. Are different types of data assigned to consistent geographic locations on the screen (e.g., photos always appear in the upper right hand corner)? 2. Can the user customize the screen location for content? 3. Is proper on-screen identification assigned to all content? 4. If a large report is to be presented, how should it be partitioned for ease of understanding? 5. Will mechanisms be available for moving directly to summary information for large collections of data. 6. Will graphical output be scaled to fit within the bounds of the display device that is used? 7. How will color to be used to enhance understanding? 8. How will error messages and warning be presented to the user? 19

 Ergonomics : The study of work and workplace design. It is about things that make working on a computer more comfortable and better for human body.  E.g. good UI design may help in avoiding stress and fatigue. 20

 Using information developed during interface analysis, define interface objects and actions (operations).  Define events (user actions) that will cause the state of the user interface to change. Model this behavior.  Depict each interface state as it will actually look to the end-user.  Indicate how the user interprets the state of the system from information provided through the interface. 21

 Response time  Help facilities  Error handling  Menu and command labeling  Application accessibility  Internationalization 22

 Length : If the length of system response is too long, user frustration and stress is the inevitable result.  Variability : Variability refers to the deviation from average response time 23

 Will help be available for all system functions and at all times during system interaction? Options include help for only a subset of all functions and actions or help for all functions  How will the user request help? Options include a help menu, a special function key, or a HELP command.  How will help be represented? Options include a separate window, a reference to a printed document (less than ideal), or a one- or two- line suggestion produced in a fixed screen location.  How will the user return to normal interaction? Options include a return button displayed on the screen, a function key, or control sequence.  How will help information be structured? Options include a "flat" structure in which all information is accessed through a keyword, a layered hierarchy of information that provides increasing detail as the user proceeds into the structure, or the use of hypertext 24

 The message should describe the problem in language that the user can understand.  The message should provide constructive advice for recovering from the error.  The message should indicate any negative consequences of the error (e.g., potentially corrupted data files) so that the user can check to ensure that they have not occurred (or correct them if they have).  The message should be accompanied by an audible or visual cue.  The message should be "nonjudgmental." That is, the wording should never place blame on the user. 25

 Will every menu option have a corresponding command?  What form will commands take? Options include a control sequence (e.g., alt-P), function keys, or a typed word.  How difficult will it be to learn and remember the commands? What can be done if a command is forgotten?  Can commands be customized or abbreviated by the user? 26

 People with physical needs Visual Hearing Mobility Speech Learning  Follow “assistive technology” guidelines 27

 Localities  Languages 28

29

30