I’ve worked with Agile projects for over half of my 16 year UX career and with each new team and situation I continue to learn new things and face different challenges. This past week I presented “Making Faster UX in an Agile World” at the Heart of Agile Conference here in Pittsburgh, PA. That presentation drew on the lessons I’ve learned, tutorials I’ve taught with wonderful collaborators on the topics of UX and Agile as well as seminal works on the topic.
The four primary actions that need to occur to enable teams to be successful in integrating UX are:
- Everyone on the team understands the primary users
- Problems are solved with the simplest solution
- Collaboration is encouraged
- Team is thinking ahead
I talked about these four actions at the Heart of Agile and I’ll discuss them further here.
Increased understanding of users
The entire team needs to understand who they are creating a product for, what the primary goals and needs are for those users and what problems they are trying to solve. When the entire team is aligned on these points, they are more likely to convene on a solution that is helpful to those users and be more successful overall. Being able to recognize who is not a primary user and who IS a primary user is key to success. It is impossible to design for everyone. When team members have differing ideas of who they are building a solution for, the result shows that incongruity via an ambivalent experience. No one is happy with the experience and it won’t do anything particularly well. Focusing on a specific type of user, with specific goals, needs and a problem space empowers the team to use the correct language and meet their needs appropriately. Secondary users will also benefit from a clear and unambiguous interface.
Solving problems with the simplest solution
Identifying what problem you are solving is often the hardest part and the point at which projects often begin to fail. Your users problem will not be solved with a specific technology or the placement of a button. Rather, by understanding the actual problem, you will be led to making the right technology and UI decisions and make a good user experience.
For example, your user’s problem may be that they need to make sure they are complying with all legal statutes related to their business. If this is determined to be in-scope for the product, you’ll need to decide how to solve this problem. Their problems are not:
- Logging in
- Clicking next
- Uploading docs
- Filling out a form
The interface may require they do all of this, and you need to make sure they can get through those steps in as simple a way as possible so that during and at the end of their experience they are confident that they have achieved their goal. If successful your user in this situation should be able to state that the system you built has helped them to be confident that they are in full compliance with legal statues. When recommending the product, they will not state that they were able to log in, or do one of the other necessary tasks to complete their goals — however, they will complain if they cannot do those things easily.
Working to approach these problems together will help build empathy for each other as well as shared understanding of the work. There are many ways collaboration can occur. One of the most effective ones are co-design activities with the entire squad/team (or at least representatives of the teams). This includes people with primary skills as developers, product owner/managers and designers working together on various activities. This can include early sketching to talk through a problem, conducting task analysis, and story mapping. It is important to have the entire team together in a room (or virtually) to talk through the user’s problem so that all of the relevant user’s experience, technical constraints and business needs can be considered and that information is available to the team. By exchanging information in real-time and working through a solution together, there is a shared understanding and huge time savings. These types of activities can reduce the time to build, but the benefit of working through all of the potential issues quickly usually saves time.
Usability testing is another activity that should be viewed as an opportunity to collaborate with the entire team. Everyone can actively observe the study and help to determine the major issues to address and how to reduce future issues. Team members can offer to greet participants (for in-person studies), help to operate software/recording equipment, take notes and then participate in post-study analysis by sharing their notes. Participating in these sessions will increase empathy for the users and team members will be able to better understand both the user’s struggles and what works. While usability testing takes time and the sessions are not all wonderfully helpful, this activities benefits outweigh the downside. Customer visits are the most time consuming activity, but also the best way to increase empathy of users. The team may see the users work space, how they use the existing solutions and can identify latent needs through their observations.
Think ahead to solve problems
A successful product will always have more work — thinking ahead about what that work is, how the product will mature, and what will be next for the product lifecycle, is important to avoid making bad design choices. When I say thinking ahead, that does not mean BDUB (Big Design Up Front). This is doing just enough thinking to potentially solve the problem in a way that doesn’t break the user experience. This type of work does not require wireframes, but rather is a visioning task completed with story maps and concept cars describing a high level interaction. These activities help to create a vision for the product and help to ensure that as it changes, it is being done in a way that is most helpful to the users.
Every team is different and while everyone can benefit from these four actions, there are many more that may be needed to enable your UX team to perform to their utmost potential. Trying different things, figuring out what works and repeating it to gain efficiency is all part of working in Agile. By removing ambiguity with regard to the users, focusing on simple solutions, encouraging collaboration and thinking ahead, the team will be able to focus on creating great user experiences.