User stories in practice: a distributed cognition perspective
User stories are a simple and direct way of creating and managing software requirements. They are widely used in contemporary practice. This widespread adoption suggests they are providing some benefits when compared to previous methods of managing requirements. But are these benefits realised in practice? If so, can these benefits be explained?
This thesis seeks to address these questions by studying how software development teams use user stories in practice and identifying benefits and challenges. The approach proposed in this thesis is to take the view of user stories as part of a Distributed Cognition system that has a goal of developing requirements and implementing these in a software application. In this perspective, the Distributed Cognition system can include any interactions between people, artefacts and aspects of the environment that contribute to these cognitive goals. Distributed Cognition theory is then applied to the user story process to identify cognitive activities distributed through the system and provide some insights and explanations related to practice, benefits and challenges from this perspective. Examples of these are: • As the cards are of roughly equal units of effort, they can be used to illustrate sprint status; • Using the story wall changes what had been an intensive cognitive process into a perceptual one; • Keeping the wall meaningful – up-to-date and easily perceivable.
In addition, this thesis documents the user story process from semi-structured interviews with practitioners within an organisation. This detailed description will provide data for a “light” Distributed Cognition analysis compared to the traditional ethnographic approach used by other Distributed Cognition researchers. It is a “light” Distributed Cognition analysis in the sense that the analysis of the interview data limited in the cognitive interactions that are uncovered compared to data based on observation of the actual events. This thesis, however, posits that by appropriate interview question design and the flexibility offered by follow-up questions, the interviews will provide sufficiently rich data on the Distributed Cognition interactions between people, artefacts (such as user stories) and the environment to provide insights into the user story process from a Distributed Cognition perspective. This “light” approach has the major advantage of being less obtrusive than observation, and so, generally, has a lower acceptance threshold for participating organisations. This study used the Distributed Cognition of Teamwork method to develop three models –Information Flow, Artefact and Physical. Part of this study is a review of the limits of the interview data for a Distributed Cognition analysis. The results suggest that interview data for the Information Flow and Artefact themes is adequate to provide insights into how this organisation uses user stories. However, the Physical theme is less detailed.