Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ


Choose your language

InfoQ Homepage News Agile UI Development: What's the User Experience?

Agile UI Development: What's the User Experience?

When web- and UI- developers first hear about Scrum or XP, they are baffled: what kind of user experience will we get using this iterative approach?  In his InfoQ article Agile User Interface Development, Dave Churchville, founder of ExtremePlanner Software, looks at how teams can beneficially combine Agile software development with another approach that has emerged over the last decade: user-centered design (UCD, also referred to as interaction design). These approaches are lauded by their respective supporters as critical to end user and customer satisfaction, but they seem to be at odds on some key points.

Many Agile projects rely on the ability to "just fix it in the next iteration" as a hedge against making the wrong decision. The idea is to fail quickly while it is still relatively inexpensive. But end users of UI development projects can be intolerant of contant and dramatic changes in the user experience.

On the other hand, user experience disciplines such as interaction design promote a more up-front design process that researches and captures user goals to attempt to optimize software workflow before development begins. This is somewhat in conflict with the Agile approach - this upfront analysis and design can often take several months for a non-trivial project, and user goals may shift as the project unfolds.

Churchville has first hand experience with the business value of good useability:
I remember my first job, where we were creating really sophisticated software that solved problems effectively, but did so in a pretty clunky way.  A few years later, competitors were solving those problems less effectively, but in a streamlined, easy to understand manner, that we just couldn't compete with.  That really opened my eyes to the importance of the whole package - not just the technical superiority of the solution.

I spent the early part of my career building great technical solutions that didn't make customers happy.  I realized that the little things really did matter, not just to make things look good, but to make using the software a pleasure.... Little touches that delight the users, instead of merely satisfying them.

I'm not talking about gold-plating features, but rather looking beyond the customer requests, finding the root of the problem, and designing solutions that  really work for people.  This has to be done in close collaboration with the customer, but you can't expect the customer to always know the best way for you to solve their problem.
Understanding how to really satisfy user goals while simultaneously focusing on delivering frequent and continuous business value is a combination that yields business value by differentiating the resulting product. 

Churchville's InfoQ article Agile User Interface Development explores how the two disciplines can peacefully co-exist. By considering ways to integrate UCD techniques into an Agile project lifecycle, development teams can get the benefits of both approaches.

Related news: User-Centric Development Approaches: What's Next?

Rate this Article