How Do I Write Requirements Using Stories and Acceptance Criteria?—Part Two

Along the way of discovering and describing Stories you will find a spectrum of Story types: some too big, some too small, and some just right.

A Story that is too big is called an Epic. Epics are difficult to work with because they frequently contain multiple Stories. When you are sizing your Stories at the Product Backlog level, a Story should contain just enough detail to enable the team to estimate its relative size to other Stories. Epics are acceptable on the Product Backlog as long as they are Stories at the bottom of your Product Backlog (lowest in priority). When Epics become the highest priority, break them into smaller and more manageable Stories.

Writing Acceptance Criteria Writing Acceptance Criteria is one of the most effective ways to represent the details of a Story; leading to a common understanding of Story scope as well as driving out ambiguity and uncertainty. Let’s create some Acceptance Criteria for our Soulful Winery :

Story

AcceptanceCriteria

As a customer, I want to be able to select wine by different categories, so that I can specify the wine I wish to purchase

Verify and validate customer can enter their customer identification

Verify and validate a customer’s search and view of wine selection displays current information and correctly

Verify and validate when there are errors the correct message is displayed

As a customer, I want to be able to enter my shipping information, so that the winery can deliver my order to my address of choice and knows how to ship my order

Verify and validate customer can enter their customer identification

For existing customers, display their shipping information when it exists

Verify and validate shipping information

Verify and validate when there are errors the correct message is displayed

As the application, I want to track all changes for each customer, so that there is an audit trail available at anytime

Verify and validate that audit trail data is encrypted to prevent unauthorized access

Verify and validate a complete history for any given transaction is being logged, backed-up and can be displayed upon request by authorized personnel

Verify and validate for archival of old transaction data (more than three years old)

Verify and validate when there are errors the appropriate people are notified and resolution is tracked

As a site-administrator, I want to be able to add, change and delete wine lists to be displayed on the website

Verify and validate only an authorized site-administrator is able to add, change or delete wine lists

Verify and validate the wine list displays current information and correctly

Verify and validate when there are errors the correct message is displayed

As a company executive, I need to be able to access wine club member information (canned & ad-hoc) so that I can learn about my market/clientele an increase revenue

Verify and validate only authorized company executives have access to reports

Verify and validate when a report is requested it displays current information and correctly

Verify and validate when there are errors the correct message is displayed

The Stories defines the who, the what, and the why. The Acceptance Criteria complements the Story by benchmarking the elements required for success. The Story is like the blueprint of a building; it sets the direction and goal. The Acceptance Criteria is like the building’s framework by which all further development relies upon. Together they make a very strong foundation to design, develop and deliver requirements.

Running a Story Brainstorming Session The art of bringing people together, face-to-face or remotely,

Pages

About the author

TechWell Contributor

The opinions and positions expressed within these guest posts are those of the author alone and do not represent those of the TechWell Community Sites. Guest authors represent that they have the right to distribute this content and that such content is not violating the legal rights of others. If you would like to contribute content to a TechWell Community Site, email editors@techwell.com.