the ux toolbelt for developers

52
The UX Toolbelt for Developers Sarah Dutkiewicz Cleveland Tech Consulting [email protected]

Upload: sarah-dutkiewicz

Post on 27-Jun-2015

404 views

Category:

Technology


2 download

DESCRIPTION

The UX Toolbelt for Developers, given at Columbus Code Camp on October 11, 2014

TRANSCRIPT

Page 1: The UX Toolbelt for Developers

The UX Toolbelt for Developers

Sarah DutkiewiczCleveland Tech Consulting

[email protected]

Page 2: The UX Toolbelt for Developers

What is UX?

Page 3: The UX Toolbelt for Developers

All About the Users

Page 4: The UX Toolbelt for Developers

The Breadth of UX

According to ISO, UX encompasses the following – before, during, and after use:• Emotions• Beliefs• Preferences• Perceptions• Physical responses• Psychological responses

Page 6: The UX Toolbelt for Developers

Image taken from Dan Willis’s UX Umbrella talk

Page 7: The UX Toolbelt for Developers

Convenience + Design – Cost =

User Experience

Page 8: The UX Toolbelt for Developers

Why should developers care? Without users, our software has no reason to exist.

More happy users means better chance of getting them to recommend our software to others.

While designers can make things look visually appealing, at the end of the day, if the functionality is awful, people will get frustrated and stop using a product.

Page 9: The UX Toolbelt for Developers

Tying UX to the Software Development Phases

Page 10: The UX Toolbelt for Developers

Software Development Phases Analyze

Design

Develop/Implement

Testing

Evolution/Finalize

Page 11: The UX Toolbelt for Developers

AnalyzeUnderstand the problem that needs to be solved

Page 12: The UX Toolbelt for Developers

To Analyze…. Figure out the content of the problem and how to tackle it

Get a better understand of the end users through user research and interviewing

Brainstorming ideas on the problem

Gathering requirements in terms everyone understands

Page 13: The UX Toolbelt for Developers

BrainstormingMind mapping tools

Page 14: The UX Toolbelt for Developers

Mind Maps

Page 15: The UX Toolbelt for Developers
Page 16: The UX Toolbelt for Developers

Site Maps

Page 17: The UX Toolbelt for Developers

Site Maps

Page 18: The UX Toolbelt for Developers

Tools Mind Maps

Xmind

Freemind

Flows

Dia

Site Maps

Balsamiq

Page 19: The UX Toolbelt for Developers

Personas

Page 20: The UX Toolbelt for Developers

What are personas? Fictional characters based on real users

Composites of research

Usually presented in 1-2 page documents

Page 21: The UX Toolbelt for Developers

Personas

JoséBusiness Owner

IreneOlder

Resident

SarahYounger Resident

Page 22: The UX Toolbelt for Developers

JoséBusiness Owner

What are the city’s demographics? Are they appropriate for me to bring my business there? What incentives do they have for businesses? Are there good networking or community opportunities for promoting my business?

Page 23: The UX Toolbelt for Developers

IreneOlder Resident

Are there any senior programs for me to participate in? What doctors and hospitals are there? Are there parks or places for me to walk?

Page 24: The UX Toolbelt for Developers

SarahYounger Resident

Where can I learn about the local school system? Are there any summer recreation programs for my kids to participate in when they’re older? How safe is the city for my kids to play in? What’s the diversity like of the residents in the city? Are there parks for my kids to play in? Will they be safe there?

Page 25: The UX Toolbelt for Developers

How These Help Developers Assigning personas to screens helps us to make sure the functionality is designed appropriately.

Sometimes, developers become empathetic with the personas, putting themselves in the personas’ positions. This helps them to realize flows easier.

Page 26: The UX Toolbelt for Developers

Features and Requirements Gathering

Page 27: The UX Toolbelt for Developers

Features During brainstorming, break a project into features.

Use the features to help write the code and determine tests.

Write the features in English with gherkin. Consistency Works on multiple platforms

Page 28: The UX Toolbelt for Developers

Gherkin Syntax

Page 29: The UX Toolbelt for Developers

Given-When-Then Cadence Consistent wording to describe a scenario

Given this known situation

When the user does something

Then something happens

Page 30: The UX Toolbelt for Developers

Tools Behat (PHP)

SpecFlow (.NET)

Cucumber (Ruby, gherkin syntax)

Cucumber-JVM (Java, including Android)

Page 31: The UX Toolbelt for Developers

DesignDraw out your understanding of the problem and your idea on how to solve it

Page 32: The UX Toolbelt for Developers

Designing a solution Things that need designing… User interfaces Interaction design Accessibility experiences Prototyping Processes

Tools that we can use as devs include… Balsamiq Mockups Wireframes.org Pencil Dia

Page 33: The UX Toolbelt for Developers

User Flows

Page 34: The UX Toolbelt for Developers

Wireframes

Page 35: The UX Toolbelt for Developers

Wireframes.org Built in templates

Wireframes, flow charts, etc.

Runs right in the browser

Page 36: The UX Toolbelt for Developers

Balsamiq

Page 37: The UX Toolbelt for Developers

Pencil

Page 39: The UX Toolbelt for Developers

Develop/ImplementWrite the application or script to solve the problem

Page 40: The UX Toolbelt for Developers

Things to consider in development We want as few clicks and as little thinking as possible

If everything is set up well, you can take a TDD approach. Using the gherkin from the “gathering requirements” stage Transition by writing a failing test for a feature Then make the test pass with the appropriate code

Keep it simple and easy to use

Page 41: The UX Toolbelt for Developers

TestingMake sure what you create is working as expected in order to solve the problem

Page 42: The UX Toolbelt for Developers

Things to see in testing Test to make sure the code is covering all the features – can be done in automated testing

Have users test and report issues – exploratory testing

Use focus groups to help test the app, and use heat maps and analytics to see how people are using the app

Page 43: The UX Toolbelt for Developers

Heatmaps & Analytics

Page 44: The UX Toolbelt for Developers

Heatmaps

Page 45: The UX Toolbelt for Developers

Google Analytics Track information about visitors including:

Time on site Pages visited Location Traffic source Browser usage

Page 46: The UX Toolbelt for Developers

Feedburner Used for tracking RSS feed subscriptions

Great for tracking people who read blogs in a feed reader

Page 48: The UX Toolbelt for Developers

Evolution/FinalizeRun through what’s done and release it and improve upon it

Page 49: The UX Toolbelt for Developers

Development is cyclical. Use these tools to improve your productivity and the quality of your work!

Page 50: The UX Toolbelt for Developers

Additional Tools and Resources

Page 51: The UX Toolbelt for Developers

Additional Tools and Methods in UX Field Research

Interviewing

User Tests

Usability

Accessibility

Copywriting

Graphics Design

UI Design