CSE 403 Lecture 6 User Interface Prototyping Reading: Paper Prototyping, C. Snyder slides created by Marty Stepp

Slides:



Advertisements
Similar presentations
Chapter 11 Designing the User Interface
Advertisements

Microsoft Expression Web-Illustrated Unit J: Creating Forms.
What is a User Interface?  Everything in a device with which a human being interacts.  The total “user experience”  Not necessarily tied to computers.
Lecture Roger Sutton CO331 Visual Programming 1: Module introduction and the programming environment 1.
XP Exploring the Basics of Microsoft Windows XP1 Exploring the Basics of Windows XP.
UI Standards & Tools Khushroo Shaikh.
Automating Tasks With Macros
Exploring the Basics of Windows XP. Objectives Start Windows XP and tour the desktop Explore the Start menu Run software programs, switch between them,
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.
Part 3: Design Chapter 8: Work Reengineering and Conceptual Design Chapter 9: Design Guidance and Design Rationale Chapter 10: Interaction Design Chapter.
Principles and Methods
Technology Education and Information Design Copyright 2009 MediTech NUI: New User Interface Online Training.
Chapter 13: Designing the User Interface
Exploring the Basics of Windows XP
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.
Lecture 5 Heuristic evaluations & Early prototype Evaluations HEIM, CHAPTERS
Systems Analysis and Design in a Changing World, 6th Edition
1 CSE 403 UI Prototyping Reading: Paper Prototyping, C. Snyder These lecture slides are copyright (C) Marty Stepp, They may not be rehosted, sold,
Software Quality Assurance 2/20 WELCOME Graphic User Interface Testing.
CS3205: HCI in SW Development More on Detailed Design: Guidance and Color.
Ch 6 - Menu-Based and Form Fill-In Interactions Yonglei Tao School of Computing & Info Systems GVSU.
DMS 546/446 INTERFACE DESIGN AL LARSEN – SPRING 2008 PAPER PROTOTYPING Lecture draws from multiple sources, including: Jakob Nielsen, Shawn Medero (
Guidelines and Prototypes CS774 Human Computer Interaction Spring 2004.
Designing a Graphical User Interface (GUI) Krisana Chinnasarn, Ph.D. January 2007.
Department of Mechanical Engineering, LSUSession VII MATLAB Tutorials Session VIII Graphical User Interface using MATLAB Rajeev Madazhy
11.10 Human Computer Interface www. ICT-Teacher.com.
SWE205 Review Spring Why is software unusable? Users are no longer trained. Why? Feature creep Inherently hard: a problem of communication Designed.
Types of Usability Testing or Usability Inspection Chapter 10.3.
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.
Usability Testing CS774 Human Computer Interaction Spring 2004.
Enhancing the Graphical User Interface Multiple Forms, Controls, and Menus.
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.
Key Applications Module Lesson 21 — Access Essentials
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.
1 NORMA Lab. 7 Generating Reports More Display Options File: NORMA_Lab6.ppt. Author: T. Halpin. Last updated: 2009 June 9.
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:
1 TCSS 360, Spring 2005 Lecture Notes UI Design and Paper Prototyping Relevant Reading: Paper Prototyping C. Snyder.
12.1 CSC 123 Systems Analysis & Design Part IV: The Essentials of Design Chapter 12 Designing Effective Input.
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.
Prototyping. REVIEW : Why a prototype? Helps with: –Screen layouts and information display –Work flow, task design –Technical issues –Difficult, controversial,
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)
Human-Computer Interaction Design process Task and User Characteristics Guidelines Evaluation ISE
COMPUTER PROGRAMMING I 3.01 Apply Controls Associated With Visual Studio Form.
Microsoft Office 2008 for Mac – Illustrated Unit D: Getting Started with Safari.
William H. Bowers – Specification Techniques Torres 17.
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.
Development Environment
Lecture on UI Design and Paper Prototyping
User Interface Components
Building a User Interface with Forms
Excise Tasks CS 4640 Programming Languages for Web Applications
DB Implementation: MS Access Forms
Accidental and Essential Problems Excise Tasks
DB Implementation: MS Access Forms
Microsoft Office Illustrated Fundamentals
CMPE 280 Web UI Design and Development April 16 Class Meeting
Chapter 4 Enhancing the Graphical User Interface
Presentation transcript:

