There is much variation in the definition of agile terminology - particularly when it comes to establishing consensus on seemingly simple terms, such as Epic, Feature, Story, Task.
Lets examine some of the sources of various definitions.
Wikipedia
- https://en.wikipedia.org/wiki/User_story
- "User stories are written by or for users or customers to influence the functionality of the system being developed."
- Epic: "Large stories or multiple user stories that are very closely related are summarized as epics. A common explanation of epics is also: a user story that is too big for a sprint."
- Initiative: "Multiple epics or stories grouped together hierarchically, mostly known from Jira"
- Theme: "Multiple epics or stories grouped together by a common theme or semantic relationship."
ScaledAgileFramework.com (SAFe)
- https://www.scaledagileframework.com/epic/
- Multiple Epic types are mentioned (Portfolio, Program, Large Solution)
- "Epics are not projects"
- "Implemented by...Value Streams and ARTs"
- "No definitive start and end date; scope is variable"
- "Progress is measured as outcomes against the benefit hypothesis"
- "Analysis of an epic includes the definition of a Minimum Viable Product (MVP) for the epic. In the context of SAFe, an MVP is an early and minimal version of a new product or business Solution that is used to prove or disprove the epic hypothesis."
- https://www.scaledagileframework.com/features-and-capabilities/
- "A Feature is a service that fulfills a stakeholder need. Each feature includes a benefit hypothesis and acceptance criteria, and is sized or split as necessary to be delivered by a single Agile Release Train (ART) in a Program Increment (PI)"
- https://www.scaledagileframework.com/story/
- https://www.agilealliance.org/glossary/epic/
- "An epic is a large user story that cannot be delivered as defined within a single iteration or is large enough that it can be split into smaller user stories."
- https://www.agilealliance.org/epic-confusion/
- "As I started writing that entry I thought crafting a definition of epic should be really straight forward. Then I reflected on the various conversations I’ve had with teams over the years, and realized writing a definition for epic isn’t nearly as simple as it should be."
- "`Epic` has taken on a variety of different meanings over the course of the last 16 years."
- https://www.atlassian.com/agile/project-management/epics-stories-themes
- "An epic is a large body of work that can be broken down into a number of smaller stories. For example, performance-related work in a release. An epic can span more than one project, if multiple projects are included in the board to which the epic belongs."
- https://community.atlassian.com/t5/Jira-Core-Server-questions/epic-vs-story-vs-task/qaq-p/204224 (2018)
- "Epic - A general use case that is a collection of features (user stories). (Use Fibonacci numbers to estimate.)"
- "User Story - Represents a user feature. (Use Fibonacci numbers to estimate.)"
- "Sub-Task - Represents development tasks to accomplish the user story. (No story point estimates.) Generally no more than 1-day tasks. You can either count the number of sub-tasks or time estimate in days in your retrospective to evaluate if your story point estimate for the User Story was accurate and adjust accordingly - assuming you have some velocity history to compare to."
- "(Engineering) Task - We used to call these "Dev Stories" (in a pre-Jira project) - represents a set of engineering work that is not directly related to a user story. The team should try to anticipate "Dev Stories" and add them to the backlog sooner than later with estimates (Use Fibonacci numbers to estimate) so the PO can plan milestones."
- Note: Also see the discussion thread...
- https://www.solutionsiq.com/agile-glossary/epic/
- "A very large user story that is eventually broken down into smaller stories."
- https://www.solutionsiq.com/agile-glossary/story-user/
- "A requirement, feature and/or unit of business value that can be estimated and tested. Stories describe work that must be done to create and deliver a feature for a product. Stories are the basic unit of communication, planning, and negotiation between the Scrum Team, Business Owners, and the Product Owner."
- https://www.solutionsiq.com/agile-glossary/task/
- "Tasks are descriptions of the actual work that an individual or pair does in order to complete a story. They are manageable, doable, and trackable units of work. Typically, there are several tasks per story."
- https://www.smartsheet.com/ultimate-agile-dictionary#epic-stories
- "Epic or epic stories are defined as large user stories that, in their current state, would be difficult to estimate or to complete in a single iteration. Epic stories are typically lower priority and are waiting be broken down into smaller components."
- https://www.smartsheet.com/ultimate-agile-dictionary#story
- "A story, or user story, is a brief, non-technical statement of a software system requirement written from the end-user’s point of view."
- https://www.smartsheet.com/ultimate-agile-dictionary#task
- "A task is a single unit of work broken down from a user story. A task is usually completed by just one person."
Other Definition Sources & Interesting Viewpoints
- https://clickup.com/blog/agile/agile-terms/
- https://www.scrum.org/resources/scrum-glossary
- https://www.freecodecamp.org/news/epics-are-dead-heres-what-we-should-do-instead-279bada1e644/
- "An epic is a story that is too big to be implemented in a Scrum sprint. The items at the top of the Product Backlog are thus not epics, but little stories. Down in the backlog you will typically find epics. Over time, the epics are “sliced” into stories that can be pulled into a sprint."
- See example of Jeff Patton's Story Mapping (see Amazon book suggestion below).
- https://www.knowledgehut.com/blog/agile/what-is-an-epic-agile
- "Epic - A requirement that is just too big to deliver in a single sprint. Epics need to be broken into smaller deliverables (stories)."
- "Story - A requirement that the business wants. It is something that is deliverable within a single sprint."
- "Tasks - The essentials of a story, these are the milestones to take the story to ‘Done’."
- https://techfarhub.cio.gov/learning-center/field-guides/2/
- "A story should be small enough to be coded and tested within an iteration—ideally just a few days. When a story is too large, it is called an epic. Backlog items tend to start as epics when they are lower priority."
- https://www.yodiz.com/blog/what-is-epic-in-agile-methodology-definition-and-template-of-epic/
- "An Epic can be defined as a big chunk of work that has one common objective. It could be a feature, customer request or business requirement. In backlog, it is a placeholder for a required feature with few lines of description. It tells compactly about final output of user needs. In the beginning, it may not contain all the details that team needs to work on. These details are defined in User Stories. An epic usually takes more than one sprint to complete."
- "Think of epic as a book and user stories are its’ chapters."
- https://www.jeremyjarrell.com/eliminating-epics/
- "...epics can encourage poor refinement of ideas by enabling people to capture details in epics that they would otherwise consider too poorly refined for a normal user story."
- "epics themselves should never be loaded as a sprint level item"
- "Remember that epics are just another type of user story."
- https://www.pluralsight.com/guides/refine-user-stories-and-acceptance-criteria-with-agile
- https://softwareengineering.stackexchange.com/questions/182158/relationship-between-user-story-feature-and-epic
- https://medium.com/@PherricOxide/scrum-gone-wrong-part-1-85c907d64098
Anti-Definitions
I've encountered agile practitioners, and a few engineering teams, that seem to have badly calibrated their definitions.
- No, a Feature is not appropriate for planning the addition of a widget on a UI (e.g. like a button, or a drop-down), nor is a Story. That is appropriate for a Task - for which, usually, two or more are associated to a Story.
Epic Estimation Techniques
- Assign a relative weight to an Epic (expressed as a number from the Fibonacci sequence: : 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, … and so on.
- Multiply by 10 (versus a Story, to reflect the relatively larger scope of an Epic - as a collection of Stories).
No comments:
Post a Comment