1 TCSS 360, Spring 2005 Lecture Notes UI Design and Paper Prototyping Relevant Reading: Paper Prototyping C. Snyder.

Slides:



Advertisements
Similar presentations
Microsoft ® Office Word 2007 Training Header and footer basics Sweetwater ISD presents:
Advertisements

CS0004: Introduction to Programming Visual Studio 2010 and Controls.
© by Pearson Education, Inc. All Rights Reserved.
Lecture Roger Sutton CO331 Visual Programming 1: Module introduction and the programming environment 1.
Automating Tasks With Macros
Ch 7 & 8 Interaction Styles page 1 CS 368 Designing the Interaction Interaction Design The look and feel (appearance and behavior) of interaction objects.
Today’s class Group Presentation More about principles, guidelines, style guides and standards In-class exercises More about usability Norman’s model of.
Interaction Styles Interface Widgets. What are Interaction Styles?  A Collection of interface objects and associated techniques from which an interaction.
Principles and Methods
Chapter 7 design rules.
Technology Education and Information Design Copyright 2009 MediTech NUI: New User Interface Online Training.
User Interface Evaluation CIS 376 Bruce R. Maxim UM-Dearborn.
Object-Oriented Analysis and Design LECTURE 8: USER INTERFACE DESIGN.
1 CSE 403 UI Prototyping Reading: Paper Prototyping, C. Snyder These lecture slides are copyright (C) Marty Stepp, They may not be rehosted, sold,
User Interface January 14, 2011 CSE 403, Winter 2011, Brun Three Mile Island.
1 CSE 403 UI Prototyping Reading: Paper Prototyping, C. Snyder These lecture slides are copyright (C) Marty Stepp, They may not be rehosted, sold,
DMS 546/446 INTERFACE DESIGN AL LARSEN – SPRING 2008 PAPER PROTOTYPING Lecture draws from multiple sources, including: Jakob Nielsen, Shawn Medero (
Department of Mechanical Engineering, LSUSession VII MATLAB Tutorials Session VIII Graphical User Interface using MATLAB Rajeev Madazhy
Introduction to Visual Basic. Quick Links Windows Application Programming Event-Driven Application Becoming familiar with VB Control Objects Saving and.
IE 411/511: Visual Programming for Industrial Applications
Introduction to Matlab & Data Analysis
Creating your own form from scratch.. To create a custom form, you can modify an existing form or design and create a form from scratch. In either case,
SWE205 Review Spring Why is software unusable? Users are no longer trained. Why? Feature creep Inherently hard: a problem of communication Designed.
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 7: Focusing on Users and Their Tasks.
Click to edit Master subtitle style USABILITY and USER INTERFACE DESIGN Application.
Designing Interface Components. Components Navigation components - the user uses these components to give instructions. Input – Components that are used.
GUI Widgets Jeff Offutt SWE 432 Design and Implementation of Software for the Web.
Copyright © 2010 Wolters Kluwer Health | Lippincott Williams & Wilkins Introduction to Windows Chapter 2.
Lecture 5(b), Slide 1 CP2030 Copyright © University of Wolverhampton CP2030 Visual Basic for C++ Programmers v Component 5(b) HCI aspects of VB programming.
S511 Session 7, IU-SLIS 1 DB Implementation: MS Access Forms.
Software Project Planning Defining the Project Writing the Software Specification Planning the Development Stages Testing the Software.
Design Rules-Part B Standards and Guidelines
INFORMATION X INFO425: Systems Design Chapter 14 Designing the user interface.
 Whether using paper forms or forms on the web, forms are used for gathering information. User enter information into designated areas, or fields. Forms.
XP New Perspectives on Microsoft Windows 2000 Professional Windows 2000 Tutorial 1 1 Microsoft Windows 2000 Professional Tutorial 1 – Exploring the Basics.
Why do we need good user interfaces?. Goals of User Interfaces Usable – how much effort to do a task? – example: often-used buttons easier to find – example:
Technical Paper Review Designing Usable Web Forms – Empirical Evaluation of Web Form Improvement Guidelines By Amit Kumar.
Creating Graphical User Interfaces (GUI’s) with MATLAB By Jeffrey A. Webb OSU Gateway Coalition Member.
DB Implementation: MS Access Forms. MS Access Forms  Purpose Data entry, editing, & viewing data in tables Forms are user-friendlier to end-users than.
G063 - Human Computer Interface Design Designing the User Interface.
Evaluating a UI Design Expert inspection methods Cognitive Walkthrough
Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with Programming Logic & Design Second Edition by Tony Gaddis.
CSE 403 Lecture 6 User Interface Prototyping Reading: Paper Prototyping, C. Snyder slides created by Marty Stepp
User Interface Components Lecture # 5 From: interface-elements.html.
Oct 021 Outline What is a widget? Buttons Combo boxes Text components Message boxes.
INTERFACE COMPOSITION GAME DESIGN. OBJECTIVES After this lesson, students will be able to: Identify the Eight Golden Rules of Human-Computer Interface.
1 Lecture 5: Interactive Tools: Prototypers (HyperCard, Director, Visual Basic), Interface Builders Brad Myers Advanced User Interface Software.
Design Phase intro & User Interface Design (Ch 8)
Photoshop Actions Lights, Camera, Actions in Photoshop.
Human-Computer Interaction Design process Task and User Characteristics Guidelines Evaluation ISE
COMPUTER PROGRAMMING I 3.01 Apply Controls Associated With Visual Studio Form.
Project Planning Defining the project Software specification Development stages Software testing.
IE 411/511: Visual Programming for Industrial Applications Lecture Notes #2 Introduction to the Visual Basic Express 2010 Integrated Development Environment.
COMPUTER PROGRAMMING I 3.01 Apply Controls Associated With Visual Studio Form.
UI Requirements and Design Material in part from Marty Stepp and Valentine Razmov, past 403 classes. CSE 403, Spring 2008.
DB Implementation: MS Access Forms. MS Access Forms: Purpose Data entry, editing, & viewing data in Tables Forms are user-friendlier to end-users than.
Fundamentals of Windows Mouse n 4 Basic Operations: –Pointing –Clicking –Double Clicking –Dragging.
Design rules.
Lecture on UI Design and Paper Prototyping
Java Look-and-Feel Design Guidelines
3.01 Apply Controls Associated With Visual Studio Form
3.01 Apply Controls Associated With Visual Studio Form
DB Implementation: MS Access Forms
Microsoft Windows 2000 Professional
DB Implementation: MS Access Forms
Chapter 7 design rules.
Chapter 7 design rules.
CMPE 280 Web UI Design and Development April 16 Class Meeting
Chapter 7 design rules.
Presentation transcript:

1 TCSS 360, Spring 2005 Lecture Notes UI Design and Paper Prototyping Relevant Reading: Paper Prototyping C. Snyder

2 Usability and software design usability: the effectiveness with which users can achieve tasks in one software environment studying and improving usability is part of the Human-Computer Interaction (HCI) branch of computer science

3 Good UI design and usability usability and good UI design are closely related a bad UI can have unfortunate results...

4 Achieving usability some methods to achieve good usability: user testing / field studies having users use the actual product and gathering data evaluations and reviews by UI experts card sorting showing users various UI menus and asking them to group the ones that are similar, to see what UI tasks are seen as being related by users prototyping good UI design focuses on the user, not on the developer or on the system environment

5 Prototyping prototyping: creating a scaled-down or incomplete version of a system to demonstrate or test aspects of the system Why should we do prototyping? aids UI design provides basis for testing team-building allows interaction with user to ensure satisfaction

6 Some methods of prototyping UI builders (Visual Studio,...) draw a GUI visually by dragging and dropping UI controls on screen in the past, was done in simple languages like Visual Basic modern IDEs have UI builders for more robust languages such as Java implementation by hand writing a "quick" version of your code

7 Paper prototyping paper prototyping: a means of usability testing where representative users perform tasks by interacting with a paper version of a user interface Why paper prototype? Why not just code up a working prototype? paper prototype is much faster to create than code can make changes to paper faster than code (editable) paper has more visual bandwidth (can see more at once) paper prototyping is more conducive to working in teams than most programming or normal prototyping paper prototyping can be done by non-technical people, or people with programming experience in different languages

8 Comparison of techniques paper prototypeUI builder actual implementation ease of use fast turn-around flexibility, control +++- executable team design +-0

9 Where does P.P. fit in? At what point in the software lifecycle should we do (paper) prototyping? When would it be most useful to do it? Why? We talk about requirements being about "what" and design being about "how." Which is paper prototyping? PP helps us uncover requirements and also upcoming design issues do PP during or after requirements analysis; before design "what" vs. "how": PP shows us "what" is in the UI, but it also shows us details of "how" the user can achieve their goals in the UI; I categorize it as "how"

10 A paper prot. usability session user is given tasks to perform using the paper prototype session can be observed by people or camera one developer can "play computer" Facilitator User “Computer” Observer(s)

11 Schneiderman's 8 Golden Rules8 Golden Rules Strive for consistency. Give shortcuts to the user. Offer informative feedback. Make each interaction with the user yield a result. Offer simple error handling. Permit easy undo of actions. Let the user be in control. Reduce short-term memory load on the user.

12 UI design examples

13 UI design, components When should we use: A button? A check box? A radio button? A text field? A list? A combo box? A menu? A dialog box? Other..?

14 UI design - buttons, menus use buttons for single independent actions that are relevant to the current screen try to use button text with verb phrases such as "Save" or "Cancel", not generic: "OK", "Yes", "No" use Mnemonics or Accelerators (Ctrl-S) use toolbars for common actions use menus for infrequent actions that may be applicable to many or all screens Users hate menus! Try not to rely too much on menus. Provide another way to access the same functionality (toolbar, hotkey, etc)

15 UI design - checkboxes / radio use check boxes for on/off switches, when any one switch can be toggled irrespective of the others (often correspond to boolean values) use radio buttons for related choices, when only one choice can be activated at a time (often corresponds to enum / constant values)

16 UI design - lists, combo boxes use text fields (usually with a label) when the user may type in anything they want use lists when there are many fixed choices (too many for radio buttons to be practical) and you want all choices visible on screen at once use combo boxes when there are many fixed choices, but you don't want to take up screen real estate by showing them all at once use a slider or spinner for a numeric value

17 An example UI screen What can we say about this UI dialog? Did the designer choose the right components? Let's assume there are 20 collections and 3 ways to search (by title, author, relevancy) LIBSYS: Search Choose collection: Word or phrase: Search by: Adjacent words OK Default Cancel All Title YesNo

18 UI design - multiple screens use a tabbed pane when there are many screens that the user may want to switch between at any moment use a CardLayout to "swap" between screens when necessary (not switchable by user) use dialog boxes or option panes to present temporary screens or options

19 Creating a paper prototype gather materials paper, pencils/pens tape, scissors highlighters, transparencies identify the screens in your UI consider use cases, inputs and outputs to user think about how to get from one screen to next this will help choose between tabs, dialogs, etc.

20 Application backgrounds draw the app background (the parts that matter for the prototyping) on its own, then lay the various subscreens on top of it

21 Representing a changing UI layers of UI can be placed on top of background as user clicks various options

22 Representing interactive widgets buttons / check boxes: tape tabs, dialog boxes: index cards text fields: removable tape combo boxes: put the choices on a separate piece of paper that pops up when they click selections: a highlighted piece of tape or transparency disabled widgets: make a gray version that can sit on top of the normal enabled version computer beeps: say "beep" (hah!)

23 Example paper prot. screen

24 Example full paper prototype

25 Paper prototyping exercise In groups of 1--4 (optionally, with people you think may be in your project group), let's do a simple paper prototype for a Scrabble game. Draw the main UI and enough widgets to walk through a creation of a new game and playing a move on the board. After the prototypes are done, we'll try walking through each UI together. Things to think about: How many clicks are needed to start a new game? To make a play? Could your parents figure it out without guidance?