Agile user stories are deceptively simple things.
In agile software development approaches, they've become the most popular practice for describing software we'd like to build. The idea is simple: write on an index card or sticky note a single thing your software could do from the user’s perspective. Use this card, along with all the others you write, as "tokens for conversation" to work through all the details we'll need to understand to plan, construct and test software.
But, this is where things get complicated:
- What's the right way to phrase what’s written on a card? How much detail should I include?
- How "big" should a story be? A useful size from the user’s perspective, or small enough to easily code in a matter of days?
- To describe a typical piece of software it usually takes dozens, or even hundreds of these things. How do you make sense of a large backlog of user stories without losing the forest in the trees?
When this simple idea meets the harsh reality of a typical software project, it seems to fall apart. How could this possibly work? But, in practice it does--in some not-so-obvious ways.
In this short book those new to user stories will learn the basics of what a user story is and how to write and organize them effectively. You'll learn how to use stories to help with discovering what to build, plan valuable incremental product releases, and effectively manage software delivery. Those already working with user stories will learn approaches beyond the simple ideas they may have learned in a 2-day training class. Everyone will learn why the user story works so well for so many different uses and why this simple idea turns out to be one of the big innovations that’s emerged from agile thinking.
The book focuses on the emergent practice of story mapping as a way to help lots of small stories tell a bigger story that describes your software. Using a story map to help keep a cohesive big picture, you'll learn effective ways to leverage the map to discuss your ideas and plan your product’s delivery.
This short book demystifies user stories and explains how to pragmatically use them in your day-to-day agile practice.