User Stories for Agile Requirements
The technique of expressing requirements as user stories is one of the most widely applicable techniques introduced by the agile processes. User stories are an effective approach on all time constrained projects and are a great way to begin introducing a bit of agility to your projects.
In this session, we will look at how to identify and write good user stories. The class will describe the six attributes that good stories should exhibit and present thirteen guidelines for writing better stories. We will explore how user role modeling can help when gathering a project’s initial stories.
Introduction (15 minutes) This lecture-only section provides an introduction to what stories are. Its primary purpose is to provide a quick overview of the topic and establish a common vocabulary for the rest of the tutorial.
User Role Modeling (50 minutes) There are two parts to user stories: users and stories. In this section we focus on the users by identifying common “user roles” across the population of users. User roles, similar to actors in a use case model are identified, organized, and consolidated through a series of exercises in this mostly hands-on segment.
Gathering Stories (60 minutes) In this section I introduce the problems with typical approaches of asking users what they want and how having a problem does not necessarily qualify a person to know how to solve the problem. From there we move on to approaches to getting around this problem and discuss story-writing workshops for identifying user needs. Almost half of this section (25 of 60 minutes) is spent in small group exercises.
INVEST in Good Stories (45 minutes) By this point, participants have written some user stories but they do not necessarily know the difference between a “good user story” and a “bad user story.” The first part of this section is a lecture and introduces six attributes of good user stories. The attributes are summarized by the acronym INVEST. The “S” in INVEST, for example stands for Sized Appropriately and participants are given very specific guidance on how to split large user stories into smaller ones. During the last 20 minutes of this section the small groups review the stories they wrote earlier and look for opportunities for improving them based on the INVEST attributes. The section concludes with a class discussion of some of the improvements found by the various small groups.
Why User Stories (10 minutes) The session concludes with a short summary of some the key advantages to expressing requirements as, and working with, user stories.
- Leave knowing the six attributes of a good story
- Learn a good format for writing most user stories
- Learn practical techniques for gathering user stories
- Know how much work to do up-front and how much to do just-in-time