If we want to build successful apps and games, design is by all means one of the most important aspects we should consider. I’ve recently come across a discipline called Lean UX (“user experience”) which has been quite helpful to help us at Zenva to address the design of our products. This tutorial is intended to get you up and running with all the basics of Lean UX and how you can apply it whether you are in a team or by yourself.
Lean UX (“user experience”) is an approach to product development proposed by Jeff Gothelf and Josh Seiden that allows for faster, less wasteful and more collaborative work. The focus in this methodology is on validated learning (testing hypothesis against real world data), outcomes and product experience rather than producing tons of design documents just for the sake of it.
Elements from other methodologies are used under this approach (which is well, the norm when it comes to human progress). These include Lean Startup, Design Thinking, Customer Development and Agile software development.
Let’s get started!
1. Roll like it’s 1637
One of the core elements on the Lean Startup methodology which is also taken into Lean UX, is doing something as simple as separating imagination from reality, a.k.a. declaring our assumptions and hypothesis out loud. We have to make a problem statement, define exactly what problem we are trying to solve and for whom. Phrases like “people will buy my product because they’ll find it useful” should be replaced by “assumption 1: people have X problem”, “assumption 2: this product will solve problem X”, “assumption 3: people are willing to pay for a product that solves problem X”. Basically everything you believe beforehand is an assumption and is a fact only in your imagination.
See where I’m going? after declaring these assumptions your mind will intuitively switch to thinking of experiments to “test” the assumptions, so you need to write them down and state how you will know that these assumptions are true (e.g.. “I will know assumption 3 is true after having 10 potential customers buying the product in advance”).
Determine which assumptions are critical to your business model and focus on testing those first. If they turn out false you might as well modify your idea or find a new one.
This is simply applying the scientific method as defined by Rene Descartes in 1637.
2. Personas, and I’m not talking about Firefox themes
A useful technique to put ourselves in the shoes of our future users is to create “Personas”. Think of them like a cartoon in a piece of paper. You give it a name, age, gender, nationality and write down their characteristics: what problems they have, what products they consume, and how you are going to rock their world. This should be a collaborative excessive.
After you make your personas go out of the building and talk to real people to test your assumptions. After a few conversations you will most likely update your Persona descriptions to a “tested” version. Put them on the wall.
3. Collaborative Design
Design should be a collaborative exercise. Don’t get me wrong, I love designers and their skills, but the process needs to have early input from all other parties involved such as developers and business people.
There is a technique called Design Studio, which begins with the problem statement. What problem are we trying to solve in this session. Afterwards, all team members write down or sketch ideas on how to solve it (on their own). Once finished, each person presents their ideas and get feedback from the rest. This loop is done a couple of times, after which the team has to converge on the solution that will be implemented.
An important thing here is to allow everyone to have a talk and keep the ninjas and rock-stars from being too alpha and stealing the show.
4. Style Guides
This is actually one of my favorite parts of this methodology, and it consists in creating a single document that contains all the UX elements of the app / webapp / game. This includes buttons, menus, tables, the color palette used, etc. It can be an image file or an actual HTML with the code of the elements. You can even go further and have working UX elements such as AJAX forms, dialog boxes, etc.
The whole point of the style guide is that once all the GUI elements are there, the team discussions will not cover aspects such as what kind of menu or layout should be used, but instead they will focus more on the solutions to the problem.
Having a coded style guide also allows developers who are not good at graphic design, to just copy and paste the different elements so that the screens they make look good and have the same look and feel as the rest of the application.
You can even make the style guide share code with the application so that when you update it’s elements, the elements in the application get updated as well automatically. A true productivity boost here.
5. Go MVP
A key concept here is that of the Minimum Viable Product (MVP), which is the simplest product you can have out there so that you can test an assumption and obtain validated learning (something like XP points that make you wiser). You can have something as simple as a clickable Power Point presentation that simulates the app and allows you to test a certain aspect of your idea, or something more elaborate such as HTML5 coded version of the app.
The important thing is to firstly have in mind what exactly are we trying to test, then design the experiment with a prototype and some real users, after which you can obtain those XP learning points :p
Some tools you can use:
6. Learning process and iterations
The whole point here is to iterate as you gain validated learning and improve your product. You begin with prototypes and they slowly become real products as you test your assumptions and get green lights from them. It is important to define a set of metrics as well that will guide our process. Are we trying to maximize the number of downloads? or total users (free + paid)? paid users only? engagement? etc.
7. Implementing Lean UX
Implementing this methodology might cause a few headaches if you have a team who already has it’s own way of getting design done. You may want to begin with a few elements at a time such as the problem statement and collaborative sessions. Also, Lean UX is compatible with Agile methodologies such as SCRUM. You will need to do your own tweaking according to your own circumstances. If you work on your own you can still apply most of these guidelines.
–Jeff Gothelf & Josh Seiden (2013). Lean UX: Applying Lean Principles to Improve User Experience.
-Eric Ries (2011). The Lean Startup.