What is the difference between an epic and a theme? What is a story? Is a task testable in its own right? Can you work on an epic in a sprint?
The opening session of the London Agile Discussion Group (LADG) looked at these basic terms to see if there was an agreed understanding. We were all pretty close to an agreement, but there were some interesting ideas too. Here’s a summary of what we came up with (along with my examples):
(aka Product Backlog Item, Work Item)
A story is an individual feature or requirement that the business wants. It is something that is deliverable (i.e. production ready) within a single sprint. A story should use the INVEST acronym (covered in this previous blog post).
However, it was also thought that a story is only a starting point for a discussion; it does not have all the information the team may need to complete the job.
Stories are often written in a specific format:
- As a [end user of the required feature]
- I want [actual thing the user wants to be able to do once the feature is live]
- So that [why they want this feature / the benefit this feature brings]
Although this format has caught on and is commonplace, it is not the only approach. One team stressed that they alter the above format to put the “So that …” first. I think this is a smart idea as everything should be done for a valid business reason: starting with explaining the benefit certainly makes sense to me.
An example story: “As a customer, I want to be able to save a product in my wishlist so that I can view it again later.”
An epic is a big story. A requirement that is just too big to deliver in a single sprint. Epics need to be broken into smaller deliverables (stories). This helps them support the agile principles (e.g. delivering working software frequently, early continuous delivery, regular reflection).
An example epic: “As a customer, I want to be able to have wishlists so that I can come back to buy products later.”
A collection of stories by category. A basket or bucket of stories. By its nature, an epic can also be a theme in itself.
However, interestingly, one group thought that themes should refer to business goals. My view is that everything should have a goal (otherwise why are you doing it?!)
An example theme: “Wishlist”.
The elements of a story. Stepping stones to take the story to ‘Done’. Tasks often follow the SMART acronym: specific, measurable, achievable, relevant, time-boxed (although what the letters stand for seems to be hotly debated).
However, many teams don’t break their stories down into tasks. I have found that splitting stories into tasks encourages teams to split work horizontally, whereas we try to slice work vertically.
An example task: “Put ‘Add to wishlist’ button on each product page.”