Interaction Design and Agile Development: a Real World Perspective
Although both agile development methods and interaction design aim to build quality software that meets the user's needs, each approaches development from a different perspective. Agile development methods describe activities addressing the coding (and in some cases the process management) part of software development, whereas interaction design methods describe activities for developing that aspect of the software that will be perceived by the user. Agile development and interaction design each have little to say about the other, despite the reality that both approaches are combined in practice. There has been little investigation into how the two processes work together, and the issues that arise. To aim for a better understanding of practice, we conducted grounded theory research about real-world software teams who combine interaction design and agile development. The results provided insights into interaction design being done up front (before implementation begins), the structure of the development iterations, the effect of incorporating interaction design techniques into the agile development iterations, as well as the role of the interaction designer on agile teams. The analysis also highlighted areas that may benefit from further research.