CS415 Human Computer...

Preview:

Citation preview

October 4, 2015 Sam Siewert

CS415 Human Computer Interaction

Lecture 7 – Implementation and Testing Tools for HCIs

Coming Up… Quiz on Wednesday for Part II – Chapters 5,6,7,8,9 Review Next Week on Monday, 10/12 Exam on Wed and Friday, 10/14, 16 – Chapters 1-9 – Knowledge and Concepts on Wednesday – True/False, Multiple-

Choice, Short Answer – Problem Solving on Friday – Analysis, Design, Implementation,

Test

Sam Siewert 2

Window Managers Context for all Applications – Windows 7,8, 10 – Linux / Unix X-Windows

Ubuntu Red Hat (Centos) Fedora

– Mac OS-X – Android OS – iOS

Sam Siewert 3

Client/Server Window Managers Window Managers like X-Windows are Client/Server – Applications are

Clients of the Window Manager

– The Server is the Window Manager

Sam Siewert 4

X-Window System C programming Low-Level to Widget Level GUI Code Generators X Series – O’Reilly Douglas Young Book X Protocol Xlib X toolkit X Widet Set (Motif, Athena)

Sam Siewert 5

Apple Macintosh Windowing System Macintosh and Mac SE (1984-89) – Graphics Toolbox (ROM code for Drawing and Widgets) – Common Look and Feel – Simplified Programming for Interactive GUI/WIMP Applications

Sam Siewert 6

Human-Computer Interaction, 3rd Edition, by Alan Dix, Janet Finlay, Gregory Abowd, Russell Beale

X-Windows

Sam Siewert 7

Windowing System Widget Sets Windows OS-X Unix / Linux

Sam Siewert 8 https://en.wikipedia.org/wiki/List_of_widget_toolkits

Widget Application Updates Interactive Design Event Handlers Event Masks Register Call-back Update State

Sam Siewert 10

WIMP Interaction Toolkit Interaction Widgets and Gadgets Simplify Development

Sam Siewert 11

Class Hierarchy OO is Helpful, but Not Required X-Windows is Object-based C code

Sam Siewert 12

True OO Interactive Systems Development

Smalltalk and Model-View-Controller Interactive System Programming – Xerox PARC Early 1980’s

Sam Siewert 13

Modern OO Interactive System Development

Java Swing, AWT, NetBeans Python, PyTk Qt Creator (C++) Visual Studio WinForm (C#) X-Windows (Object-based, but not OOP) Many more … Java, Ruby, Objective-C, C++, C#, Python Sam Siewert 14

Interactive System Evaluation Testing – Traditional SQA Usability However is a Specialized form of Testing and Evaluation Field Tests with Users (Human side of HCI)

Sam Siewert 15

Cognitive Walkthrough Similar to Code Walkthrough, but with Focus on “how easy a system is to use” – Cognitive Load – Efficiency and Ability to Complete Tasks (User Community)

Normally requires a Mock-up or Prototype

Sam Siewert 16

Evaluation Method Answer 4 Questions for Each Step in Action Sequence (Task specified as a Goal)

Sam Siewert 17

1) Effect of Action Matches User Goal?

2) Action Visibility / Availability?

3) Recognition of Actions for Goals?

4) Visible Easy to Understand Feedback for Goal Attainment?

How to Measure? - Heuristic Nielsen’s Ten Heuristics

1. Visibility of Status 2. System / Real-World

Match 3. User Control / Freedom 4. Consistency / Standards 5. Error Prevention 6. Recognition over Recall 7. Efficiency 8. Aesthetic – Less is More 9. Design for Error 10. Built-in Help

Sam Siewert 18

Empirical Methods of Evaluation Participants – Real Users, Sample Size, Small and in Depth vs. Large and Shallow Variables – Those that are Changed (independent) and those that are Measured (dependent) – E.g. Complete Task with WIMP GUI Widget #1 – Complete Same Task with CLI – Task Time/Efficiency and Correct Outcome Measured – CLI vs WIMP GUI Widget - Changed

Hypothesis – Prediction of Outcome (to Test) – If Differences in Measure can’t be Explained by Chance (Null

Hypothesis is Disproven) – Outcomes Compared with Level of Significance (Sample Size,

Mean, Standard Deviation, Reliability, Confidence, T-test)

Sam Siewert 19

Empirical Methods of Evaluation Experimental Design – Between-subjects and within-subjects – Between Subjects is Ideal, but Costly (need more subjects) – Within Subjects is lower Cost, but Subjects learn, develop a bias,

and results can be impacted

Sam Siewert 20

General Usability – Statistical Measures

Looking to Server the Majority of Users - Significance E.g. Can Most or Majority of Users Efficiently Complete a Test Task?

Sam Siewert 21

Statistics – Mapping to HCI Independent Variable (what is changed in each experiment) Dependent Variable (not changed – e.g. goal or task) Analysis Technique (math to determine significance of results and model)

Sam Siewert 22

Human-Computer Interaction, 3rd Edition, by Alan Dix, Janet Finlay, Gregory Abowd, Russell Beale

Icon Experiment from Book

Sam Siewert 23

Evaluation through Participation Observer and Track User While Experiment is Run – In addition to feedback from user – In addition to other metrics (time, correctness)

Sam Siewert 24

Human-Computer Interaction, 3rd Edition, by Alan Dix, Janet Finlay, Gregory Abowd, Russell Beale

An Automobile-Integrated System for Assessing and Reacting to Driver Cognitive Load, Pompei, Sharon, Buckley, Kemp, http://www.cs.cmu.edu/~dod/papers/pompei02.pdf

Color Coding Example from Book

Sam Siewert 25

Review Practice Quiz Today [or Next Monday if we Ran out of Time] Scan, Question [Should Already by Done] Chapters 1-9 Re-read, Outline and Review Memorize Fundamental Rules, Guidelines, Principles

Sam Siewert 26

Recommended