Agile+Requirements+Exploration+Workshop

=Overview= This is a 2 - 4 hour workshop meant to give a feeling for writing user stories and acceptance tests for those stories. Throughout this workshop, we have people working in groups of approximately 4 people. 1 person is the product owner and three people are developers.

=User Stories=

Exercise 1
We provide four items:
 * A general project description to be used by all group members
 * A second project writeup to be seen by the product owner only
 * A stack of index cards
 * A few example statements they can use as examples

We ask each group to begin developing a list of interesting things the system could do to provide some kind of value to an end user.

The groups then work on this for a predetermined amount of time (varies by overall workshop time).

At the end of this exercise, each group provides a few of their stories to the other groups.

Exercise 2
Each group goes back for another round of user story work having just heard examples from the other teams. We give them a little less time than the first exercise.

At the end of this exercise, we ask each team to report back. We also ask the following question:
 * What are some guidelines you might recommend for writing user stories

Exercise 3
Each group goes back for a final round of user story work and tries to take into consideration the guidelines.

At the end of the exercise, we ask for any final guidelines. We then discuss INVEST and also list other recommendations on writing user stories.

User Story Notes

=User Acceptance Tests= If the workshop is long enough to allow, we mix up the groups after the first three exercises.

Exercise 1
Ask the question: How can we be sure that the solution we've provided actually does what the user stories say? After a brief discussion, have each group pick one "important" story and write on the back of it 3 or more ways in which they could verify the story is properly implemented.

At the end of the exercise, each group reports back on one of their items.

Exercise 2
Each group takes a second stab at developing use acceptance tests taking into consideration the examples from the other groups. They do so on a second "important" user story.

At the end of the exercise, each group reports back. We then ask for a preliminary list of guidelines for writing user acceptance tests.

Exercise 3
Each group takes a final stab at developing user acceptance tests using the guidelines. They work on a third "important" user story.

At the end of the exercise, each group reports back on using the guidelines and we discuss a final set of guidelines for developing user acceptance tests

=House of Cards= The workshop attendees are:
 * Given a single deck of cards
 * Given a simple statement, build a house of cards
 * Told they are competing with each other to get the most points with a door prize to the best solution

The workshop organizers will serve as the product owner, each group needs to build a house of cards in the given time-frame. (Can't say more than this since it would give away the point of the exercise.

Example Hidden Requirements

=Wrap-up= We work through each of the topics and bring up the following discussion points:
 * What is "Done"
 * Teams are more adaptable to change if they work on fewer things at the same time and get them done
 * Requirements discovery
 * What it really means to work in iterations
 * What is success?
 * Customer satisfied
 * Too many UATs? Story too big
 * Too few? Don't understand problem.