I’m running across a new problem with a number of clients and wondering if my user experience colleagues are having similar issues. The advent of web applications has resulted in a change for many software providers in the way they release software today.
Agile software development is a method in which software is designed, examined and delivered to the market swiftly, so that end-users can provide feedback and more feature changes can be made and adjusted within a few months time, rather than once or twice a year. For off-the-shelf software, such as Adobe, Apple or Microsoft products, this is not as practical a method as it is for web-based services. I’m not sure if large corporations have employed any Agile methodologies or not. The Wikipedia entry describes my issue perfectly:
Agile chooses to do things in small increments with minimal planning, rather than long-term planning. Iterations are short time frames (known as ‘timeboxes’) which typically last from one to four weeks.
So here’s the problem: I am often called in to redesign an existing product, that was designed primarily by developers and managers, and not by an interface or interaction designer, or with consultation by a user experience design specialist who could point out workflow and related product issues, as well as design a product brand identity. And that’s great – this is one of my favorite things to do. Redesigning a product is sometimes easier for me than designing one from scratch, because I can see the technology working – it’s like a live prototype to play with. To take an unpolished, but great idea, and make it even better for the users it was built for, is a lot of fun for me.
Historically, I come in, look at a product, talk about the business and marketing goals, and craft a “big picture” plan for the product line identity, interface design, workflow, help systems, etc. and then the big picture gets broken down into phases and tasks. But look at the Agile description again: minimal planning, small changes, releases every 1-2 months. That allows for feature by feature adjustments, not a total redesign of the workflow, layout, navigation systems, etc.
What’s a user experience designer with a great idea of how to make this product in front of her better, to do now? I don’t have an answer to this yet. I think when it comes to restructuring the workflow of a product to make it significantly better, executives need to understand there is a time for Agile, and a time to redesign, and redesign efforts take more in the range of 2-6 months to complete, in my experience. It all depends on how much is “surface” redesign, such as moving things around on the pages and creating a nicer look and feel vs. how much the deeper code has to be modified because features need to work completely differently than the developers designed them.
As is our habit in the software industry, we tend to look inward and not outward when creating processes that are supposed to make our business run better. Do we need the internal motivation of a release every 4-6 weeks to make things happen? Customers don’t necessarily demand a release once a month, they just need bugs fixed and problematic features redesigned so they can perform their tasks better. Can we design an Agile process that is flexible enough to allow for large-scale design changes when they’re needed? Why do we have to release something once a month?
How are you handling this issue, user experience designers? I’d love to hear your advice and stories on how to combine Agile with big picture design or redesign approaches. A List Apart offers a wonderful article on Agile Design (below) but doesn’t really answer the “how” to make it work that I am struggling with. Is persuading executives to give me the time I need with developers to make the software better, the only answer?
More Agile & User-Centered Design Thoughts…
- The Agile Manifesto
- Getting Real About Agile Design by Cennydd Bowles
- Human-Centered Design Meets Agile (presentation)
- Agile User-Centered Design (discussion thread)
- Are Agile Projects Doomed to Half-Baked Design? (presentation)
- Agile Development Process & User Experience Design (interview with Charlie Kreitzberg) ”Certainly the developer’s view of a software product is very different from the experience of end users. As a result developers may not see some user experience issues as important. And Ux is concerned with engagement and relationships.”
- User Experience Design vs. Agile Development (presentation)
- 12 Emerging Best Practices for Adding UX Work to Agile by Jeff Patton