User-developer cooperation in software development: building common ground and usable systems
Abstract
The topic of this research is direct user participation in the task based development
of interactive software systems. Building usable software demands understanding
and supporting users and their tasks. Users are a primary source of usability
requirements and knowledge, since users can be expected to have intimate and
extensive knowledge of themselves, their tasks and their working environment.
Task analysis approaches to software development encourage a focus on supporting
users and their tasks while participatory design approaches encourage users' direct,
active contributions to software development work. However, participatory design
approaches often concentrate their efforts on design activities rather than on wider
system development activities, while task analysis approaches generally lack active
user participation beyond initial data gathering. This research attempts an
integration of the strengths of task analysis and user participation within an overall
software development process.
This thesis also presents detailed empirical and theoretical analyses of what it is for
users and developers to cooperate, of the nature of user-developer interaction in
participatory settings. Furthennore, it operationalises and assesses the effectiveness
of user participation in development and the impact of user-developer cooperation
on the resulting software product. The research addressed these issues through the
development and application of an approach to task based participatory development
in two real world development projects. In this integrated approach, the respective
strengths of task analysis and participatory design methods complemented each
other's weaker aspects. The participatory design features encouraged active user
participation in the development work while the task analysis features extended this
participation upstream from software design activities to include analysis of the
users' current work situation and design of an envisioned work situation.
An inductive analysis of user-developer interaction in the software development
projects was combined with a theoretical analysis drawing upon work on common
ground in communication. This research generated an account of user-developer
interaction in terms of the joint construction of two distinct fonns of common
ground between user and developer: common ground about their present joint
development activities and common ground about the objects of those joint
activities, work situations and software systems.
The thesis further extended the concept of common ground, assessing user
participation in terms of contributions to common ground developed through the
user-developer discourse. The thesis then went on to operationalise and to assess
the effectiveness of user participation in tenns of the assimilation of users'
contributions into the artefacts of the development work. Finally, the thesis
assessed the value of user participation in tenns of the impact of user contributions
to the development activities on the usability of the software produced.
Authors
O'Neill, Eamonn JosephCollections
- Theses [4125]