How UCD & Agile play nice

Below is the answer I posted in response to the question “How do UX practices fit with agile development practices?” on Quora.

My team has had great success leveraging UCD and Agile in combination. (Disclaimer – we are using the spirit of both processes, not the formal execution of both). Here’s how we commonly work.

  1. When planning iterations, we focus on defining high-level user stories and work with the business to prioritize those stories. Note – we include refinement user stories as well as new features.
  2. Once we have business priorities, the team (UCD & Dev) discuss the high-level user stories to gain agreement on what seems achievable in the next iteration. This may or may not include a round of planning poker but it does really get at estimating & sizing based on complexity, resources, and time. The key here is that both UCD & Dev understand which elements they have dependencies on one another for.
  3. We then present a recommended scope for the iteration and gain agreement with the business.
  4. Once agreement on the high-level user stories is gained, we work to detail those user stories with more granular requirements (ability to… ).
  5. As we enter the iteration, UCD goes deep on UI and design elements impacting the user experience by iterating on mockups and seeking user feedback on designs. Meanwhile, dev starts on the technical or architectural tasks.
  6. As UCD firms up the UX designs, the dev team can leverage the mockups as guidance for the front-end and point out any unexpected technical issues as necessary.

We’ve found this process allows a great amount of flexibility to evolve the designs as we learn more through validation with users.