User Interface Design The Golden Rules: Place the user in control.

Slides:



Advertisements
Similar presentations
Chapter 12 User Interface Design
Advertisements

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.
Developed by Justin Francisco, SUNY Fredonia USER INTERFACE DESIGN By: Justin Francisco.
Design Modeling for Web Applications
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 13 Embedded Systems
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.
Design III Due today: User Manual Next Class:Pressman 8; Homework #4 Questions? Team Status Reports Design Principles (UI related) Bio Break ( 5 minutes.
1 User Interface Design CIS 375 Bruce R. Maxim UM-Dearborn.
Performing User Interface Design
1.  Areas of concern 1. The design of interfaces between software components 2. The design of interfaces between the software and other nonhuman producers.
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.
Chapter 7 Requirement Modeling : Flow, Behaviour, Patterns And WebApps.
1 Interface Design Easy to use? Easy to understand? Easy to learn?
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.
1 Chapter 15 User Interface Design. 2 Interface Design Easy to use? Easy to understand? Easy to learn?
CHAPTER TEN AUTHORING.
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.
1 COSC 4406 Software Engineering COSC 4406 Software Engineering Haibin Zhu, Ph.D. Dept. of Computer Science and mathematics, Nipissing University, 100.
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.
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 – 8 Software Tools.
Chapter 12 User Interface Analysis and Design - Introduction - Golden rules of user interface design - Reconciling four different models - User interface.
Unit-4 Design and Implementation. Design Engineering Design engineering encompasses the set of principles, concepts and practices that lead to the development.
SOFTWARE TESTING Date: 29-Dec-2016 By: Ram Karthick.
Chapter 18 Maintaining Information Systems
Slide Set to accompany Web Engineering: A Practitioner’s Approach
User Interface Design.
Introduction to Operating System (OS)
Design and Implementation
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
Tools of Software Development
Copyright Catherine M. Burns
HCI – DESIGN RATIONALE 20 November 2018.
Chapter 15 User Interface Design
Highlights of user (human) interface design concepts and principles
Analysis models and design models
CS 8532: Advanced Software Engineering
Chapter 7 –Implementation Issues
Chapter 11 User Interface Design
UNIT III Design Engineering
Proper functionality Good human computer interface Easy to maintain
Interface Design Easy to learn? Easy to use? Easy to understand?
Chapter 11 User Interface Design
Chapter 11 User Interface Design.
Chapter 5 Architectural Design.
COSC 4406 Software Engineering
Presentation transcript:

User Interface Design The Golden Rules: Place the user in control. 2. Reduce the user’s memory load. 3. Make the interface consistent. These golden rules actually form the basis for a set of user interface design principles that guide this important aspect of software design.

1. 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.

2. 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.

3.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.

User Interface Analysis and Design 1.Interface Analysis and Design Models To build an effective user interface, “all design should begin with an understanding of the intended users, including profiles of their age, gender, physical abilities, education, cultural or ethnic background, motivation, goals and personality” users can be categorized as: Novices Knowledgeable, intermittent users. Knowledgeable, frequent users.

2. The Interface design Process

Interface Analysis User analysis User Interviews. Sales input. Marketing input. Support input.

2. Task Analysis and Modeling The goal of task analysis is to answer 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?

3. Analysis of Display Content Are different types of data assigned to consistent geographic locations on the screen (e.g., photos always appear in the upper right-hand corner)? Can the user customize the screen location for content? Is proper on-screen identification assigned to all content? If a large report is to be presented, how should it be partitioned for ease of understanding? Will mechanisms be available for moving directly to summary information for large collections of data? Will graphical output be scaled to fit within the bounds of the display device that is used? How will color be used to enhance understanding? How will error messages and warnings be presented to the user? The answers to these (and other) questions will help you to establish requirements for content presentation.

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

Applying Interface Design Steps the following homeowner tasks, objects, and data items are identified: • accesses the SafeHome system • enters an ID and password to allow remote access • checks system status • arms or disarms SafeHome system • displays floor plan and sensor locations • displays zones on floor plan • changes zones on floor plan • displays video camera locations on floor plan • selects video camera for viewing • views video images (four frames per second) • pans or zooms the video camera

User Interface Design Patterns

User Interface Design Issues Response time. Help facilities. Error handling. Menu and command labeling. Application accessibility. Internationalization.

Interface design principles and guidelines Anticipation Communication , Consistency Controlled memory Efficiency , Flexibility Focus Fitt’s law Human interface objects Latency reduction Learnability Metaphors Maintain work product integrity Readability Track state, visible navigation

Design Evaluation

Implementation Issues Executable version of the software from the initial requirements of the systems High –or - low level programming languages or tailoring and adapting generic, off-the-shelf systems to meet the specific requirements of organization Aspects Reuse Configuration management – keep track of versions Host-target development- develop ( in host) & execute ( in target)

Reuse Initially functions and objects in programming language libraries were reused Now software reuse is possible at different levels Abstraction level- design & architectural patterns Object level- objects from appropriate libraries (objects and methods offer needed functionality) eg. JavaMail library Component level- components are collections of objects and object classes that operate together to provide related functions and services eg. User interface using a framework

System level- reuse entire applications with some kind of configuration eg. COTS Costs associated with reuse Cost of time spent in looking for software to reuse and assessing whether or not it meets your needs Cost of buying the reusable software Costs of adapting and configuring the reusable software components or systems Cost of integrating reusable software components from different sources with the new code developed

Configuration management General process of managing a changing software system Aim is to support the system integration process for all developers to access the project code and documents in a controlled way, to find the changes been made, compile and link components in a system Fundamental configuration management activities Version management – development by several programmers System configuration- what versions of components to create each version Problem tracking- report bugs and other problems

Tools Version management- Subversion (multi site, multi team devp) System integration- GNU build system Bug tracking- Bugzilla Host target development (based on Host-target model) Development and execution platforms (platforms can be hardware, OS, dbms-interactive platforms) Development and execution platforms same- Simulators (Embedded Systems)- Simulators are costly so only for popular hardware architectures

Middleware also possible Tools Integrated compiler and syntax- directed editing systems Language debugging system Graphical editing tools eg. UML models Testing tools eg. Junit Project support tools Specialized tools eg. Static analyzers IDE (Integrated Development Environment)- set of software tools that supports different aspects with common framework and user interface eg. Eclipse

Issues Hardware and software components Availability requirements of the systems- platform failure Component communication- same /physically close platform implementation to reduce communication latency, delay between sending and receiving message Document hardware and software deployment using UML deployment diagrams across hardware platforms Embedded systems – above components + physical size, power capabilities , real time responses in sensor events, real time operating systems