53
User Interface Design User Interface Design Jason Beres Jason Beres Chief Technical Evangelist Chief Technical Evangelist Infragistics Infragistics [email protected] Download presentation at Download presentation at http ://www.vbasp.net/uidesign.zip Jason Beres Jason Beres Chief Technical Evangelist Chief Technical Evangelist Infragistics Infragistics [email protected] Download presentation at Download presentation at http ://www.vbasp.net/uidesign.zip

User Interface Design Jason Beres Chief Technical Evangelist Infragistics [email protected] Download presentation at

Embed Size (px)

Citation preview

Page 1: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

User Interface DesignUser Interface Design

Jason BeresJason BeresChief Technical EvangelistChief Technical [email protected]

Download presentation at Download presentation at http://www.vbasp.net/uidesign.zip

Jason BeresJason BeresChief Technical EvangelistChief Technical [email protected]

Download presentation at Download presentation at http://www.vbasp.net/uidesign.zip

Page 2: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

About MeAbout Me

Visual Basic .NET MVPAuthor 5 Books on .NET Technologies

Wiley, Hungry Minds, SAMS

Visual Studio Magazine AuthorINETA Board MemberINETA Speakers BureauTech-Ed, PDC and other conferences

Page 3: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

AgendaAgenda

UI Design CommentsBuilding the RequirementsApplication Design PatternsApplication Layout PatternsControls – Are they in the box?Frameworks for UI ConstructionReferencesQuestions

Page 4: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

UI Design CommentsUI Design Comments

Page 5: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

The Importance of a Good Dialog …The Importance of a Good Dialog …

Users are having a conversation with their computer through your UI

Page 6: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

The Importance of a Good DialogThe Importance of a Good Dialog

This is not just Dialog BoxesColorsGradientsShapesPicturesFontsRespect Themes – your application should change based on user preference!

Everything about the UI talks to the user of the UI – so be nice!

Page 7: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

Don’t Make Me Think!Don’t Make Me Think!

I don’t think, I do.Base design on the Persona

Are they Advanced? Beginners?IE vs. ExcelOutlook vs. Visio

Unfriendly Software = UneaseUnease = ConfusionI want to feel safe!

Page 8: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

Models of DesignModels of Design

User ModelInstinct drives my actionsI am used to it, because of other applications I use daily

User Model Inertia – it is easier to change the program model than the user model:

Windows – double mouse clickMacintosh – single mouse click

Page 9: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

User Model has contextUser Model has context

Video Recorder controls

Data Entry applicationsRETURN saves the column or rowINSERT adds new row

Other Common Contexts

Page 10: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

Use it how I want to!Use it how I want to!

Make it simple – multiple user models for a single program model

CTRL-X; CTRL-VRight mouse click “Cut”, right mouse click “Paste”Edit Menu “Cut”, Edit Menu “Paste”Drag-and dropCopy & Paste Icon on the Toolbar

Page 11: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

Metaphors in the User ModelMetaphors in the User Model

Metaphors help a User Model develop around a Program Model

Buttons – represent function with icon or text, look 3D and pushable, and show change of state.Icons – provide an easy to learn model, that may not bear much resemblance to a modern physical object (Floppy Disc Icon for Save) Physical to Virtual Mapping

Page 12: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

More IconsMore Icons

Tabs – function closely corresponds to paper or book metaphor.When first introduced, Microsoft research showed, that usability went from 30% to 100%.Except for multi-row tab behaviour:

Page 13: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

The User Model & The User Model & ConsistencyConsistency

The User Model is based on consistency:Behaviour - always means “Save your work”Metaphors, when used are consistent with their contextLook and Feel – most of your users will use Word and Excel and context switch from these to your applications. Microsoft spends more that > $300 million on usability testing.

Page 14: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

Consistency for the UserConsistency for the User

It helps the user – Feel confident Feel at ease.Learn more quickly.Maintain focus on the purpose of the application

Reduces the need for extra documentationA user does not want to readA user may not have available documentation (is it online?)It might not be in a user’s first language

Page 15: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

Building RequirementsBuilding Requirements

