CS294 Software Engineering Software Usability

Slides:



Advertisements
Similar presentations
1 Design, Prototyping, and Evaluation in Developing Countries Jen Mankoff, Assistant Professor EECS.
Advertisements

Virtual University - Human Computer Interaction 1 © Imran Hussain | UMT Imran Hussain University of Management and Technology (UMT) Lecture 20 User Research.
Chapter 9 User-centered approaches to interaction design By: Sarah Obenhaus Ray Evans Nate Lynch.
The design process IACT 403 IACT 931 CSCI 324 Human Computer Interface Lecturer:Gene Awyzio Room:3.117 Phone:
Agile Usability Testing Methods
Part 2c: Requirements Chapter 2: How to Gather Requirements: Some Techniques to Use Chapter 3: Finding Out about the Users and the Domain Chapter 4: Finding.
Understanding Practice: Video as a Medium for Reflection & Design Lucy A. Suchman & Randall H. Trigg.
Computer Engineering 203 R Smith Agile Development 1/ Agile Methods What are Agile Methods? – Extreme Programming is the best known example – SCRUM.
4. Interaction Design Overview 4.1. Ergonomics 4.2. Designing complex interactive systems Situated design Collaborative design: a multidisciplinary.
Sofia Carlander Kinoshita Laboratory 2004/2005
The design process z Software engineering and the design process for interactive systems z Standards and guidelines as design rules z Usability engineering.
Introduction to Interactive Media 02. The Interactive Media Development Process.
SoberIT Software Business and Engineering Institute HELSINKI UNIVERSITY OF TECHNOLOGY User Studies Basic principles, methods, and examples Sari.
Requirements 101 CS3300 Fall 2015.
HCI in Software Process Material from Authors of Human Computer Interaction Alan Dix, et al.
Work package 2: User analysis and usability testing Responsible partner: Danish Data Archives WP leader: Anne Sofie Fink, DDA.
©2001 Southern Illinois University, Edwardsville All rights reserved. Today System Design & Putting it Together Reading: ABF: Ch. 9 CD Ch.s 14, 15, 16,
Chapter 2 Software processes. Topics covered Software process models Process activities Coping with change.
Interaction Design: Overview
Usability 1 Usability evaluation Without users - analytical techniques With users - survey and observational techniques.
S556 SYSTEMS ANALYSIS & DESIGN Week 6. Using Language to Focus Thought (cf., Wood, 1997) SLIS S556 2  The language gives you a way to see:  a framework.
Today Next time  Interaction Reading: ID – Ch 2 Interaction  Introduction to HCI & Interaction Design Reading: ID – Ch. 1 CS 321 Human-Computer Interaction.
Understanding User's Work Ethnography The systematic study and documentation of human activity without imposing a prior interpretation on it via immersion.
©2001 Southern Illinois University, Edwardsville All rights reserved. Today Putting it in Practice: CD Ch. 20 Monday Fun with Icons CS 321 Human-Computer.
Today Discussion Follow-Up Interview Techniques Next time Interview Techniques: Examples Work Modeling CD Ch.s 5, 6, & 7 CS 321 Human-Computer Interaction.
Supporting the design of interactive systems a perspective on supporting people’s work Hans de Graaff 27 april 2000.
Design Evaluation Overview Introduction Model for Interface Design Evaluation Types of Evaluation –Conceptual Design –Usability –Learning Outcome.
Prof. James A. Landay University of Washington Spring 2008 Web Interface Design, Prototyping, and Implementation Ubicomp Design Pre-Patterns May 29, 2008.
Project Management Software development models & methodologies
Computer Science Information technology my career
Dr. Anne Adams Research Methods.
GRASP – Designing Objects with Responsibilities
Software Quality Engineering
Z556 Systems Analysis & Design
Digital media & interaction design
Software Quality Engineering
Designing for people CPSC 481: HCI I.
The Systems Engineering Context
Prototyping.
EKT 421 SOFTWARE ENGINEERING
Topic: Contextual Interview
HCI in the software process
The design process Software engineering and the design process for interactive systems Standards and guidelines as design rules Usability engineering.
The design process Software engineering and the design process for interactive systems Standards and guidelines as design rules Usability engineering.
CS 321: Human-Computer Interaction Design
Professor John Canny Spring 2003
Lecture 2: Discovering what people can't tell you: Contextual Inquiry and Analysis Methodology Brad Myers / : Introduction to Human Computer.
Informatics 121 Software Design I
User Interface Prototyping & Interaction Design
Paul Ammann The Agile Heresy: What Drives Traditional Software Engineering, and Why Agile Turns it Upside Down Paul Ammann.
SBD: Analyzing Requirements
Basic Research Terms Research—the process of finding information relevant to a particular topic Source—any medium that provides information relevant to.
HCI – DESIGN RATIONALE 20 November 2018.
Introduction to Usability Engineering
Introduction To System Analysis and Design PART 2
Task Analysis and Contextual Inquiry
Chapter 2 – Software Processes
Usability Techniques Lecture 13.
Introduction UI designer stands for User Interface designer. UI designing is a type of process that is used for making interfaces in the software or the.
HCI in the software process
Gathering Requirements
HCI in the software process
Lecture 2: Discovering what people can't tell you: Contextual Inquiry and Analysis Methodology Brad Myers / : Introduction to Human Computer.
User Studies Basic principles, methods, and examples
After 1st Usability Review
User-centered approaches to interaction design
Human Computer Interaction Lecture 14 HCI in Software Process
User CENTERED DESIGN IB TOPIC 7.
Software Design & Production Methodologies
Presentation transcript:

