Can agile development deliver a great user experience?

How far will just-in-time design really get you in creating a great user experience?

By Niki Dare, Asynchrony Solutions |  Software, agile development

The Agile development process boasts doing activities just-in-time to mitigate waste and allow for requirements to change even while code is being written. Just-in-time design can work in cases where a high-level design or concept has been created and approved. It is easy to add an additional screen to an application with a well-thought-out user experience. But doing true just-in-time design can run the risk of losing sight of the big picture and creating a disjointed user experience or having to rework previously developed screens when new ones are added. I think just enough design work creates a better, more cohesive end user experience, saves time in development and ultimately saves the client's money for adding in even more features.

As far as just-in-time usability is concerned, we must operate within each project's specific time constraints. Formative testing can be conducted rather quickly and in-sync with shorter development cycles. There is no question that if the user is satisfied with the proposed system before it is built then there will be less rework when the software is released. Summative testing requires a couple of weeks at least; especially if it is being conducted on a system that wasn't user-centered in the first place. A system can be dramatically improved from the results of summative testing, especially the first few rounds. Summative testing must be done after development of a feature or task flow is complete so that the user experience is cohesive and able to be tested by end users. The only aspect of a summative usability test that I would even consider to be just-in-time would be acting on the results of the test in the next possible iteration, above any new features.

I have yet to discover a blanket strategy for seamless integration of design and usability into the agile development process. I think the best thing to do is understand the needs of your client and development team the best that you can and then start trying things until you find a good fit. Don't be afraid to throw out an idea if it isn't suiting everyone's needs. The road will be bumpy, but don't give up. Your users will thank you for thinking about their experience.

About the author

Niki Dare is a Certified Usability Analyst with more than 10 years experience in software design. She currently leads a team of User Experience Designers and Certified Usability Analysts at Asynchrony Solutions. For more information on this topic or other related issues, visit

Join us:






Answers - Powered by ITworld

Ask a Question