Skip to content

Instantly share code, notes, and snippets.

@viniciusbarros
Last active March 6, 2017 09:00
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save viniciusbarros/0929b3a4bbf084812fa11363b0ccd994 to your computer and use it in GitHub Desktop.
Save viniciusbarros/0929b3a4bbf084812fa11363b0ccd994 to your computer and use it in GitHub Desktop.
Agile and Sprint Definitions

Sprint Definitions

Why we use agile

It helps us deliver working software in a fixed time period with continuous delivery and over time helps us understand the work capacity of the team.

Done

We define done as something that is completed with its agreed requirements.

Epic vs Story vs Task

Epic vs Story vs Task

Epic

An Epic is a requirement that is just too big to be delivered in a single sprint. It needs to be broken into smaller deliverables (vertical slices) stories.

Example:

As a customer, I want to be able to have a wishlist so that I can come back to buy products later

Deliverable stories that we can extract from it:

  • As a customer I want to save items in my wishlist so I can review/manage them later
  • As a customer I want to view my wishlist so I can buy products from there

Story

User stories are short, simple descriptions of a feature told from the perspective of the person who desires the new capability, usually a user or customer of the system. They typically follow a simple template:

As a [type of user], I want [some goal] so that [some reason].

It is a thin and deliverable vertical slice.

Usually a story is composed by 1 or more tasks and 1 or more people can work on it.

When is a story done?

  • When there is no more outstanding tasks; And
  • When a [type of user] can now [achieve a goal] so that [the reason is now covered]

Task

A task is a small piece of work that will at some point help completing the story that owns it.

It is typically something like code this, design that, create test data for such-and-such, automate that, and so on. These tend to be things done by one person.

When is a task done?

  • When it doesn't require any extra work to accomplish its objective.

FAQ

1- What if during the sprint we figure out a story needs more tasks?

We simply add the task to the story and continue working on it.

2- What if after a story is closed we notice that it needs improvements?

We simply create a new story. It could be "Improvement of feature X". If the previous story was finished, it certainly had achieved its first goal.

Example

Story : WebServer

"As a developer, I want a SandBox server available for me so I can deploy and test my code"

Tasks:

  • Create WebServer Image
  • Setup server
  • Setup developer access (SSH)
  • Test developer access
  • Setup server in deployment tool
  • Test deployment via deployment tool

References

@shayhurley
Copy link

Looks good Vinnie ! thanks for pulling this together.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment