Sketching, Wireframing, Prototyping - How to Be Agile and Avoid Half-Baked User Experience

Post on 21-Oct-2014

9.501 views 0 download

Tags:

description

A video recording of the talk is available online: http://youtu.be/C6HjF8XlxH0?t=2m32s Compelling and powerful web applications such as Google Maps and Facebook have become mainstream and are setting a benchmark in terms of usability and design. Meanwhile, agile development is taking the software development world by storm. UX designers used to the traditional "waterfall" way of working - with lots of design documentation and big handovers - often struggle with the new development approach. Without any claim to silver bullets, I will outline some practices and guiding principles for improving user interfaces by iterating on frontend design & code by way of sketching, wireframing and prototyping. I intend to share some lessons learned from working in a agile development environment and talk about ways of collaborating effectively with stakeholders & team members. Compelling and powerful web applications such as Google Maps and Facebook have become mainstream and are setting a benchmark in terms of usability and design. Meanwhile, agile development is taking the software development world by storm. UX designers used to the traditional "waterfall" way of working - with lots of design documentation and big handovers - often struggle with the new development approach. Without any claim to silver bullets, I will outline some practices and guiding principles for improving user interfaces by iterating on frontend design & code by way of sketching, wireframing and prototyping. I intend to share some lessons learned from working in a agile development environment and talk about ways of collaborating effectively with stakeholders & team members.

Transcript of Sketching, Wireframing, Prototyping - How to Be Agile and Avoid Half-Baked User Experience

(P)

SKETCHING, WIREFRAMING, PROTOTYPING(P)HILIPP SCHRÖDER

FRONTEND CONFERENCE 20126.9.2012

How to Be Agile and Avoid Half-Baked User Experience

SKETCHING, WIREFRAMING, PROTOTYPING

@pips1TWITTER, ANYONE?

"TWTTR SKETCH", CC BY JACK DORSEY ON FLICKR

INITIAL SKETCH OF TWITTER

"THE TWITTERVERSE V0.9", CC BY B_D_SOLIS ON FLICKR

TWITTER ECO-SYSTEM

TRENDS

WHAT IS THIS AGILE THING THAT EVERYBODY IS TALKING ABOUT, REALLY?

➡ Individuals and interactions over processes and tools

➡ Working software over comprehensive documentation

➡ Customer collaboration over contract negotiation

➡ Responding to change over following a plan

AGILE MANIFESTO

HTTP://AGILEMANIFESTO.ORG/

HAT TIP: ANDERSRAMSAY.COMIMAGE: CC BY NC ND SANGUDO ON FLICKR

TRADITIONAL RELAY RACE

Team members run alone.

Collaboration is not built into the game.

HAT TIP: ANDERSRAMSAY.COMIMAGE: CC BY-SA GUFFEYGF ON FLICKR

AGILE RUGBY GAME

Intensive and continuous collaboration is core to the game.

Reach the goal line again and again to win the game.

➡ All agile frameworks rely on Empirical Process Control.

➡ Traditional frameworks (and most current management approaches) rely heavily on Defined Process Control.

A CRUCIAL DIFFERENCE:PROCESS CONTROL

CHARLIE CHAPLIN IN “MODERN TIMES”

DEFINED PROCESS CONTROL

WHY WATERFALL DOESN’T WORK FOR ME

CC BY-NC-ND SHENGHUNG LIN ON FLICKR

RELAY RACES & “DEATH MARCHES”

CC BY-NC YUAN2003 ON FLICKR

KNOW-HOW SILOS

NO TEDIOUS SPEC WORK

WHY AGILE DEVELOPMENT WORKS FOR ME

1 ITERATION = 1 SPRINT = 2 WEEKS TO 1 MONTH

EMPIRICAL PROCESS CONTROL - AS EXEMPLIFIED BY SCRUM

24hrs

Sprint planning End of project

Delivery / Sprint review

Sprint retrospective

Product Backlog Development

Goal achieved / money run down

... in order to quickly generate business value and develop software that satisfies user needs.

EVERY ITERATION, WE HAVE AN INCREMENT OF WORKING SOFTWARE

... in order to continuously improve both.

EACH ITERATION, WE REVIEW THE PRODUCT (WHAT WE BUILT) & THE PROCESS (HOW WE WORK)

WATERFALL AGILE

REDUCING UNCERTAINTY

High Low

Hig

hLo

w

Means UncertaintyHow do we build it?

End

Unc

erta

inty

Wha

t do

we

build

?

High Low

Hig

hLo

w

Means UncertaintyHow do we build it?

End

Unc

erta

inty

Wha

t do

we

build

?

Agile aims to enable “hyper productivity” through close collaboration, self-organization, empowerment and focussing of the team and the stakeholders

TEAM WORK TAKES THE CENTER STAGE IN AGILE