Page 16: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

What is the software for?What is the software for?

“We need an application that does X, Y and Z, does it really fast, is easy to use, and our target market is 10 year olds to 70 year olds”

Understand who is going to use the product and why

Page 17: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

Understand the UserUnderstand the User

What are their goals?To search? To buy? To Browse? To Enter Data? Analysis? Reporting?

What is their experience? Is the computer their best friend or worst enemy?

What language do they expect? Are they Cool? Hip? Conservative? Young? Old?

Where are they from? Cultural References can be good and bad

In the USA“Going Postal” means somethingSoccer is a different sport than FootballChips are different than French Fries

Page 18: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

Gathering RequirementsGathering Requirements

Focus GroupsCase StudiesSurveysPersonas

Sounds like marketing?It isMultiple inputs are necessary to succeed

Page 19: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

PersonasPersonas

Put’s a Face to the ProblemYou learn to “know” the targetEmpathy!

Virginia Rogers•Income - $30,000

•Uses computer only at work

•Likes to talk to coworkers – She is “chatty”

•Enjoys slow walks in the park

•Spends 3 hours a day on computer

•Says Outlook XP is “Cute”

•Use the “Hearts” XP Themes from the PLUS! Pack

•Loves to play Solitaire

•Likes “Clippy the Office Assistant”

Virginia Rogers•Income - $30,000

•Uses computer only at work

•Likes to talk to coworkers – She is “chatty”

•Enjoys slow walks in the park

•Spends 3 hours a day on computer

•Says Outlook XP is “Cute”

•Use the “Hearts” XP Themes from the PLUS! Pack

•Loves to play Solitaire

•Likes “Clippy the Office Assistant”

Michael Lang•Income - $85,000

•Owns 3 Computers

•Mixes Music and DVD’s on computer at home

•Masters Degree in Bio Metrics

•Enjoys mountain climbing and is Olympic TriAthalon Gold Medalist

•Does stock trading in spare time at home

•Speaks English, Dutch, German, Russian and 3 dialects of Chinese

Michael Lang•Income - $85,000

•Owns 3 Computers

•Mixes Music and DVD’s on computer at home

•Masters Degree in Bio Metrics

•Enjoys mountain climbing and is Olympic TriAthalon Gold Medalist

•Does stock trading in spare time at home

•Speaks English, Dutch, German, Russian and 3 dialects of Chinese

Page 20: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

Recommedability vs. UsabilityRecommedability vs. Usability

When gathering requirementsDo we make it usable?Would some recommend the application?

You need to do bothCommon application design patternsCommon pattern layoutsCommon Frameworks for Consistency

Page 21: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

Application Design Application Design PatternsPatterns

Page 22: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

PatternsPatterns

Common, repeatable use casesSingleton Pattern when codingOutlook Pattern in Application Design

Organizer

Overview

Details

Page 23: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

8 Patterns in Application Design8 Patterns in Application Design

Two-Panel SelectorCanvas & PaletteOne Window Drilldown (with variances)Alternate ViewsWizardExtras on DemandIntriguing BranchesMulti-Level Help

Page 24: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

Two Panel SelectorTwo Panel Selector

Most Common UI Pattern

Windows ExplorerWindows Media Player

Page 25: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

Canvas & PaletteCanvas & Palette

Physical to Virtual Palette to Canvas

Paint, PhotoShop, Visual Studio

Page 26: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

One Window DrilldownOne Window Drilldown

Simple UI – Drilldown to each window

Controls the workflowSimple choices for user

Think iPod menu or Control Panel

Page 27: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

Alternate ViewsAlternate Views

Same Data – Different LookPrinter Friendly PageListView – Details, Tiles, Thumbnails, Groups

Page 28: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

WizardWizard

Step by Step Dissemination of Information

Not always a good ideaUnderstand your users

Page 29: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

Extras on DemandExtras on Demand

Common -> ComplexColor PickerSearch Dialog

Page 30: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

Intriguing BranchesIntriguing Branches

Web based metaphorGive interesting Content to Curious PeopleSmart Tag, WikiPedia Links, Blogs

