I am starting working on project planning application, which the client wants to develop using the agile model. I want to understand how can i take the requirements and convert them to the usual UX deliverables. Can someone tell me about Agile UX as it relates to how we adjust/tweak all UX activities to an agile development process? I specifically want to know how we can turn UCD in to an agile process that supports the development activity.
I would strongly recommend reading this excellent article on smashing magazine on Lean UX,to paraphrase the article:
Lean UX is the practice of bringing the true nature of our work to light faster, with less emphasis on deliverables and greater focus on the actual experience being designed. Traditional documents are discarded or, at the very least, stripped down to their bare components, providing the minimum amount of information necessary to get started on implementation. Long detailed design cycles are eschewed in favor of very short, iterative, low-fidelity cycles, with feedback coming from all members of the implementation team early and often. Collaboration with the entire team becomes critical to the success of the product.
From my experience ,here are some of the key aspects which you should be aware of :
- Keep the customer in the loop always about changes and design processes
- While designing anything ,always remember that since you have a short sprint cycle,you need to be aware of the technical details of how hard it is to implement.Hence an understanding of the technical constraints or preferably a close collaboration with developers during the initial design phase is very helpful
- Keep documentation to a minimum but don't discard it altogether
- Constantly keep getting feedback and look for the shortest route to maximum return i.e. if you can implement a solution in a number of ways,look for the simplest way as opposed to the most complex way
- Keep your management informed about changes and any new discoveries,I cant stress this enough,so many times you might find that your iterative testing has resulted in a complete turn around in the design process and the lack of communication with your management often puts you in a tight spot
- While defining sprint cycles account for external dependencies such as users not being available for usability testing or key stakeholders taking vacations or not being there to provide their views
I'll admit what I said is applicable to any software design life cycle but I felt these were particularly important when looking at incorporating UX into a agile process
Here's the short answer for understanding agile:
- Agile requires constant feedback.
- Your designs should reflect the change according to the feedback received.
Follow the above steps in cycles, until there are no changes and you can freeze your work-done and proceed with another scenario.
Everything else is just an add-on. If you can keep up with these two rules, you sure have arrived at being agile.