Use this repository when you want to start a public github project and you want to manage your scrum workflow for free, without depending on project management tools that you'll eventually need to pay for. Recommended for small project groups and open source projects.
Pull requests and issue templates are already setup for you, however to copy in labels follow instructions in the installation section.
Turn any public GitHub repository into a simple but powerful agile work environment.
Summary:
- Installation Instructions
- How it works
- 1. Create issues as backlog items
- 2. Add labels to issues
- 3. Define sprints as milestones
- Overview
- Helpful links
- Change log
- Backlog items are reported as issues
- Meta data are assigned to items as labels or in the case of points you should you waffle.io.
- milestones are used to group issues in sprints
git clone [email protected]:CSProjectsEAL/ScrumBaseRepository.git
- Go into the newly created folder and run the following command:
rm -rf remove .git
- Initialise the git and push the base to a new repository.
git init
git remote add origin [NameOfRepository]
git push -u origin master
Not meant for production use, so is subject to change. Use at own discretion. If it doesn't work anymore go to option 2.
- Retrieve the labels and store them locally
curl -X GET https://api.github.com/repos/CSProjectsEAL/ScrumBaseRepository/labels >> labels.json
- Post the labels to your new repository - make sure to replace GithubUserNameOrOrgName and YourRepositoryName in the URL below
curl -d @labels.json -X POST https://api.github.com/repos/GithubUserNameOrOrgName/YourRepositoryName/labels
Open the github.com/yourusername/newreponame/labels page
Open the js developer console in your browser.
Copy in the script found in the gist below to extract labels
Follow instructions found at this destionation:
https://github.com/destan/github-label-manager
Additional: https://medium.com/@dtinth/how-to-copy-github-labels-from-one-project-to-another-1857adc73e0f
To create a new backlog item, just create a new issue.
Once a new issue has been created, assign it the right labels and/or assign it to a sprint (milestone).
Issues allow you to have a conversation about the item and even allow you to create task lists inside the issue using GitHub's markdown.
Add the following labels to your repository:
By default there is three labels used for prioritization based on MoSCoW, with the exclusion of would as it should just be removed the backlog. Use these when grooming user stories and tasks, so that you can judge what neds to be included needs to be included in a sprint.
priority
labels allow you to prioritize items in your backlog e.g.:
priority: low
Could implement this.priority: medium
Should implement this.priority: high
Must implement this.
Search by typing is:priority:high
for instance, to find a specific priority. Use no:priority
if you want all unprioritized issues.
Points meta-data is added using the wrapping project management framework waffle.io.
Waffle.io allows you to assign velocity points to individual items (issues) e.g. using Fibonacci numbers.
Based on these you can generate graphs based velocity etc. in waffle.io
To use waffle.io just add the repository, on the website and allow it OAuth access.
Add these labels.
point
labels allow you to to assign velocity points to individual items (issues) e.g. using Fibonacci numbers:
point: 1
point: 2
point: 3
point: 5
point: 8
point: 13
point: 21
type
labels allow you to easily filter items (issues) in the dashboard e.g.:
type:bug
: A defect in the code that needs fixingtype:hotfix
: fix that requires immediate attentiontype:feature
: a suggestion for a new featuretype:story
: a new feature in the shape of description from the point of view of a user note: stories should be written so they are vertically slicedtype:infrastructure
: infrastructure related change or additiontype:performance
: performance related issuetype:refactor
: Contribution issue: related to refactoring, if something is missing abstraction or not adhering to coding standardstype:test
: Contribution issue: for review test related issues, if something is missing from the tests, acceptance criteria etc.
type:WIP
: If the issue hasn't been finalized and needs further work before grooming, or answers from PO or stakeholder.
You can define and assign custom labels that you need within your workflow or organization.
You can create a milestone for every sprint and add items (issues) from the backlog to a milestone.
This allows you to group items in sprints and track them by milestone in your issue dashboard.
The backlog then consists of all items (issues) that have no milestone
attached to it.
TIP: Use no:milestone
in the search field on your issue dashboard to find backlog items.
Image: Scrum primer.