CS294 Software Engineering Software Usability Contextual Design Hugh Beyer and Karen Holtzblatt Psychology of Everyday Things Don Norman Make it easier to create these apps? Contributions + validation? Focus on privacy Understand model Better design of applications Certain features (evolvability) Jason I. Hong

Contextual Design Overview How to create useful, usable, and desirable software for end-users? Recurring themes in Contextual Design Try to understand entire context of customers Base decisions on observations of work practices Get continual feedback from customers Get entire team involved programmers, marketing, QA, and customers Focus on customers throughout, not just at end May 06 2002

Contextual Design Contextual Inquiry “Ethnographically-inspired” field studies Go out and observe with several actual customers at their workplace (Master-apprentice model) Customers not necessarily same as clients Main goal is to understand Where, How, and What to expose the Why Say they want drills, really want holes Three secondary goals: Avoid designer bias Provide concrete data Get entire team on same page May 06 2002

Contextual Design Questions about Contextual Inquiry How well does this technique work? Bang for buck compared to other techniques? What kinds of info does it capture? Drawbacks? How much does it depend on the interviewers and interviewees selected? Scale? How many customers to observe? Ex. MSWord vs custom app for small company What tools would be useful here? Most of the tools we’ve examined focus on software dev rather than requirements May 06 2002

Contextual Design Affinity Diagrams Goal is to organize the information collected from Contextual Inquiry field studies Entire design team uses Post-its and large spaces to spatially organize ideas May 06 2002

Contextual Design Affinity Diagrams May 06 2002

Contextual Design Affinity Diagrams May 06 2002

Contextual Design Some Questions on Affinity Diagrams How reliable is this technique? Does it capture the results of contextual inquiry well? How often will you usually get the same diagram? or is it really that important, ie process vs artifact? Are there better ways of organizing the info? What kinds of tools? Little computer support here May 06 2002

Contextual Design Paper Prototyping May 06 2002

Contextual Design Paper Prototyping May 06 2002

Contextual Design Paper Prototyping May 06 2002

Contextual Design Questions on Paper Prototyping Bang for buck Gauging “improvement” in software quality? i.e. convincing engineers and management How many times to do paper prototyping? How dependent is it on skills of design team? Why not just put the software out there? “Release early and release often” Tools for improving software prototyping? Again, most tools here are carbon-based May 06 2002

Questions on Contextual Design How does Contextual Design compare? Does it work? If so, how well vs other processes? Resolving conflicts with other processes Marketing-driven requirements XP focuses on the Source Code Open Source + Contextual Design? New software changes nature of work practices A Heisenberg effect for software If Contextual Design is good and works, how to encourage it within our engineering culture? May 06 2002

Psychology of Everyday Things Overview Author bio Founding chair of CogSci at UCSD VP Apple and HP Currently Prof at Northwestern Any favorite stories? Horror stories or good stories? From book or personal? My horror story is remote control for video projector in the classroom No affordance for the hidden flap in the remote Little feedback as to whether it worked or not (a little blinking light) Easier to point out horror stories b/c good designs are invisible May 06 2002

Psychology of Everyday Things Overview Conceptual Models and Visibility Crosscutting principles Affordances Feedback Mappings Constraints Errors Convention Some elements of Distributed Cognition Traditional cognition looks at individuals In DCog, “knowledge” also in processes and physical world These are all "low-level" examples of principles How to make this work consistently and coherently on a larger-scale? May 06 2002

Psychology of Everyday Things Overall Questions (1/2) Problems descriptive of software? What’s different about software vs physical artifacts? Higher barriers to entry with “invisible” s/w and chips? Do these design principles apply to software? If so, how? Better tools? Often have to explicitly design these principles in little support for designers to do the “right thing” How to make it easy to create good Conceptual Models? Mappings? Affordances? Most tools and CS classes are text-oriented Big step jumping from text to graphics and sound Lower-level support for these? Programming languages? (mostly text-based) Systems? Multimodal? Wireless? Ubicomp? May 06 2002

Psychology of Everyday Things Overall Questions (2/2) Are these problems also cultural? Design community focuses on novelty and aesthetics Software community rewards code and hackworthiness ex. Slashdot, RTFM, Unix Little acclaim or excitement for usability and simplicity Market doesn't always reward good designs How can we change our tools, processes, language, and culture to focus on and match end-user needs? Do we need to? Done pretty well so far, haven't we? Better multidisciplinary education for undergrads? Can we bridge Interaction Design and Software Eng? May 06 2002