Title: Software Usability Course notes for CSI 5122 University of Ottawa
1Software UsabilityCourse notes for CSI 5122 -
University of Ottawa
- Section 1
- Course Outline and Background
- Timothy C. Lethbridge
- lttcl_at_site.uottawa.cagt
- http//www.site.uottawa.ca/tcl/csi5122
2Themes of the course
- Main theme How to develop software systems that
are highly usable - Sub-theme Adapting the software engineering
process to produce more usable software - Sub-theme Enhancing your skills at design and
evaluation of usability - The original proposal was that the course be
entitled Software Usability Engineering - Secondary theme How do do good research in
software engineering, HCI, and Usability - You will learn how to critically evaluate and
write papers - Subtheme How to design a good experiment
3This is not a pure HCI course
- It is an applied HCI course
- Ecourse in OCICS
- There is also a separate A/S course going on
- We will focus on engineering practicalities
- Less consideration of HCI theory
4Background required
- Just being a grad student in CS or SE should be
enough - All grad students will have had some undergrad
background in software engineering - No HCI course is assumed as background
- So far this is not required in undergrad CS
programs - Those who have an HCI course or other HCI
background will have only a small advantage - Come to class, but 20 of the material may be
review
5Learning about each other
- Who am I
- I have taught
- CS since 1985
- SE since 1990
- Usability at the undergrad/grad level since 1993
- Main current research topics
- Software engineering tools, including their
usability - Software Engineering Education
- Research projects with several companies over the
years - Worked at Nortel for 2 years in the 1980s
- Current co-ordinator of the Software Engineering
undergraduate program here
6Who are you
- Name?
- University?
- Program? (MSc, PhD, OCICS, OCIECE, Systems
Science, etc.) - Year of grad study?
- Why are you interested in this topic
7Topics for the course 1
- Not necessarily covered exactly in this sequence
- What is usability
- How it compares with other qualities
- Usability in the Software Engineering
- SE methods to improve usability
- The Users and Usability Maturity Model
- Economics of usability
- Justifying an investment in usability
- Measuring usability
- Setting realistic usability objectives
8Topics for the course 2
- Design for usability
- Task analysis
- User centred design
- Evaluation techniques
- Heuristic Evaluation
- Evaluating usability by analysis of videotapes of
users - Conducting formal experiments to validate
usability - Internationalization and localization
- Case studies in usability
9Pedagogical method
- I will lecture about half the time
- We will study user interfaces together and
perform evaluations live - You will read research papers and we will discuss
them together - Everybody will study all the papers
- One student will start the discussion by
summarizing the paper - You will do projects, and present the results
- Topics include, UI design, UI evaluation,
experiment, research
10Evaluation of your work Your grade will be
tailored, based on a plan you will prepare
- 20 Everybody writes a final exam unless you
already have A (gt 90) from the other components - In which case multiply the other components by
10/8 - Beyond this, your choice of some combination of
the following summing to gt 80 - a) 5 Leading discussion of a paper in class
- b) 5 Leading discussion of a systems UI in
class - c) 25 Research (literature review) paper (20
pages) - d) 25 Conducting a formal experiment with 5
users, and writing up - 20 pages - e) 15 Evaluating a user interface and formally
writing it up - 15 pages - f) 10 Presentation of results from c, d, and e
in class - 30-45 minutes, including discussion
11Evaluation
- Guidelines and details will be provided later
- We will learn
- What constitutes a good research paper
- How to run an experiment
- How to do evaluation
- How to do a presentation
- The weights for each component can be varied
- (e.g. gt 25 or lt 25 for a larger or smaller
experiment) - I will give you the weights when you propose to
me what you plan to do
12Evaluation Your work plan
- I must approve each work item before you start
- You can prepare a full or partial work plan at
any time - Add to it as your ideas become more detailed
- Send plans to me by email
- For a and b, every does one, but some of you may
do 2-3 - I will give you topics, and you can volunteer, or
I will assign them - For each of c, d, and e
- Email me a detailed outline of the proposed work
- I will give you feedback before you start
13Ideas for finding topics for research papers
- Browse the literature
- I will give you some techniques for this
- Pick a topic we have discussed in class.
- The following are a few examples
- Metrics
- Design techniques
- Usability guidelines
- Evaluation techniques
- I reserve the right to deny a topic if other
students have already picked it.
14Research paper basic criteria
- Must be written in the same style as if you are
submitting a paper to a journal or top conference - E.g. SIGCHI, ICSE
- We will be reading many papers in the course, so
you can learn from the style of those papers - But I will also point out some bad things to
avoid - You must have at least 10 peer-reviewed
references (from good conferences or journals) - You must analyse what you have read
- Just giving me lots of facts is no good
- At all costs, avoid plagiarism
15Evaluation project basic criteria
- The system can be open source, commercial, your
thesis topic or something from a work environment
(past or present) - It cannot be so confidential that students from
the class cannot see it - I will later on be bringing some ideas to class
16Deadlines You propose your own deadlines for
items c, d and e
- I will revise them for you if they are
unreasonable! - Clearly you have to finish your work before you
can present it. - I also dont want all presentations right at the
end. - I also dont want you to submit 2 major work
items in the same 3-week period - Once deadlines are set, you are held to them!
- 5 marks lost per day for each item
17Interim evaluation of all materials
- Optional Send me a draft of your work 6 or more
working days before it is due - I will skim it and give you some ideas for
improvement - Also optional Send me your presentation slides 3
working days before your presentation date. - Mandatory Send me a 3-4 page summary the design
of any experiment 4 working days before you plan
to start executing it
18What is usability One of many possible models
- System acceptability
- Social acceptability
- Practical acceptability
- Cost
- Compatibility
- Reliability
- Usefulness
- Utility (functions provided)
- Usability
- Easy to learn
- Efficient to use
- Easy to remember
- Few errors
- Pleasing
19Another model of usability
20Disciplines that contribute to the study and
improvement of usability - 1
- Cognitive psychology
- Capabilities and limitations of human senses and
thought processes - Ergonomics
- Hardware and software efficiency, safety and
reliability - Linguistics
- Syntax and semantics of commands
- Speech I/O
- Artificial intelligence
- Speech I/O
- Intelligent 'guessing' what the user wants to do
- Knowledge representations of users and tasks
21Contributing disciplines 2
- Sociology and social psychology
- Assisting people to work in groups with software
- Ensuring software works in different cultures
-
- Industrial design
- Aesthetics
- Storyboarding etc.
- Engineering
- Economic analysis, cost-benefit, alternatives
analysis - Standards-based approaches
- Integration with other qualities
22Dual-processor metaphor
- A good way to think about the user interface
23Key ways of improving usability
- Focus on understanding users
- Their motivations
- Their tasks
- Their problems
- Design using effective guidelines
- Evaluation
- Repeatedly, regularly and involving users
- Heuristic evaluation
- Observation
- Setting measurable objectives, and working
towards their achievement
24Five levels at which you can analyse usability
issues
- 1. Task Level
- What is to be done by the user
- 2. Conceptual Level
- User's model of the system
- 3. Interaction Style Level
- Command-driven, menu-driven, direct
manipulation, hypermedia - 4. Interaction Element Level
- Windows, dialogs, commands, menus
- 5. Physical Element Level
- Bitmaps, characters, data structures, callbacks
25At each of the five levels
- Design must be done
- Problems can occur
- We can think about the aspects of usability
- Learnability
- Efficiency
- Memorability
- Error handling
- Satisfaction
26Some psychological background Attention
27Attention - 2
- People can be readily distracted
- Provide cues about what to focus on
- People get lost in complexity
- Structure information so it is easy to browse
through - not too many items
- not too few items
- grouped logically
28Attention - 3
- People multitask
- Make the 'state' clear so users can jump
backwards and forwards - Some mental processes are automatic, or become so
- (contrasted with controlled processes)
- These processes are very hard to unlearn
- Watch out for conflicting or changing aspects of
the user interface
29Some psychological background Memory
30Memory - 2
- Short term memory can contain 72 'chunks'
- Avoid situations where users have to remember
more than this - Logically group things so users can chunk them
- The more meaningful, the more easily remembered
- (familiarity, imagery and consistency contribute
to meaningfulness) - Use effective names and icons (even) animated
ones - Combine icons with words
- Icons can be analogies, examples or abstract, but
not arbitrary - Watch out for cultural differences (e.g. washroom
symbols) - People can more easily recognize than recall
- Use menus, icons, quick lookup