CS 5150 1 CS 5150 Software Engineering Lecture 11 Usability 1.

Slides:



Advertisements
Similar presentations
Operating Systems. Operating System (OS) The software that manages the sharing of the resources of a computer. Examples of Operating Systems ◦ Windows.
Advertisements

1 CS 501 Spring 2002 CS 501: Software Engineering Lecture 11 Designing for Usability I.
1 CS 502: Computing Methods for Digital Libraries Lecture 22 Web browsers.
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.
CS CS 5150 Software Engineering Lecture 11 Usability 1.
CS CS 5150 Software Engineering Lecture 12 Usability 2.
1 CS 501 Spring 2006 CS 501: Software Engineering Lecture 10 Requirements 4.
7M701 1 User Interface Design Sommerville, Ian (2001) Software Engineering, 6 th edition: Chapter 15
1 / 31 CS 425/625 Software Engineering User Interface Design Based on Chapter 15 of the textbook [SE-6] Ian Sommerville, Software Engineering, 6 th Ed.,
CS CS 5150 Software Engineering Lecture 12 Usability 2.
1 CS 501 Spring 2007 CS 501: Software Engineering Lecture 10 Requirements 4.
Chapter 2: Understanding and conceptualizing interaction
CS CS 5150 Software Engineering Lecture 11 Usability 1.
1 CS 501 Spring 2007 CS 501: Software Engineering Lectures 11 & 12 Usability.
Principles and Methods
1 CS 501 Spring 2005 CS 501: Software Engineering Lecture 11 Usability 1.
User interface design Designing effective interfaces for software systems Objectives To suggest some general design principles for user interface design.
1 CS 501 Spring 2006 CS 501: Software Engineering Lectures 11 & 12 Usability.
CS 501: Software Engineering Fall 2000 Lecture 17 Design for Usability I.
1 User Interface Design CIS 375 Bruce R. Maxim UM-Dearborn.
INTRODUCTION. Concepts HCI, CHI Usability User-centered Design (UCD) An approach to design (software, Web, other) that involves the user Interaction Design.
SOFTWARE.
1. Learning Outcomes At the end of this lecture, you should be able to: –Define the term “Usability Engineering” –Describe the various steps involved.
Computer for Health Sciences
Systems Analysis and Design in a Changing World, 6th Edition
1 ISE 412 Human-Computer Interaction Design process Task and User Characteristics Guidelines Evaluation.
1 SWE 513: Software Engineering Usability II. 2 Usability and Cost Good usability may be expensive in hardware or special software development User interface.
1 CS 430: Information Discovery Lecture 15 Usability 2.
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.
The ID process Identifying needs and establishing requirements Developing alternative designs that meet those requirements Building interactive versions.
Q Q Human Computer Interaction – Part 1© 2005 Mohammed Alabdulkareem Human Computer Interaction - 1 Dr. Mohammed Alabdulkareem
Computing and the Web Operating Systems. Overview n What is an Operating System n Booting the Computer n User Interfaces n Files and File Management n.
CS 5150 Software Engineering Lecture 11 Usability 2.
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 7: Focusing on Users and Their Tasks.
Software Engineering – University of Tampere, CS DepartmentJyrki Nummenmaa REQUIREMENT SPECIFICATION Today: Requirements Specification.
XP New Perspectives on Windows XP Tutorial 1 Exploring the Basics.
MULTIMEDIA DEFINITION OF MULTIMEDIA
Key Applications Module Lesson 21 — Access Essentials
1 CS 501 Spring 2002 CS 501: Software Engineering Lecture 12 Designing for Usability II.
1 CS430: Information Discovery Lecture 18 Usability 3.
Software Architecture
© Paradigm Publishing Inc. 4-1 OPERATING SYSTEMS.
INFO 355Week #71 Systems Analysis II User and system interface design INFO 355 Glenn Booker.
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,
Software Engineering User Interface Design Slide 1 User Interface Design.
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 CS 430: Information Discovery Lecture 19 User Interfaces.
CS 5150 Software Engineering Lecture 9 Usability 1.
1 CS 501 Spring 2008 CS 501: Software Engineering Lectures 11 & 12 Usability.
CS CS 5150 Software Engineering Lecture 12 Usability 2.
CS 360 Lecture 13.  Human Computer Interaction (HCI) is the academic discipline that studies how people interact with computers.  More HCI details during.
1 CS 430: Information Retrieval Lecture 13 Usability 1 Guest Lecture: Gilly Leshed.
INFORMATION SYSTEM – SOFTWARE TOPIC: GRAPHICAL USER INTERFACE.
1 CS 430: Information Discovery Lecture 14 Usability I.
Human-Computer Interaction Design process Task and User Characteristics Guidelines Evaluation ISE
1 CS 430 / INFO 430 Information Retrieval Lecture 25 Usability 3.
1 CS 501 Spring 2003 CS 501: Software Engineering Lecture 13 Usability 1.
1 CS 501 Spring 2005 CS 501: Software Engineering Lecture 12 Usability 2.
Software Interfaces. Learning Objectives Describe the characteristics of different types of user interfaces. Discuss the types of user interfaces which.
IT323 - Software Engineering 2 1 Tutorial 3.  Suggest ways in which the user interface to an e-commerce system such as an online stores might be adapted.
Systems and User Interface Software. Types of Operating System  Single User  Multi User  Multi-tasking  Batch Processing  Interactive  Real Time.
Usability and User Interfaces CS 560. Human Computer Interaction Human Computer Interaction (HCI) is the academic and industrial discipline that studies.
6. (supplemental) User Interface Design. User Interface Design System users often judge a system by its interface rather than its functionality A poorly.
CS 501: Software Engineering Fall 1999 Lecture 23 Design for Usability I.
Computer Concept What is a computer?
Usability and user Interfaces
CS 501: Software Engineering
Presentation transcript:

