All people are different. In bazillion ways. Some are young, some – old. Highly educated or just in pre-school. Some like cats, others like dogs. Some have an iPhone, others use an Android phone.
When we build software we most often build it for someone else to use. And the people that use that software are different from us. They know different things, they expect different things, and they like different things.
So you cannot possibly expect that when you build a feature, everyone will know how or why to use it. If you bet on a wrong design people will simply tell you that your software sucks. And even worse – they’ll not use it.
What can you do about that?
When designing your solution, try to step into the shoes of your users and try to see the world through their eyes.
One of the ways to do this is by using a method invented nearly two decades ago. It is called personas.
Personas are a description of the typical users (or user types) of your software. The description should include 2 things:
Based on that knowledge you can make important decisions about your product. E.g. if your persona is a highly skilled IT professional that is using a specific and highly specialized tool (like Visual Studio), you can assume that he/she can handle a more complex interface with a lot of functionality. As opposed to your grandmother, for example.
First – decide who your main types of users are.
When you’ve defined your key personas (usually 1-2 up to 5 are enough) – research them and describe them. The best way to gather valuable data is to go out and see where users work, observe how they actually work and get first-hand information.
If getting first hand impressions is not easy, then you can:
Make sure each persona:
Example:
Go to uxmatters to see details. - http://uxmag.com/articles/personas-the-foundation-of-a-great-user-experience
Using personas in an Agile environment actually makes a lot of sense, because:
It is no coincidence that personas are so engrained in the story writing format. Here is an example from the TeamPulse backlog:
As a Product owner I (Joel) need a way to track and manage my product ideas, so that they are not lost or forgotten.
Here, the persona is Joel – our imaginary product owner type of user.
TeamPulse provides an easy and intuitive way to define your personas and relate them to your user stories by simply assigning the persona to the work item in just a click.
The tool also shows how many user stories are related to a particular persona, so you never lose the big picture.
In addition to that, you can filter any TeamPulse view by a particular persona. That means that you can easily extract from your backlog only the user stories for a particular part of your target audience.
The new version of TeamPulse just got released on October 29th. Among the other new features are also Git and GitHub integration, REST API, Team Reports and Pass/Fail Visual Indicators for Acceptance Criteria.