Licentiate thesis 2006-012

User-Centred Design and Agile Development of IT Systems

Stefan Blomkvist

7 December 2006

Abstract:

Despite the knowledge on the interaction between humans and computers, too many IT systems show great deficits when it comes to usability. Every day we run into technology that makes our every day life and our work unnecessarily complex and difficult because of the IT systems that are not designed to support our tasks in a usable way. This thesis deals with different aspects of usability and the process of how to develop usable IT systems effectively. Primarily, the systems concerned are used in professional work, such as case handling systems in large government organisations.

The main objective of this research is to understand which essential factors in the system development process that facilitate the development of usable IT systems. Another key subject is how Human-computer interaction (HCI) knowledge can be integrated into systems development, in particular the integration of user-centred design (UCD) and agile software development. The research is based on a qualitative approach and on reflections from my own experience in development projects. It also includes exploratory studies and design cases.

The attempts of bridging the gap between HCI and software engineering have not been notably successful in practice. To address some of these problems, there is a need for a more precise definition of user-centred design, which is proposed in the thesis. Also, the complicated reality of systems development is not considered enough by HCI researchers and practitioner. To reach better results, UCD has to be integrated as a natural part of the development process. In the thesis, I argue that the agile approach together with UCD can be a good starting point for this integration. The agile approach emphasises that responding to change in development is more important than strictly adhering to a plan. Also, it prioritises regular deliveries of working software over extensive models and documentation. However, from a HCI perspective, agile processes do not inherently provide the required support for user-centred design. Nevertheless, the basic values and specific methods of agile development may have the potential to work very well together with UCD. For instance, iterative development is fundamental to both user-centred design and agile development.

Finally, the research addresses how iterative methods can be used to find design solutions that support the users to cope with the problems of overview and control in case handling work.

Available as PDF (2.75 MB)

Download BibTeX entry.