Page 31: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

Multi-Level HelpMulti-Level Help

Hits all user with all scenariosUsed for more complex applications

How to create levels of help?CaptionsTooltipsExpandable and Collapsible PanelsPop-Up WindowsTask Pane

Page 32: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

Application Layout PatternsApplication Layout Patterns

Page 33: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

Layout out DataLayout out Data

You have the Application Design – now you need to lay out your data

User expect certain behaviors based on their personaUsers expect certain behaviors based on their experience

Drag & Drop, Expand-Collapse, Text Alignment

Does not consider User ModelI should always have a right-clickCTRL-C should always COPY

Usability vs. Recommendability

Page 34: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

4 Categories of Layout4 Categories of Layout

GroupingTitled Sections, Card Stack, Closable Panels, Movable Panels

Alignment & BalanceRight-Left AlignmentDiagonal Balance

Property SheetsDynamic Content

Responsive DisclosureResponsive Enabling

Page 35: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

GroupingGrouping

Titled SectionsCard Stacks (Tabs or TabbedMdi)Closable Panels (Docking)Movable Panels (Docking)

Page 36: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

Alignment & BalanceAlignment & Balance

Use Labels and Textboxes as if you were readingBalance Buttons with Groupings

Page 37: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

Property SheetProperty Sheet

Consider your audienceAdvanced User – Visual Studio PropertyBeginner User – Volume Control UI

Page 38: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

Dynamic ContentDynamic Content

Inductive User InterfaceGuide User into a Set of Choices

Responsive DisclosureResponsive Enabling

Page 39: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

Responsive DisclosureResponsive EnablingInductive User Interface

The Wonders of Windows Forms

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnforms/html/winforms09212004.asp

Page 40: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

Controls – What do I Use?Controls – What do I Use?

Page 41: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

In-Box ControlsIn-Box Controls

Most controls that ship with Visual Studio satisfy basic requirements

Groupings, Data Entry, Some Data Visualization

Complex Patterns Require Richer ControlsMovable Windows, Closable Panels, Meaningful Drag & Drop

Modern Applications Require Modern ControlsOffice 2003, Office 12, Visual Studio 2005

Page 42: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

You Have to Choice to MakeYou Have to Choice to Make

Build your own controlsUse 3rd party control libraries

Page 43: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

Modern UICollapsible Panels (Docking)Card Stack UI (Tabbed MDI)Pictures

Page 44: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

UI FrameworksUI Frameworks

Page 45: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

Why Use UI Frameworks?Why Use UI Frameworks?

ConsistencyUsers expect same behaviors across applicationsDevelopers (you) need a consistent development environmentSOA, Web Services – Allow Reuse of Data and Business Logic

Why not reuse the UI?

Page 46: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

Why Use UI FrameworksWhy Use UI Frameworks

Remove the hundreds of decisions developers make on the UI – let the framework determine how to implement You can focus solely on business logic, UI design, or infrastructure services without requiring knowledge of other parts of the overall applicationThe abstraction of common developer tasks resulting in increased productivity and maintainability

Page 47: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

Composite UI Application BlockComposite UI Application BlockCABCAB

Modern Framework from Microsoft for Smart Client developmentShell architecture contains Workspaces & Smart Parts – not controls

Page 48: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at
Page 49: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

Use of PatternsUse of PersonasUse of Modern ControlsUse of Modern Framework

Page 50: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at
Page 51: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

On the WebOn the Web

http://www.vbasp.net/uidesign.zipIUI’s and Web Style Navigation -Michael Weinhardt

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnforms/html/winforms09212004.asp

Infragistics – UI Toolsethttp://www.infragistics.com

CAB Frameworkhttp://msdn.microsoft.com/practices/

Page 52: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at

BooksBooks

Designing Interfaces – Jenifer Tidwell (O’Reilly)About Face 2.0 – Alan Cooper (Wiley)Elements of User Experience – Jesse James Garrett (New Riders)

Page 53: User Interface Design Jason Beres Chief Technical Evangelist Infragistics jasonb@infragistics.com Download presentation at