CSE 403 Lecture 6 User Interface Prototyping Reading: Paper Prototyping, C. Snyder slides created by Marty Stepp

2 Big questions What's the point of prototyping? Should I do it? –If so, when in the overall process or "lifecycle" should I? Should I make my prototype on paper or digitally? How do I know whether my UI is good or bad? –What are the ways in which a UI's "quality" can be quantified? –What are some examples of software you use that have especially good/bad UIs? What do you think makes them good/bad?

3 Usability and SW design usability: The effectiveness with which users can achieve tasks in a software environment. –studying and improving usability is part of Human-Computer Interaction (HCI) –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 product and gathering data –evaluations and reviews by UI experts –card sorting Show users various UI menus and ask them to group the ones that are similar, to see what UI tasks are seen as being related by users. –prototyping paper prototyping code prototyping Good UI design focuses on the user, not developer or system.

5 Prototyping prototyping: Creating a scaled-down or incomplete version of a system to demonstrate or test aspects of it. What are some possible benefits of prototyping? –aids UI design –help discover requirements –help discover test cases and provide a basis for testing –allows interaction with user and customer to ensure satisfaction –team-building

6 Some prototyping methods UI builders (Visual Studio, etc.) –draw a GUI visually by dragging/dropping UI controls on screen implementation by hand –writing a "rough" version of your code paper prototyping: a paper version of a UI Question: Why not just code up a working code prototype? –much faster to create than code –can change faster than code –more visual bandwidth (can see more at once) –more conducive to working in teams –can be done by non-technical people

7 Where does it 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 uncover requirements and also upcoming design issues –do PP during or after requirements; 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 goals in the UI

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

9 Schneiderman's 8 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. (from Designing the User Interface, by Ben Schneiderman of UMD, HCI/UI expert)

10 UI design and 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..?

11 UI design examples

12 Apple Mac user interfaces

13 UI Hall of Shame

14 Layout and color

15 Bad error messages

16 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) –tool tips are helpful, but don't rely on them (many users don't know to hover to find them) Use toolbars for common actions. Use menus for infrequent actions applicable to many screens. –Users don't like menus! Try not to rely too much on menus. Provide another way to access the same functionality (toolbar, hotkey, etc)

17 Checkboxes, radio buttons Use check boxes for independent on/off switches (boolean) Use radio buttons for a small number of related choices, when only one can be activated at a time (enum / constants)

18 Lists, combo boxes, etc. use text fields (usually with a label) when the user may type in anything they want –you will usually have to validate the input use lists when there are many fixed choices (too many for radio buttons to be practical) and you want all choices visible at once use combo boxes when there are many fixed choices, but you don't want to take up screen space by showing them all at once use a slider or spinner for a numeric value with fixed range

19 An example UI Did the designer of this UI choose the right components? –assume there are 30 collections and 3 ways to search (by title, author, relevancy) LIBSYS: Search Choose collection: Phrase: Search by: Adjacent words All Title YesNo OK Default Cancel

20 UI design - multiple screens you can use a tabbed pane when there are many screens that the user may want to switch between at any moment –or multiple pages, if it's a web site use dialog boxes or option panes to present temporary screens or options –users hate popup dialogs; use them very rarely –don't prompt for lots of user input by popping up dialogs instead, put the choices on the existing window as buttons, etc.

21 "Wizards" wizard: series of dialog boxes to progress through a task In the mid-1990s, Microsoft changed most of its Windows apps to use "wizards" for installation and settings. –Why did they do this? –What are the pros and cons of a "wizard" UI?

22 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.

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

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

25 Interactive widgets widgethow to simulate it buttons or check boxestape tabs and dialog boxesindex cards or small papers text fieldsremovable tape combo boxesput the expanded choices on a separate paper / Post-It selectionshighlighted piece of tape a disabled widgetcut out a separate gray version that can be placed on top of the normal one

26 Example paper prot. screen

27 Example paper prototype

28 Prototyping exercise Let's draw a prototype for a music player (e.g. iTunes). –Assume that the program lets you store, organize, and play songs and music videos. –Draw the main player UI and whatever widgets are required to do a search for a song or video. –After the prototypes are done, we'll try walking through each UI. Things to think about: –How many clicks are needed? What controls to use? –Could your parents figure it out without guidance?