➡ Peer to peer exchange of information➡ Collective learning➡ Collective responsibility (shared goal)

AGILE IS A PULL SYSTEM

THE CURRENCY IN AGILE ISSHARED UNDERSTANDING

Shared understanding

Product Owner

Developer

DesignerTester

Scrum Master

to improve efficiency & effectiveness➡ Keeping focus on (customer) value➡ Removing non valuable activities

(e.g. excessive documentation)➡ Optimizing the workflow & information flow to

achieve the shared goal➡ Attention to symptoms of overburden

(work with a sustainable pace)

LEAN THINKING

➡ Communicate fast and light (sketching)➡ Work in small continuous iterations➡ Collaborate actively across roles/silos

(participatory design)

MERGING AGILE WITH UX DESIGN

PARALLEL TRACKS, UX AHEAD OF DEVELOPMENT

UX research & ideation 3Collaborate on iteration 1

Refine design for iteration 2UX research & ideation 2

Refine design for iteration 1UX research & ideationCreate initial concepts

UX research & ideation 4Test iteration 1

Collaborate on iteration 2Refine design for iteration 3

Implement high dev low UI features Implement designs

Design 1b

Design 2b

Code

Test iteration 1 Provide input for iteration 4

Validate designProvide input for iteration 3

Validate designProvide input for iteration 2

Collaborate with designerProvide input for iteration 1-n

Customer data Customer data Customer data Customer data

Design 3b

Code

Design 1

Development environment setup

Design 2

Design 3

Iteration 0 Project initialisation

Iteration 1 Iteration 2Pre-project

Customer (Product Owner)

Designer

Developers

THE ROLE OF DESIGN HAS CHANGED

BESCHREIBUNG

AGILE ANTI-PATTERN:GENIUS DESIGN & THE "BIG REVEAL"

DESIGNER'S ROLE IN AGILE: KEEPER OF THE VISION & FOREMOST FACILITATOR

Product Owner

UX Designer

UX Researcher

Developers

Customer Service Rep

Users

Visual Designer

PROTOTYPING

VISUALIZE AND SHARE CONCEPTS

Ordered by visual & functional fidelity

MANY TOOLS AND APPROACHES FOR PROTOTYPING

Vis

ual F

idel

ity

Functional Fidelity

SketchPen & Paper

Interactive SketchesPaper Prototyping

Wireframe SketchPen & PaperBalsamiq

Interactive Wireframe SketchPaper PrototypingBalsamiq: Export to PDF or HTML

Proof of Concept PrototypeHTML (960 Grid System + JQuery)

"Clean" Wireframe / DiagramOmniGraffle

Interactive "Clean" WireframesAxure RP Pro

Rich Interactive "Clean" WireframesAxure RP Pro

Design CompPhotoshop or Illustrator

Interactive Design CompFireworks

"Production Ready" PrototypeHAML + SCSS + JQuery

Hybrid Wireframe / Design CompsOmnigraffle + Photoshop

➡ Audience➡ Intent➡ Familiarity and learnability➡ Cost➡ Collaboration➡ Distribution➡ Throwaway versus reusable

CRITERIA FOR PICKING THE RIGHT TOOL

SOURCE: TODD ZAKI WARFEL (2009): PROTOTYPING - A PRACTITIONER'S GUIDE, NEW YORK: ROSENFELD MEDIA

Fast, cheap Slow, expensive

Slo

w, e

xpen

sive

Speed & CostPROTOTYPING

Vis

ual F

idel

ity

Functional Fidelity

SketchPen & Paper

Interactive SketchesPaper Prototyping

Wireframe SketchPen & PaperBalsamiq

Interactive Wireframe SketchPaper PrototypingBalsamiq: Export to PDF or HTML

Proof of Concept PrototypeHTML (960 Grid System + JQuery)

"Clean" Wireframe / DiagramOmniGraffle

Interactive "Clean" WireframesOmniGraffle Pro

Rich Interactive "Clean" WireframesAxure RP Pro

Design CompsPhotoshop or Illustrator

Interactive Design CompsFireworks

"Production Ready" PrototypeHAML + SCSS + JQuery

Hybrid Wireframe / Design CompsOmnigraffle + Photoshop

➡ Shared communication➡ Working through a design➡ Selling an idea to stakeholders➡ Validating design➡ Gauging technical feasibility and value

USES OF PROTOTYPES

Different tools are suitable for different usesUSES OF PROTOTYPES

Vis

ual F

idel

ity

Functional Fidelity

Sketch Interactive Sketches

Wireframe Sketch Interactive Wireframe Sketch

Proof of Concept Prototype

"Clean" Wireframe / Diagram Interactive "Clean" Wireframes Rich Interactive "Clean" Wireframes

