User Stories

In XP, software requirements are communicated to development in the form of "User Stories" instead of large formal specification documents. The can be handwritten on index cards or an electronic form which can be easily shared (a must for distributed teams). User Stories are brief vignettes about what a user would experience when using a new functionality or feature. Unlike the more formal style of traditional specifications, which attempt to outline every possible outcome, User Stories are very focused on describing a single transaction of the user and the system-what the user does, what the user sees, and what the end result is. User Stories are written from the perspective of the user, with the chief goal of allowing the developer to understand what the code has to do. It might be intuitive to think that developers cannot create good code if they don't see the Big Picture that a formal specification provides but, in actuality, the incremental approach to software development yields a better end result, for reasons discussed elsewhere on this site.