I’ve been involved in an agile development process for a new web application for the past several months. The agile process has been “by the book.” A scrum master conducts weekly sprints to review the tasks accomplished, get feedback and set goals for the upcoming week. It’s all very efficient and productive, except for one thing: users have been left out of the process.
After 14 weeks of sprints, the dev team began asking for end user feedback. As soon as that started, future users of this application started uncovering issues that had a direct effect on the dev work already completed and on the overall scope of the project. With the lack of some steps typically associates with the oft-maligned “waterfall” approach (specifically, defining requirements, prototyping and user testing before development work begins) the predicable started to happen. The “efficiency” of agile started to break down as users were brought into the picture.
What will be the result of these missteps? There may end up being two or three additional sprints (that’s two or three weeks of dev time) before the app goes live that could have been prevented by creating a prototype and doing user testing before the agile development process started. It’s the age old “an ounce of prevention is worth a pound of cure” in practice. The overall timeframe and development costs of the app would be reduced if a small team of UX designers did rapid prototyping and user testing first, rather than a large and expensive dev team taking weeks of extra time to fix issues uncovered in UAT that could have been prevented.
The moral of the story? There are ways to avoid agile pitfalls. User experience design best practices and agile development can and should go hand-in-hand. It’s not either/or. It can be both!