July 13, 2011

Managing User Stories and Requirements in TestTrack

Helix ALM
While Agile has been gaining more and more ground, it appears that many organizations are also adopting their own flavor of Agile. They take the parts that they like or work for them and integrate them into their own process. Sometimes this is driven by outside factors, like compliance needs and customers. In these instances, you may have a need to manage both requirements and user stories in the same project. In this post, I'll talk about one way to do this in TestTrack. First, let's look at a sample scenario that includes managing both requirements and user stories. [caption id="attachment_8970" align="aligncenter" width="511"]Requirement Break Down Requirement Break Down[/caption] In the above diagram, you can see it starts with a Customer Requirement. The customer tells us what they want to see in our product. We then break this down into one or more Product Requirements that describe what we are going to do to address the Customer Requirement. Then, each Product Requirement is broken down into User Stories. These describe how we are going to implement the Product Requirement. Finally, each User Story is broken down into actionable tasks. We can implement the above hierarchy in TestTrack by defining Requirement types and using the Requirement Document. Using Requirement Types, you define the artifacts you are going to use. In the following screenshot, you can see the requirement types I have defined. [caption id="attachment_8978" align="aligncenter" width="425"]Requirement Types Requirement Types[/caption] Using the Requirement Document, you can establish the hierarchy and establish the necessary relationships. [caption id="attachment_8980" align="aligncenter" width="380"]Requirement Breakdown Requirement Breakdown[/caption] Story points are assigned to user stories and estimated hours are assigned to tasks. For requirements, a higher level estimate is used. A popular mechanism for high level estimating is the use of rocks. For example, a large customer requirement may be assigned a boulder. A small feature could be assigned a pebble. Once user stories are created, they can be added to the backlog of the current project. Based on the size of the product requirement, its user stories may be in multiple sprints. Since TestTrack allows you to generate test cases from any requirement type, you can ensure that you are verifying and validating each level of the hierarchy. The links that are established between the requirements, user stories, and test cases allow for end-to-end traceability. I covered this in more detail in the Five Ways to Boost Enterprise Agility webinar a few months ago. If you would like more details on what I have covered above, I strongly recommend watching the recording of the webinar.