CS CS 5150 Software Engineering Lecture 11 Usability 1

CS Course Administration Test 2 this evening Same format as the first test

CS The Importance of User Interface Design A computer system is only as good as the interface it provides to its users Elegant design, appropriate functionality, & responsive system: => a measurable difference to their effectiveness A system that is hard to use: => users may fail to find important results, or mis-interpret what they do find => user may give up in disgust Good support for users is more than a cosmetic flourish

CS Usability: The Analyze/Design/Build/Evaluate Loop Evaluate ? Design Build Analyze requirements The Information Science and Communication departments offer a series of courses in Human Computer Interaction. User testing

CS Processes for User Interfaces It is almost impossible to specify an interactive interface in a textual document Requirement specifications benefit from sketches, comparison with existing systems, etc. Design specifications should definitely include graphical elements and benefit from a mock-up or other form of prototype. Schedules should include user testing and time to make changes. User interfaces must be tested with users. Expect to change the requirements as the result of testing.

CS Tools for Usability Requirements and Evaluation Initial Mock-upPrototypeProduction Client's opinions    Competitive analysis  Expert opinion    Focus groups   Observing users    Measurements  

CS Tools for Usability Requirements: Mock-up

CS Tools for Usability Requirements: Focus Group A focus group is a group interview Interviewer Potential users Typically 5 to 12 Similar characteristics (e.g., same viewpoint) Structured set of questions May show mock-ups Group discussions Repeated with contrasting user groups

CS Usability: Accessibility Requirements Requirements about accessibility (e.g., support for users with disabilities) are most likely to arise in the user interface. You may have a legal requirement to support people with disabilities. Example of requirements specification: The system must comply with Section 508 of the US Rehabilitation Act. See

CS Design from a System Viewpoint interface design interface functions data and metadata computer systems and networks mental model Usability is more than interface design

CS Examples of Mental Model The mental model is the user's internal model of what the system provides: The desk top metaphor -- files and folders The web search model -- one vast collection of pages, which are searched on request Also called conceptual model

CS Mental Model A mental model is what a user thinks is true about a system, not necessarily what is actually true Model should be similar in structure to the system that is represented Model allows a person to predict the results of his actions Model is simpler than the represented system. A mental model includes only enough information to allow accurate predictions (e.g., no data structures)

CS Interface Design The interface design is the appearance on the screen and the actual manipulation by the user Fonts, colors, logos, key board controls, menus, buttons Mouse control or keyboard control Conventions (e.g., "back", "help") Examples: Screen space utilization in Adobe Reader. Number of snippets per page in Web search.

CS Principles of Interface Design Interface design is partly an art, but there are general principles: Consistency -- in appearance, controls, and function. Feedback -- what is the computer system doing? why does the user see certain results? Users should be able to interrupt or reverse actions Error handling should be simple and easy to comprehend Skilled users should be offered shortcuts; beginners should have simple, well-defined options The user should feel in control

CS Interface Functions The interface functions determine the actions that are available to the user: Select part of an object Search a list or sort the results View help information Manipulate objects on a screen Pan or zoom There may be alternative user interface designs for the same interface functions, e.g., Macintosh v. Windows desktop have most of the same interface functions, but different designs.

CS Data and Metadata Data and metadata stored by the computer system enable the interface functions and the interface design. Effectiveness of searching depends on the type and quality of data that is indexed (free-text, controlled vocabulary, etc.) The desktop metaphor has the concept of associating a file with an application. This requires a file type to be stored with each file: -- extension to filename (Windows and Unix) -- resource fork (Macintosh) Inexperienced clients sometimes ask for interface functions that require additional data or metadata.

CS Computer Systems and Networks The performance, reliability and predictability of computer systems and networks is crucial to usability Examples Instantaneous response time for mouse tracking and echo of key stroke Pipelined algorithm for a page turner Quality of service for real time information, e.g., audio

CS Computer Systems and Networks: Requirements Performance, Reliability, Scalability, Security… Example: Response time 0.1 sec – the user feels that the system is reacting instantaneously 1 sec – the user will notice the delay, but his/her flow of thought stays uninterrupted 10 sec – the limit for keeping the user's attention focused on the dialogue

CS Computer Systems and Networks: Device-Aware Interfaces Interfaces must take into account physical constraints of computers and networks: How does a desk-top computer differ from a laptop? What is special about a smart phone? How do you make use of a touch-sensitive screen? What works well with a digital camera? Constraints that the interfaces must allow for: => performance of device (e.g., fast or slow graphics) => limited form factor (e.g., small display, keyboard) => connectivity (e.g., intermittent)

CS Interface Design: Command Line Interfaces User interacts with computer by typing commands (e.g., Linux shell script) Allows complex instructions to be given to computer Facilitates formal methods of specification & implementation Skilled users can input commands quickly Unless very simple, requires learning or training Can be adapted for people with disabilities Can be multi-lingual Suitable for scripting / non-human clients

CS Interface Design: Command Line Interfaces

CS Command Line Interfaces and Text-only Menus Command line interfaces and text-only menus had become largely replaced by graphical interfaces, but are returning: Devices with small form factor or other special features, e.g. cell phone, PDA, etc. Interfaces for simple tasks with general users, e.g. automated bank teller (ATM)