by Mona Singh, Ph.D.
The last few years have seen a much welcome move towards the adoption of user experience design (UX) and Agile development. Although both these fields have been around for a long time, their recent concurrent introduction into software development organizations has led to some interesting and unexpected process enhancements. I describe one such recent enhancement of the Agile process and assess how effective it is in practice.
The latticed approach
Often, the process that Agile organizations have followed for incorporating UX is running the design and development sprints concurrently. In essence, the design sprint feeds the development sprint and the development sprint feeds the next design sprint by providing something testable. That is, design Sprint 0 feeds into development Sprint 1 and development Sprint 1 feeds into design Sprint 2. The diagram below, adapted from Krtizberg and Little, summarizes the current processundefinedhence, the name latticed.
This process presumably creates a win-win situation for UX professionals and developers: the developers get a clear specification for what they need to build and the UX professionals get software that is user-centric.
So what’s wrong with it?
Well, if you look closely, you see this approach is what one might call a short waterfallundefinedthe way the design and development sprints are structured misses out on benefiting from the communication and collaboration between the design and development teams. As a result, the design produced in a particular design sprint may suffer from technical problems that make it expensive to implement or otherwise suboptimal. The waterfall flow quickly breaks down and the finger-pointing begins. Even when there is no overt disagreement about a design, the development team can feel left out of the design process. I have seen various manifestations of the tensions that arise between the design and developments teams, including majorly bloated effort estimates and unnecessary criticisms of the design.
The collaborative approach
Instead, shouldn’t the team be a multidisciplinary? An alternative process is where the UX and development teams work within the same sprint. All user stories are organized within the same backlog. This approach fits the Agile philosophy much better than the lattice approach in that it brings teams together and fosters communication between designers and developers.
User stories look like the following:
Both the developer and the UX designer can work together on a story discussing potential designs, prototyping, developing, and even testing. When the developers are made a part of the design decisions, there is a tremendous benefit due to the resulting buy in. Isn’t that what agile was all about anyway: communication!