CS 5150 1 CS 5150 Software Engineering Lecture 19 Reliability 1.
CS 5150 1 CS 5150 Software Engineering Lecture 11 Usability 1.
-
date post
19-Dec-2015 -
Category
Documents
-
view
238 -
download
1
Transcript of CS 5150 1 CS 5150 Software Engineering Lecture 11 Usability 1.
![Page 1: CS 5150 1 CS 5150 Software Engineering Lecture 11 Usability 1.](https://reader031.fdocuments.net/reader031/viewer/2022032005/56649d3b5503460f94a15eca/html5/thumbnails/1.jpg)
CS 5150 1
CS 5150 Software Engineering
Lecture 11
Usability 1
![Page 2: CS 5150 1 CS 5150 Software Engineering Lecture 11 Usability 1.](https://reader031.fdocuments.net/reader031/viewer/2022032005/56649d3b5503460f94a15eca/html5/thumbnails/2.jpg)
CS 5150 2
Course Administration
Test 2 this evening
Same format as the first test
Weekly reports
Alex Fix will read the reports and send you any messages about them.
Be sure that the report includes a brief summary of what was planned for last week, what was achieved, and what is planned for this week.
![Page 3: CS 5150 1 CS 5150 Software Engineering Lecture 11 Usability 1.](https://reader031.fdocuments.net/reader031/viewer/2022032005/56649d3b5503460f94a15eca/html5/thumbnails/3.jpg)
CS 5150 3
Planning for the Presentation
How will you use the time?
This is a presentation to the client, with the instructor and teaching assistant as a secondary audience. Possible topics:
• Overview of project and progress against plan.
• Presentation of assumptions, decisions.
• Summary of requirements in moderate detail.
• What has been learned since feasibility study? Changes in plans.
Allow 15 minutes for questions. Expect interruptions.
"This is our understanding of your requirements..."
![Page 4: CS 5150 1 CS 5150 Software Engineering Lecture 11 Usability 1.](https://reader031.fdocuments.net/reader031/viewer/2022032005/56649d3b5503460f94a15eca/html5/thumbnails/4.jpg)
CS 5150 4
Planning for the Presentation
Not everybody is a great presenter, but everybody can be well-prepared.
Have a rehearsal, check visual aids and demonstrations. Then change nothing.
Check out the equipment in the meeting room. What network will you use (if any). How will you connect a computer (if you do)? What about firewalls?
Will one person act as chair and call on other members of the team?
![Page 5: CS 5150 1 CS 5150 Software Engineering Lecture 11 Usability 1.](https://reader031.fdocuments.net/reader031/viewer/2022032005/56649d3b5503460f94a15eca/html5/thumbnails/5.jpg)
CS 5150 5
During the Presentation
• The presenter should stand. Other people should sit.
• Appoint a team member to take notes.
• The first presenter should introduce everybody.
• When asked a question:
-> If the presenter knows the answer, answer it.-> Or the presenter may ask another team member to answer.-> Otherwise make a note and reply later.
• Never interrupt your colleagues. If you have information to add, raise you hand and the presenter can decide whether to call on you.
![Page 6: CS 5150 1 CS 5150 Software Engineering Lecture 11 Usability 1.](https://reader031.fdocuments.net/reader031/viewer/2022032005/56649d3b5503460f94a15eca/html5/thumbnails/6.jpg)
CS 5150 6
The Importance of User Interface Design
Good support for users is more than a cosmetic flourish
• 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
A computer system is only as good as the interface it provides to its users
![Page 7: CS 5150 1 CS 5150 Software Engineering Lecture 11 Usability 1.](https://reader031.fdocuments.net/reader031/viewer/2022032005/56649d3b5503460f94a15eca/html5/thumbnails/7.jpg)
CS 5150 7
Usability: The Analyze/Design/Evaluate Loop
Evaluate
?Design
Build
Analyze requirements
The Information Science program and Communication Department offer a series of courses in Human Computer Interaction.
User testing
![Page 8: CS 5150 1 CS 5150 Software Engineering Lecture 11 Usability 1.](https://reader031.fdocuments.net/reader031/viewer/2022032005/56649d3b5503460f94a15eca/html5/thumbnails/8.jpg)
CS 5150 8
Requirements for User Interfaces
It is almost impossible to specify an interactive interface in a textual document
• Requirement documents benefit from sketches, comparison with existing systems, etc.
• Design documents 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 changethe requirements as the result of testing.
![Page 9: CS 5150 1 CS 5150 Software Engineering Lecture 11 Usability 1.](https://reader031.fdocuments.net/reader031/viewer/2022032005/56649d3b5503460f94a15eca/html5/thumbnails/9.jpg)
CS 5150 9
Tools for Usability Requirements and Evaluation
Initial Mock-up Prototype Production
Client's opinions
Competitive analysis
Expert opinion
Focus groups
Observing users
Measurements
![Page 10: CS 5150 1 CS 5150 Software Engineering Lecture 11 Usability 1.](https://reader031.fdocuments.net/reader031/viewer/2022032005/56649d3b5503460f94a15eca/html5/thumbnails/10.jpg)
CS 5150 10
Tools for Usability Requirements:
Mock-up
![Page 11: CS 5150 1 CS 5150 Software Engineering Lecture 11 Usability 1.](https://reader031.fdocuments.net/reader031/viewer/2022032005/56649d3b5503460f94a15eca/html5/thumbnails/11.jpg)
CS 5150 11
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
![Page 12: CS 5150 1 CS 5150 Software Engineering Lecture 11 Usability 1.](https://reader031.fdocuments.net/reader031/viewer/2022032005/56649d3b5503460f94a15eca/html5/thumbnails/12.jpg)
CS 5150 12
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 http://www.section508.gov/
![Page 13: CS 5150 1 CS 5150 Software Engineering Lecture 11 Usability 1.](https://reader031.fdocuments.net/reader031/viewer/2022032005/56649d3b5503460f94a15eca/html5/thumbnails/13.jpg)
CS 5150 13
Usability Requirements: Device-aware User Interfaces
Examples:
desk-top computer, fast network connectionlaptop computer, intermittent connectivityiPod, synchronizationsmart telephonedigital camera, camcorder
Device-aware user interfaces:
=> performance of device=> limited form factor (display, keyboard)=> connectivity
![Page 14: CS 5150 1 CS 5150 Software Engineering Lecture 11 Usability 1.](https://reader031.fdocuments.net/reader031/viewer/2022032005/56649d3b5503460f94a15eca/html5/thumbnails/14.jpg)
CS 5150 14
Usability: Non-Functional Requirements
Performance, Reliability, Scalability, Security…
Example: Response time0.1 sec – the user feels that the system is reacting instantaneously1 sec – the user will notice the delay, but his/her flow of thought stays uninterrupted10 sec – the limit for keeping the user's attention focused on the dialogue
![Page 15: CS 5150 1 CS 5150 Software Engineering Lecture 11 Usability 1.](https://reader031.fdocuments.net/reader031/viewer/2022032005/56649d3b5503460f94a15eca/html5/thumbnails/15.jpg)
CS 5150 15
Design from a System Viewpoint
interface design
functional design
data and metadata
computer systems and networks
mentalmodel
![Page 16: CS 5150 1 CS 5150 Software Engineering Lecture 11 Usability 1.](https://reader031.fdocuments.net/reader031/viewer/2022032005/56649d3b5503460f94a15eca/html5/thumbnails/16.jpg)
CS 5150 16
Mental Model
What a person thinks is true about a system, not necessarily what is actually true
• Similar in structure to the system that is represented
• Allows a person to predict the results of his actions
• Simpler than the represented system. A mental model includes only enough information to allow accurate predictions (i.e. no data structures)
Also called conceptual model
![Page 17: CS 5150 1 CS 5150 Software Engineering Lecture 11 Usability 1.](https://reader031.fdocuments.net/reader031/viewer/2022032005/56649d3b5503460f94a15eca/html5/thumbnails/17.jpg)
CS 5150 17
Examples of Mental Model
The mental (conceptual) model is the user's internal model of what the system provides:
• The desk top metaphor -- files and folders
• The Web model -- one vast collection of pages with hyperlinks
![Page 18: CS 5150 1 CS 5150 Software Engineering Lecture 11 Usability 1.](https://reader031.fdocuments.net/reader031/viewer/2022032005/56649d3b5503460f94a15eca/html5/thumbnails/18.jpg)
CS 5150 18
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 Acrobat.
• Number of snippets per page in Web search.
![Page 19: CS 5150 1 CS 5150 Software Engineering Lecture 11 Usability 1.](https://reader031.fdocuments.net/reader031/viewer/2022032005/56649d3b5503460f94a15eca/html5/thumbnails/19.jpg)
CS 5150 19
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
![Page 20: CS 5150 1 CS 5150 Software Engineering Lecture 11 Usability 1.](https://reader031.fdocuments.net/reader031/viewer/2022032005/56649d3b5503460f94a15eca/html5/thumbnails/20.jpg)
CS 5150 20
Functional Design
The functional design, determines the functions that are offered to the user
• Selection of parts of an object
• Searching a list or sorting the results
• Help information
• Manipulation of objects on a screen
• Pan or zoom
There may be many user interface choices for the same function, e.g., Macintosh v. Windows desktop
![Page 21: CS 5150 1 CS 5150 Software Engineering Lecture 11 Usability 1.](https://reader031.fdocuments.net/reader031/viewer/2022032005/56649d3b5503460f94a15eca/html5/thumbnails/21.jpg)
CS 5150 21
Data and Metadata
Structural data and metadata stored by the computer system enable the functions and the interface
• 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)
![Page 22: CS 5150 1 CS 5150 Software Engineering Lecture 11 Usability 1.](https://reader031.fdocuments.net/reader031/viewer/2022032005/56649d3b5503460f94a15eca/html5/thumbnails/22.jpg)
CS 5150 22
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 the Mercury page turner
• Quality of Service for real time information
![Page 23: CS 5150 1 CS 5150 Software Engineering Lecture 11 Usability 1.](https://reader031.fdocuments.net/reader031/viewer/2022032005/56649d3b5503460f94a15eca/html5/thumbnails/23.jpg)
CS 5150 23
Command Line Interfaces andText-only Menus
Command line interfaces and text-only menus had become almost entirely 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)
![Page 24: CS 5150 1 CS 5150 Software Engineering Lecture 11 Usability 1.](https://reader031.fdocuments.net/reader031/viewer/2022032005/56649d3b5503460f94a15eca/html5/thumbnails/24.jpg)
CS 5150 24
Design: Command Line Interfaces
SEARCH I NSPEC Dat abase- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Type keywor ds and pr ess RETURN - - orent er a command
Def aul t i s ADJ : aci d f r ee- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Set #3: aci d adj f r e 0 r ecor ds I NSPEC Dat abase
Set #4: aci d adj f r ee 5 r ecor ds I NSPEC Dat abase
Set #5: aci d and paper 448 r ecor ds I NSPEC Dat abase
Set #6: deaci di f i cat i on 4 r ecor ds I NSPEC Dat abase- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
![Page 25: CS 5150 1 CS 5150 Software Engineering Lecture 11 Usability 1.](https://reader031.fdocuments.net/reader031/viewer/2022032005/56649d3b5503460f94a15eca/html5/thumbnails/25.jpg)
CS 5150 25
Design: Command Line Interfaces
User interacts with computer by typing commands
• 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
![Page 26: CS 5150 1 CS 5150 Software Engineering Lecture 11 Usability 1.](https://reader031.fdocuments.net/reader031/viewer/2022032005/56649d3b5503460f94a15eca/html5/thumbnails/26.jpg)
CS 5150 26
Design:Graphical Interfaces and Direct Interaction
User interacts with computer by manipulating objects on screen
• Can be intuitive and easy to learn
• Users get immediate feedback
• Not suitable for some complex interactions
• Does not require typing skills
• Straightforward for casual users, may be slow for skilled users
• Icons can be language-independent
• Difficult to build scripts
• Only suitable for human users
![Page 27: CS 5150 1 CS 5150 Software Engineering Lecture 11 Usability 1.](https://reader031.fdocuments.net/reader031/viewer/2022032005/56649d3b5503460f94a15eca/html5/thumbnails/27.jpg)
CS 5150 27
Design for Direct Manipulation
metaphors and mental models: Conceptual models, metaphors, icons, but there may not be an intuitive model
navigation rules: How to move among data functions, activities and roles in a large space
conventions: Familiar aspects that do not need extra training.
=> scroll bars, buttons, help systems, sliders
=> good for users, good for designers
look: characteristics of the appearance that convey information
feel: interaction techniques that provide an appealing experience
![Page 28: CS 5150 1 CS 5150 Software Engineering Lecture 11 Usability 1.](https://reader031.fdocuments.net/reader031/viewer/2022032005/56649d3b5503460f94a15eca/html5/thumbnails/28.jpg)
CS 5150 28
Design for Direct Manipulation: Menus
• Easy for users to learn and use• Certain categories of error are avoided• Enables context-sensitive help
Major difficulty is structure of large choices
• Scrolling menus (e.g., states of USA)• Hierarchical• Associated control panels• Menus plus command line
Users prefer broad and shallow to deep menu systems
![Page 29: CS 5150 1 CS 5150 Software Engineering Lecture 11 Usability 1.](https://reader031.fdocuments.net/reader031/viewer/2022032005/56649d3b5503460f94a15eca/html5/thumbnails/29.jpg)
CS 5150 29
Help System Design
Help system design is difficult
• Must prototype with mixed users
• Categories of help:
=> Overview and general information=> Specific or context information=> Tutorials (general)=> Cook books and wizards=> Emergency ("I am in trouble ...")
• Must have many routes to same information
Never blame the user!
![Page 30: CS 5150 1 CS 5150 Software Engineering Lecture 11 Usability 1.](https://reader031.fdocuments.net/reader031/viewer/2022032005/56649d3b5503460f94a15eca/html5/thumbnails/30.jpg)
CS 5150 30
Information Presentation
Simple is often better than fancy
• Text
precise, unambiguous
fast to compute and transmit
• Graphical interface
simple to comprehend / learn
uses of color
variations show different cases
![Page 31: CS 5150 1 CS 5150 Software Engineering Lecture 11 Usability 1.](https://reader031.fdocuments.net/reader031/viewer/2022032005/56649d3b5503460f94a15eca/html5/thumbnails/31.jpg)
CS 5150 31
Separation of Presentation from Content
Information to be displayed
Presentation software Display
Presentation software
Display
Acrobat
html
Firefox