Design Comps Interactive Design Comps "Production Ready" Prototype

Hybrid Wireframe / Design Comps

Creating a shared communication”Is this what you meant?”

Working through a designDoes the system have all the features required?Which UX concept works best?

Working through a designDoes the workflow make sense at a high level?

Validating UX design direction with stakeholdersEvaluating the usability of proposed designs for new systems

Gauging technical feasibility and valueExploring isolated interactions as a proof-of-conceptSelling an idea to your boss or team membersValidating the implementation of requirements with stakeholders

Selling an idea to stakeholders

Communicating UI design / distributing design documentationSupplementing printed documentation for offsite development teams

Validating UX designPerforming usability tests with non-savvy user groupsEvaluating the usability of proposed UX designs for an existing systemPerforming remote testing

SKETCHING

➡ Sketchiness invites critique.➡ With unfilled "holes", interpretation is

necessary, which leads to new ideas.Opposite: High Fidelity➡ A High Fidelity UI Mockup says

"I'm full of finished, mature ideas".

SKETCHINESS

Sketching is useful...➡ as research tool➡ for working through a concept➡ for working through a design (wireframe sketch)➡ as shared communication➡ for validating UX design direction

SKETCHING USES

SKETCHING AS RESEARCH TOOL

SKETCHING FOR WORKING THROUGH A CONCEPT

SKETCHING WIREFRAMES FOR WORKING THROUGH A DESIGN

SKETCHING AS SHARED COMMUNICATION

SKETCHES BY STEFANO VANOTTI

SKETCHING FOR VALIDATING UX DESIGN DIRECTION

“CLEAN” WIREFRAME

Both widgets need to be of the same height...

DIAGRAMS

INTERACTIVE "CLEAN" WIREFRAME

HYBRID WIREFRAME / DESIGN COMP

LIVE SITEDESIGN COMP BY OLIVIER HEITZ

DESIGN COMP WORKING SOFTWARE

HIGH FIDELITY PROTOTYPES

SOFTWARE INCREMENT ON TESTING SERVERANNOTATED SKETCH OF A WIDGET

SKETCH WORKING SOFTWARE

CROSS-FUNCTIONAL PAIRING: INTERACTION DESIGNER + FRONTEND DEVELOPER

Why is this cool?➡ The sketch showed just enough intent as a

basis for estimating effort and as a starting point for implementation.

➡ No time was wasted for a detailed written specification (which can be misinterpretated).

➡ We both learned from each other during pairing and got a deeper understanding of the feature.

➡ The prototype was available for testing on the test server “immediately”, allowing feedback from real users quickly.

FROM SKETCH TO WORKING PROTOTYPE

Since they are relatively time-intensive / expensive, create HiFi prototypes only if necessary:➡ If your audience is the client, users or an

external development team➡ Selling an idea➡ Usability testing➡ Detailed design specifications

WHEN TO CREATEHIGH FIDELITY PROTOTYPES?

➡ Building software is a creative process. ➡ Designers have good tools for creativity. ➡ Adapt & learn!

TAKE AWAYS FOR DEVELOPERS

Recognize and accept the creative process of software development.➡ Yes, it's messy.➡ Yes, there is a "looping circularity".

It's how we learn and improve.➡ Take work-in-progress for what it is.

TAKE AWAYS FOR PRODUCT MANAGERS

➡ Keep focused on value - the actual user experience

➡ Remove non valuable activities - e.g. excessive documentation

➡ Be pragmatic - use whatever gets the job done➡ Visualize and share your work - invite valuable

critique

TAKE AWAYS FOR DESIGNERS (1)

➡ Get feedback often - ➡ catch glaring mistakes early,➡ foster shared understanding and ➡ collective ownership

➡ Every encounter is an opportunity to learn➡ Every encounter is an opportunity to hone your

skill in persuasion :-)

TAKE AWAYS FOR DESIGNERS (2)

If no design framework was established up-front, you will have late iterations for consistency.

DRAWBACKS / LIMITATIONS

➡ Rails team @ ZHdK➡ Team π @ Liip

TEAM THANKS

(P)

TWITTER.COM/PIPS1PS@VISUALPUN.CH(P)HILIPP SCHRÖDERMERCI!

- Bill Buxton (2007): Sketching User Experiences - Getting the design right and the right design. San Francisco: Morgan Kaufmann Publishers.

- Todd Zaki Warfel (2009): Prototyping - A Practitioner's Guide, New York: Rosenfeld Media

- Fred Beecher (2009): Integrating Prototyping Into Your Design Process - Using appropriate fidelity for the situation, http://www.boxesandarrows.com/view/integrating, last accessed 2012-09-05

- Jakub Linowski: Interactive Sketching Notation, http://www.linowski.ca/sketching, last accessed 2012-09-05

FURTHER READING & RESOURCES