Download presentation
Presentation is loading. Please wait.
Published byDerrick Perry Modified over 8 years ago
1
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Slide 1 Human Computer Interface Design (HCI - Human Computer Interactions Alias MMI, Automation Boundary
2
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 2 Slide 2 Interface Design Easy to use? Easy to understand? THE OBJECTIVE Easy to learn?
3
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 3 Slide 3 Objectives of GOOD HCI Design Reduce ErrorsIncrease Safety Improve ReliabilityImprove Maintainability Reduce Fatigue and StressIncrease Comfort Reduce BoredomIncrease User Acceptance Reduce loss of timeIncrease Efficiency Improve Information System Performance Reduce Training Requirements Reduce Personnel Requirements Improve Working Environment
4
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 4 Slide 4 Interface Design lack of consistency too much memorization no guidance / help no context sensitivity poor response Arcane/unfriendly Typical Design Errors
5
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 5 Slide 5 Golden Rules l Place the user in control l Reduce the user’s memory load l Make the interface consistent
6
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 6 Slide 6 Place the User in Control Define interaction modes in a way that does not force a user into unnecessary or undesired actions. Provide for flexible interaction. Allow user interaction to be interruptible and undoable. Streamline interaction as skill levels advance and allow the interaction to be customized. Hide technical internals from the casual user. Design for direct interaction with objects that appear on the screen.
7
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 7 Slide 7 Reduce the User’s Memory Load Reduce demand on short-term memory. Establish meaningful defaults. Define shortcuts that are intuitive. The visual layout of the interface should be based on a real world metaphor. Disclose information in a progressive fashion.
8
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 8 Slide 8 Make the Interface Consistent Allow the user to put the current task into a meaningful context. Maintain consistency across a family of applications. If past interactive models have created user expectations, do not make changes unless there is a compelling reason to do so.
9
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 9 Slide 9 Design Issues l Response time l Help facilities l Error handling l Menu and command labeling l Application accessibility l Internationalization
10
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 10 Slide 10 Practical Design Principles l Color l Layout l Typography l Other Considerations
11
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 11 Slide 11 Design Principles Color Use Color to express is what you intended to communicate. Use backgrounds that are white or light colored. Use colors in a consistent manner for all GUI’s Use color sparingly. 5-7 colors plenty Use color for a purpose other than ascetics Be aware all monitors do not display colors the same.
12
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 12 Slide 12 Design Principles l Color Which is better?
13
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 13 Slide 13 Design Principles l Layout Which is better? Group components by functional area. Grids help the eyes to eliminate clutter Keep screens simple Make sure each component is useful to the user
14
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 14 Slide 14 Design Principles l Typography Which is better? Keep type styles and faces consistent Use limited styles and faces (5 to 7) Use bold, italics and underline functions for understanding Chose fonts for legibility Use blinking for drawing attention.
15
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 15 Slide 15 Design Principles l Other Considerations Which is better? Be consistent Be practical Allow users to select components, colors, locations if possible. Do not rely solely on a mouse for navigation.
16
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 16 Slide 16 Prototyping Definition Prototyping is the process of building a model of a system. In terms of an information system, prototypes are employed to help system designers build an information system that intuitive and easy to manipulate for end users. Which is better?
17
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 17 Slide 17 Prototyping When is prototyping used? Prototyping is an iterative process that is generally used in the analysis workflow. However, you can do a prototype for various reasons. You might want to prototype the use of a database management system (DBII, Oracle), prototype the use of a session management tool or other software that you may use.
18
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 18 Slide 18 Prototyping Which is better? Advantages of Prototyping: Reduces development time. Reduces development costs. Requires user involvement. Developers receive quantifiable user feedback. Helps implementation - users know expectations. Results in higher user satisfaction.
19
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 19 Slide 19 Prototyping Which is better? Disadvantages of Prototyping: Can lead to insufficient analysis. Users expect the performance of the ultimate system to be the same as the prototype. Developers can become too attached to their prototypes Can cause systems to be left unfinished and/or implemented before they are ready. Sometimes leads to incomplete documentation. If sophisticated software prototypes (4th GL or CASE Tools) are employed, the time saving benefit of prototyping can be lost.
20
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 20 Slide 20 Prototyping Which is better? In the early 1980's, organizations used prototyping approximately thirty percent (30%) of the time in development projects. In the early 1990's, its use had doubled to sixty percent (60%). The use of object-oriented technology has slowed down this trend since developers are spending more of their time on OO concerns.
21
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 21 Slide 21 Prototyping Which is better? When should I use prototyping? When users are able to actively participate in the project. When developers have prototyping experience or training. When users have be informed on the purpose of prototyping. When experimentation and learning are needed before there can be full commitment to a project. When cost is an issue for driving out requirements.
22
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 22 Slide 22 Analysis and Prototyping Which is better? GOAL: produce the most reasonable interface within practical business constraints.
23
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 23 Slide 23 Analysis and Prototyping Which is better? Benefits To Early Analysis And Prototyping Of GUIs Keeps ultimate product vision in sight Allows definition of base functionality Helps scope out critical features Makes management more committed Helps to avoid misinterpretation or oversights Allows clarification of details Helps to develop release criteria Aids to establish minimum and target goals
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.