Presentation is loading. Please wait.

Presentation is loading. Please wait.

These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw-Hill, 2009) Slides copyright 2009 by Roger Pressman.1.

Similar presentations


Presentation on theme: "These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw-Hill, 2009) Slides copyright 2009 by Roger Pressman.1."— Presentation transcript:

1 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 11 User Interface Design Slide Set to accompany Software Engineering: A Practitioner’s Approach, 7/e by Roger S. Pressman Slides copyright © 1996, 2001, 2005, 2009 by Roger S. Pressman For non-profit educational use only May be reproduced ONLY for student use at the university level when used in conjunction with Software Engineering: A Practitioner's Approach, 7/e. Any other reproduction or use is prohibited without the express written permission of the author. All copyright information MUST appear if these slides are posted on a website for student use.

2 These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw-Hill, 2009) Slides copyright 2009 by Roger Pressman.2 Interface Design Easy to use? Easy to understand? Easy to learn?

3 These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw-Hill, 2009) Slides copyright 2009 by Roger Pressman.3 Interface Design lack of consistency too much memorization no guidance / help no context sensitivity poor response Arcane/unfriendly Typical Design Errors

4 These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw-Hill, 2009) Slides copyright 2009 by Roger Pressman.4 Golden Rules Place the user in control Reduce the user’s memory load Make the interface consistent

5 These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw-Hill, 2009) Slides copyright 2009 by Roger Pressman.5 Place the User in Control  Define interaction modes in a way that does not force a user into unnecessary or undesired actions. Example: Spell check. The user should be able to enter and exit the mode with little or no effort. Example: Spell check. The user should be able to enter and exit the mode with little or no effort.  Provide for flexible interaction. Example: keyboard commands/ mouse movement/ multi touch screen/ voice recognition commands Example: keyboard commands/ mouse movement/ multi touch screen/ voice recognition commands  Allow user interaction to be interruptible and undoable. In the event where the user is involved in a sequence of actions, allow them to interrupt the sequence. In the event where the user is involved in a sequence of actions, allow them to interrupt the sequence. Allow user to “undo” action. Allow user to “undo” action.

6 These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw-Hill, 2009) Slides copyright 2009 by Roger Pressman.6 Place the User in Control  Streamline interaction as skill levels advance and allow the interaction to be customized. Example: Use macro to customize the interface to facilitate interaction. Example: Use macro to customize the interface to facilitate interaction.  Hide technical internals from the casual user.  Design for direct interaction with objects that appear on the screen.

7 Reduce the User’s Memory Load These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw-Hill, 2009) Slides copyright 2009 by Roger Pressman.7  Reduce demand on short-term memory. Reduce the requirement to remember past actions, inputs, and results. Reduce the requirement to remember past actions, inputs, and results. Example: Provide visual cues that enable a user to recognize past actions, rather than having to recall them. Example: Provide visual cues that enable a user to recognize past actions, rather than having to recall them.  Establish meaningful defaults. The initial set of defaults should make sense for the average user. The initial set of defaults should make sense for the average user. Allow the user to specify individual preferences as well. Allow the user to specify individual preferences as well. Provide “reset” option to enable redefinition of orgiginal default values. Provide “reset” option to enable redefinition of orgiginal default values.

8 These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw-Hill, 2009) Slides copyright 2009 by Roger Pressman.8 Reduce the User’s Memory Load  Define shortcuts that are intuitive. When using mnemonic to accomplish a system function, it should be tied to the action in a way that easy to remember. Example: ctrl-C for copy. When using mnemonic to accomplish a system function, it should be tied to the action in a way that easy to remember. Example: ctrl-C for copy.  The visual layout of the interface should be based on a real world metaphor. Example: Usage of checkbook/ check register metaphor in bill payment system. Example: Usage of checkbook/ check register metaphor in bill payment system.  Disclose information in a progressive fashion. Example: Underlining function. It is one of a number of functions under a text style menu. However, every underlining capability is not listed. User must pick underlining, then all underlining options are presented. Example: Underlining function. It is one of a number of functions under a text style menu. However, every underlining capability is not listed. User must pick underlining, then all underlining options are presented.

9 These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw-Hill, 2009) Slides copyright 2009 by Roger Pressman.9 Make the Interface Consistent  Allow the user to put the current task into a meaningful context. Example: Provide indicators( window titles, graphical icons, consistent color coding) that enable the user to know the context of the work at hand. Example: Provide indicators( window titles, graphical icons, consistent color coding) that enable the user to know the context of the work at hand.  Maintain consistency across a family of applications.

10 These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw-Hill, 2009) Slides copyright 2009 by Roger Pressman.10 Make the Interface Consistent  If past interactive models have created user expectations, do not make changes unless there is a compelling reason to do so. Example: User expects to use ctrl-S to save in every application he encounters. Example: User expects to use ctrl-S to save in every application he encounters.


Download ppt "These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw-Hill, 2009) Slides copyright 2009 by Roger Pressman.1."

Similar presentations


Ads by Google