The importance of user experience, or UX, is widely recognized in all development environments, but in the enterprise, adoption of agile UX principles has taken a longer time. Adoption of agile development methods continues to rise. But the rapid and flexible approach of agile presents challenges to development teams in enterprise-scale organizations because it conflicts with the traditional methodologies in use, including those in UX design cycles.
As a UX lead, I've collaborated with people throughout the chain of development, and I've encountered many challenges in getting UX design cycles to fit in with rapid agile development cycles. These challenges have included meeting the demands of many teams, working with new and innovative products, along with older legacy products, and being attentive to customer feedback. Here are a few insights and suggestions from my own experience that you can use to facilitate the UX process.
1. Prepare for the project initiation spike
In agile, everyone is in a hurry to start development, compared to waterfall, in which organizations spend months on design and planning. This is a good way to get products out the door and onto customer screens, but it's important to lay a solid foundation first in order to avoid expensive and risky changes at later stages. This is especially true for enterprises where products involve many stakeholders and changes affect many teams across the organization.
Agile development teams tend to believe that up-front planning can be skipped and dealt with along the way. Even in agile, it's crucial to have a good understanding of a project's goals and requirements, both for the upcoming release and for the long-term vision (even though that may change in the process). UX also needs to be a part of the project's functional planning. You need to understand the product's position in the market, devise high-level usage scenarios, understand the fundamental business entity types, and if possible, conduct research with potential users.
Preparation at the beginning of the project cycle (a "spike" in enterprise-agile language) doesn't conflict with agile methodologies and reduces the risk of developing the wrong infrastructure or making UX compromises down the line. The precious time spent preparing will be appreciated once development gets underway. The process is similar to building a house: before you lay the foundation, you need to define the purpose of the house and determine whose purpose it will serve. Then you can scout out locations. You can plan, build, and alter the rooms and interior structure along the way.
2. Encompass the past, present, and future in every cycle
Once you get into development, your development teams need a detailed flow and content design for each cycle. Following the house-building analogy, this is where you plan the entrances, rooms, and interior decorating. At this stage, I recommend following Lynn Miller's best practices for running four parallel tracks of UX and design in each cycle:
- The past: Test the previous cycle's implementation
- The present: Collaborate with development teams to support work currently under development
- The next step: Provide a detailed design and validate prototypes for the next cycle
- The future: Research and gather input from customers and stakeholders for future cycles
3. Get UX and development teams to collaborate
To work effectively, both UX and the developers must understand the issues each side faces and learn how everything fits together. The UX expert should understand developer language and be embedded in the development teams. This makes the UX more accessible to the developer and gets UX issues addressed on time. It also helps promote UX skills within the development team. Developers should learn the basics of UX in order to understand the importance of usability and learn to follow UX guidelines.
4. Think of UX development as a generalized agile capability
Enterprise agile UX teams work in parallel with other teams associated with multiple products. These include both legacy products and new products. The benefit is that you get a bird's-eye view of things, so you can ensure that the company's overall product line is consistent, suggest solutions devised by one team to another, and design good interfaces between products that have to work together. However, it also presents a significant challenge in terms of time management, and you run the risk of developing a bottleneck at this stage.
But there's a solution. I've found that some developers have a passion and talent for UX. When I can't assign a dedicated UX resource to a team, or when the UX resource is over-tasked, I assign developers who have a penchant for UX as "UX Devs" and engage them in some of the detailed UX planning. This is very much in the spirit of agile development, which promotes generalization, and everyone benefits. The UX developers feel satisfied with their work, the development team gets its detailed designs on time, and the UX team can focus more on higher-level cross-product design while overseeing the details.
5. Practice collaborative brainstorming
In discussions between project stakeholders and team members, the winning opinion typically goes to the person who holds the most senior position—winning solution or not. But team members can use collaborative brainstorming sessions to take advantage of their collective experience and creativity, which benefits everyone. These sessions also help everyone feel like they've contributed to the solution—they're also fun and great for team building.
There are many ways to conduct collaborative brainstorming with both remote and local teams. One way I like to go about it is to state the problem, have all participants pitch a solution, and let everyone discuss the pros and cons of each suggestion (discuss the pros first so you don't kill ideas too quickly). Once everyone has had a say, the process leader gathers all the input and provides direction on how to present and refine the ideas.
Agile UX that resolves the UX design process with agile methodologies is possible. With good preparation, parallel cycles, collaboration with the development teams, help from UX developers, and collaborative brainstorming, you can come up with great designs and stay in sync with the rapid cycles of agile development to produce outstanding outcomes.
Keep learning
Take a deep dive into the state of quality with TechBeacon's Guide. Plus: Download the free World Quality Report 2022-23.
Put performance engineering into practice with these top 10 performance engineering techniques that work.
Find to tools you need with TechBeacon's Buyer's Guide for Selecting Software Test Automation Tools.
Discover best practices for reducing software defects with TechBeacon's Guide.
- Take your testing career to the next level. TechBeacon's Careers Topic Center provides expert advice to prepare you for your next move.