Effective User Stories for Agile Requirements
Mike Cohn President Mountain Goat Software Lafayette, Colorado mike@mountaingoatsoftware.com
© Mountain Goat Software, LLC
1
Mike Cohn - background
© Mountain Goat Software, LLC
2
Monday, March 19, 2007
What problem do stories address?
• Software requirements is a communication • problem Those who want the software must communicate with those who will build it
© Mountain Goat Software, LLC
3
Balance is critical
• If either side dominates, the business loses • If the business side dominates
…
•
…functionality and dates are mandated with little regard for reality or whether the developers understand the requirements
…technical jargon replaces the language of the business and developers lose the opportunity to learn from listening
© Mountain Goat Software, LLC
• If the developers dominate
…
•
4
Monday, March 19, 2007
Resource allocation
• We need a way of working together so that • Project fails when the problem of resource allocation falls too far to one side resource allocation becomes a shared problem
© Mountain Goat Software, LLC
5
Responsibility for resource allocation
© Mountain Goat Software, LLC
6
Monday, March 19, 2007
Imperfect schedules
• We cannot perfectly predict a software schedule • • •
As users see the software, they come up with new ideas Too many intangibles Developers have a notoriously hard time estimating
• If we can’t perfectly predict a schedule, we can’t perfectly say what will be delivered
© Mountain Goat Software, LLC
7
So what do we do?
© Mountain Goat Software, LLC
8
Monday, March 19, 2007
Today’s agenda
What stories are Users and user roles Gathering stories INVEST in good stories Why user stories
© Mountain Goat Software, LLC
9
© Mountain Goat Software, LLC