Upgrade to Pro — share decks privately, control downloads, hide ads and more …

CSC486 Lecture 14

CSC486 Lecture 14

Human-Computer Interaction
Final Review
(202503)

Javier Gonzalez-Sanchez

March 11, 2025
Tweet

More Decks by Javier Gonzalez-Sanchez

Other Decks in Programming

Transcript

  1. Dr. Javier Gonzalez-Sanchez [email protected] www.javiergs.info o ffi ce: 14 -227

    CSC 486 Human-Computer Interaction Lecture 14. Final Review
  2. Announcements 2 * Final Exam March 13 (Lecture Time) *

    Final Project Due by March 20 (no extensions)
  3. Submission a ) Fin a l Version of your Source

    Code - submit your J a v a f iles b) D a t a set - collected or simul a ted c) short p a per - (4 p a ges) d) Final presentation video – Sh a re a link to your recorded present a tion. 7
  4. Content • Title – A concise a nd descriptive title

    th a t re f lects the m a in topic of the p a per. • Abstr a ct (Option a l) – A brief summ a ry (usu a lly 150–250 words) outlining the p a per’s objective, key f indings, a nd conclusions. • Introduction (1) – Introduces the m a in topic, a nd st a tes the rese a rch question or problem. It should highlight the project purpose a nd signi f ic a nce. WHAT you did a nd WHY • B a ckground (1) – Summ a rizes relev a nt context: BCI or Eye Tr a cking, or XR, or Robotics, even Docker. Things th a t a lre a dy exist a nd you used • Methodology – Brie f ly expl a ins HOW d a t a w a s collected or a n a lyzed or HOW you implemented a n a pplic a tion th a t a d a pt in re a l-time • Discussion/An a lysis (1) – Presents a rguments, evidence, or insights a bout wh a t work a nd wh a t did not. Showc a se your a chievements a nd do not be a fr a id to disclose f a ilures. • Conclusion – Summ a rizes the m a in points, reinforces key f indings, a nd m a y suggest future rese a rch or a pplic a tions. • References (1) – Lists sources cited in the p a per, following the required cit a tion form a t (e.g., APA, IEEE, or MLA). 10
  5. First Act – The product for the Customer Demo of

    your project. Show your project running. :: notes :: you c a n, a ddition a lly, t a lk (brie f ly) a bout your extr a items or missing items. 12
  6. Disclaimer for Final Exam Review The f in a l

    ex a m is comprehensive, encomp a ssing a ll course m a teri a ls. This review covers only a subset of topics. Import a nt: • Ensure you review a ll lecture slides a nd course m a teri a ls. • The following slides include ex a mples rel a ted to selected topics. • This is NOT a n exh a ustive list of ex a m topics. 18
  7. Concepts • Inter a ction • F a ctors (A

    ff ective + Cognitive) • Input • Output • Sensing • Perception • UX 20
  8. Sensing • Br a in • F a ci a

    l Gestures • Eyes • He a rt R a te • Skin Conduct a nce • Body Postures 21 😀
  9. Questionary 1. Wh a t is a Hum a n?

    2. Wh a t is a Computer? 3. Wh a t is Inter a ction? 4. Wh a t m a kes a “good” inter a ction? 5. Wh a t m a kes a “b a d” inter a ction? 6. Wh a t is aff ect (emotion, mood)? 7. Wh a t is Ple a sure? 8. Wh a t is Arous a l? 9. Wh a t is Domin a nce? 10.Wh a t we c a lled a n “input”? 22
  10. Questionary 11. Wh a t we c a lled “processing

    or thinking”? 12.Wh a t we c a lled a n “output”? 13.Wh a t is us a bility? 14.Wh a t is us a bility engineering? 15.Wh a t is “user friendly”? 16.Wh a t is a cognitive f a ctor? 17. Wh a t is a n interf a ce (user interf a ce)? 18.Provide a n ex a mple of a “good” user interf a ce in a softw a re a pplic a tion 19.Provide a n ex a mple of a “b a d” user interf a ce in a softw a re a pplic a tion 23
  11. Data File • First, time information is represented by the

    attribute time. • The device information includes metrics such as batteryLevel, batteryPercent, wirelessSignal, and sensorsQuality. •For facial actions, attributes like actionEye, actionUpperFace, powerUpperFace, actionLowerFace, and powerLowerFace capture various facial expressions and their intensities. •The emotional metrics encompass a range of states, including engagement, excitement, longTermExcitement, stress, relaxation, interest, and focus. In addition, boolean fl ags, such as isENG, isEXC, isSTR, isREL, isINT, and isFOC, indicate whether speci fi c emotional states are active. •The Pleasure, Arousal, and Dominance (PAD) model is represented through the attributes Pleasure, Arousal, and Dominance. Finally, ignore SAM. 28
  12. MQTT Data { “leftEye”:{"x":-0.4216550588607788,"y":0.8787311911582947,"z":-0.00456150621175766}, “rightEye":{"x":-0.3755757808685303,"y":0.8756504058837891,"z":0.04438880831003189}, “leftEyeGaze":{"x":0.050619591027498248,"y":-0.0809454470872879,"z":0.9954323172569275}, “rightEyeGaze":{"x":0.050619591027498248,"y":-0.0809454470872879,"z":0.9954323172569275}, “eyeFixationPoint":{"x":0.11886614561080933,"y":-0.13097167015075684,"z":2.974684476852417}, “leftHand”:{"x":0.0,"y":0.0,"z":0.0}, "rightHand":{"x":0.0,"y":0.0,"z":0.0},

    “cube":{"x":-0.5114021897315979,"y":1.5798050165176392,"z":0.024640535935759546}, “head":{"x":-0.7167978286743164,"y":0.8024232983589172,"z":0.17002606391906739}, “torso":{"x":-0.6404322385787964,"y":0.5270168781280518,"z":0.035430606454610828}, “leftFoot":{"x":-0.8061407804489136,"y":-0.16039752960205079,"z":0.25339341163635256}, “rightFoot":{"x":-0.5946151614189148,"y":-0.15849697589874268,"z":0.33175137639045718}, “hips":{"x":-0.6485552787780762,"y":0.33673161268234255,"z":0.0795457512140274}, “leftArmUp":{"x":-0.8079588413238525,"y":0.7046946287155151,"z":0.0354776531457901}, “lefArmLow":{"x":-0.6874216794967651,"y":0.5375530123710632,"z":-0.05098365247249603}, “rightArmUp":{"x":-0.5440698266029358,"y":0.7054383754730225,"z":0.16330549120903016}, “rightArmLow":{"x":-0.6227755546569824,"y":0.5135259032249451,"z":0.2464602291584015}, “leftWrist":{"x":-0.5440698266029358,"y":0.7054383754730225,"z":0.16330549120903016}, “rightWrist":{"x":-0.6227755546569824,"y":0.5135259032249451,"z":0.2464602291584015} } 33
  13. Eclipse Paho for Java Wh a t is Eclipse P

    a ho? • A set of MQTT client libr a ries developed by the Eclipse Found a tion. • It supports multiple l a ngu a ges, such a s J a v a , Python, J a v a Script, etc. J a v a Dependency (M a ven) <dependency> <groupId>org.eclipse.paho</groupId> <artifactId>org.eclipse.paho.client.mqttv3</artifactId> <version>1.2.5</version> </dependency> 36
  14. Usability Heuristics 40 Jakob’s Ten Usability Heuristics www.nngroup.com/articles/ten-usability-heuristics/ Designs should

    keep users informed about what is going on, through appropriate, timely feedback. Visibility of System Status 1 The design should speak the users' language. Use words, phrases, and concepts familiar to the user, rather than internal jargon. Match between System and the Real World 2 Users often perform actions by mistake. They need a clearly marked "emergency exit" to leave the unwanted state. User Control and Freedom 3 Users should not have to wonder whether different words, situations, or actions mean the same thing. Follow platform conventions. Consistency and Standards 4 Good error messages are important, but the best designs prevent problems from occurring in the first place. Error Prevention 5 Minimize the user's memory load by making elements, actions, and options visible. Avoid making users remember information. Recognition Rather Than Recall 6 Shortcuts — hidden from novice users — may speed up the interaction for the expert user. Flexibility and Efficiency of Use 7 Interfaces should not contain information which is irrelevant. Every extra unit of information in an interface competes with the relevant units of information. Aesthetic and Minimalist Design 8 It’s best if the design doesn’t need any additional explanation. However, it may be necessary to provide documentation to help users understand how to complete their tasks. Help and Documentation 10 Error messages should be expressed in plain language (no error codes), precisely indicate the problem, and constructively suggest a solution. Recognize, Diagnose, and Recover from Errors 9 Nielsen Norman Group
  15. Factors 1. S a lience: Color, Dimension, Orient a tion,

    Size 2. Motion: onset, looming, unpredict a ble, depicted 2. Motion: c a p a city, body, n a tur a l, 3. Agents: f a ces, bodies, a nim a ls 4. Sp a ti a l Cues: Eye g a ze, pointing, a rrows 4. Sp a ti a l Cues: direction a l words 5. High Arous a l 6. Unexpectedness: Novelty 7. Self-relev a nce: your n a me, your f a ce, 8. Go a l-relev a nt: no-go a l 8. Go a l-relev a nt: go a l-directed 42
  16. De f inition • A cognitive f a ctor is

    s ment a l a bility th a t in f luences how individu a ls process, a n a lyze, use inform a tion to inter a ct with their environment. • Underst a nding perception (interpret), a ttention (focus), memory, cognitive lo a d (e ff ort), a nd problem-solving (use) helps designers cre a te intuitive, user-friendly systems. • Systems should be us a ble for everyone, including those with visu a l, a uditory, motor, or cognitive imp a irments. 44
  17. De f inition How users ret a in a nd

    rec a ll inform a tion while inter a cting with a system • Short-term memory (Working Memory): Tempor a ry stor a ge of inform a tion, such a s remembering a menu p a th or a recently entered p a ssword. • Long-term memory: Retention of le a rned inform a tion, like interf a ce l a youts a nd frequently used comm a nds. Interf a ces should minimize reli a nce on memory. E.g. by using cle a r n a vig a tion, tooltips, a nd recogniz a ble icons. 45
  18. Attention Attention determines how users focus on t a sks

    a nd f ilter out distr a ctions. It includes: • Selective a ttention: Focusing on relev a nt inform a tion while ignoring b a ckground noise (e.g., distinguishing key a lerts in a cluttered d a shbo a rd). • Divided a ttention: M a n a ging multiple t a sks simult a neously (e.g., using multiple a pps on a split-screen). • Sust a ined a ttention: M a int a ining focus over a long period (e.g., re a ding a long document). Well-designed interf a ces should guide a ttention. 46
  19. Perception Perception refers to how users interpret a nd m

    a ke sense of sensory input (e.g., visu a ls, sounds, touch). It includes: • Visu a l perception: Recognizing UI elements, text legibility, a nd color contr a st. • Auditory perception: Underst a nding noti f ic a tions a nd voice comm a nds. • H a ptic perception: Inter a cting through touch feedb a ck (e.g., vibr a tion responses). UI elements a re perceptible, e a sy to distinguish, a nd do not overwhelm users with excessive stimuli. 47
  20. Problem Solving Problem-solving in HCI involves users f inding solutions

    within a n interf a ce, such a s troubleshooting errors, n a vig a ting complex softw a re, or completing t a sks with minim a l instruction. Interf a ces should support intuitive design, o ff er guid a nce, a nd provide cle a r feedb a ck when users encounter obst a cles. 48
  21. Decision-Making Decision-m a king refers to how users choose between

    multiple options b a sed on a v a il a ble inform a tion, preferences, a nd p a st experiences. Ex a mple in HCI: Selecting a product in a n e-commerce site, choosing priv a cy settings, or responding to system a lerts. Interf a ces should provide cle a r, concise inform a tion to a id decision-m a king, minimize decision f a tigue, a nd prevent user errors with undo options a nd con f irm a tions. 49
  22. Embodiment • Inter a ction th a t involves the

    whole body a s a medium for eng a gement with digit a l environments. • Theoretic a l b a sis: physic a l sp a ce, a nd soci a l context in sh a ping hum a n inter a ctions • Immersive Computing, (VR/AR) - users feel fully present • A ff ective Computing - Physical actions c a n gener a te emotion a l st a tes; f a ci a l expressions can enh a nce soci a l a nd emotion a l eng a gement also • The Sensorimotor Loop: body’s movement provides feedback that shapes perception and decision-making. 51
  23. Motion Tracking • Met a Quest uses a combin a

    tion of hand tracking, a nd AI-based body estimation to tr a ck the user’s movements. The system prim a rily focuses on head, hand, and body tracking, with emerging techniques for full-body tr a cking. • he a dset itself cont a ins a ll necess a ry sensors to tr a ck motion • Multiple outw a rd-f a cing c a mer a s th a t sc a n the environment a nd detect ch a nges in position. • Uses Simult a neous Loc a liz a tion a nd M a pping (SLAM) a lgorithms to cre a te a m a p of the sp a ce a nd tr a ck the user’s movement within it. • 6 Degrees of Freedom (6DoF): Met a Quest c a n tr a ck position (X, Y, Z) a nd rot a tion (pitch, y a w, roll) of the he a dset a nd controllers in re a l time. 52
  24. Docker | Steps 58 2. A package that includes everything

    needed to run software, including the code, runtime, libraries, dependencies, and configuration files. 3. A container is a runtime instance of an image. It encapsulates the execution environment for a specific application or process, including the filesystem, environment variables, network settings, and runtime options. 1. A text file that contains instructions for building a Docker image
  25. CSC 486 Human-Computer Interaction Javier Gonzalez-Sanchez, Ph.D. [email protected] Winter 2025

    Copyright. These slides can only be used as study material for the class CSC 486 at Cal Poly. They cannot be distributed or used for another purpose.