The narrative: This is a short description of the interaction you're documenting,
written from the perspective of the user. Typically, the format is something like
“Given the situation Y, X does something, and something else happens.” You see
in the upcoming sections how to approach stories for batch processes (given that
they're purely technical in nature).
• Acceptance criteria: The acceptance criteria are testable requirements that can be
used to identify when a story is complete. The important word in the previous
statement is testable . In order for an acceptance criterion to be useful, it must be
able to be verified in some way. These aren't subjective requirements but hard
items that the developer can use to say “Yes it does do that” that or “No it
Let's look at a user story for a universal remote control as an example:
Title: Turn on Television
Narrative: As a user, with the television, receiver, and cable box off, I will be able to
press the power button on my universal remote. The remote will then power on
the television, receiver, and cable box and configure them to view a television
• Have a power button on the universal remote.
• When the user presses the power button, the following will occur:
a. The television will power on.
b. The AV receiver will power on.
c. The cable box will power on.
d. The cable box will be set to channel 187.
e. The AV receiver will be set to the SAT input.
f. The television will be set to the Video 1 input.
The Turn on Television user story begins with a title—Turn on Television—that is short and
descriptive. It continues with a narrative. In this case, the narrative provides a description of what
happens when the user presses the power button. Finally, the acceptance criteria list the testable
requirements for the developers and QA. Notice that each criterion is something the developers can
easily check: they can look at their developed product and say yes or no, what they wrote does or doesn't
do what the criteria state.
USER STORIES VS USE CASES
Use cases are another familiar form of requirements documentation. Similar to user stories, they're actor
centric. Use cases were the documentation form of choice for the Rational Unified Process (RUP). They're
intended to document every aspect of the interaction between an actor and a system. Because of this,