Abstract
Participatory design (PD) and task analysis (TA) have each been widely promoted as amerlioratives to the problems of developing systems hat meet users' requirements. However, PD methods have tended to focus on design per se, rather than also promoting user-developer cooperation in upstream analysis activities. TA methods have promoted these upstream activities but largely failed to involve users directly in the analysis and modeling work. Hence, there is a need for a broader approach encourages user–developer cooperation throughout systems analysis and design activities. This article examines the support for user-developer interaction provided by representations of users' tasks and software designs in 2 real-world software development projects that followed a task-based cooperative development approach. In the course of the system deve1oprnenat work, h e representations were called on to serve a number of different purposes. Task model and paper prototype representations facilitated the development s f cowmen ground among h e members of the development team through h e provision of an external shared model of the object of the development activity and helped to delimit an interaction space in which the cooperative activity was conducted. Weaknesses of the representations as supports for cooperative development included users' reluctance physically to amend the representations and the very strength of common ground developed between the participants that was not explicitly represented in the external models.