knowledge-kitchen / scrum / github

GitHub - How to Do Project Management

It is possible in GitHub’s Projects tab to create Scrum-style Product Backlogs, Sprint Backlogs, and Sprint Task Boards that show User Stories and Tasks and Spikes organized into easy-to-comprehend groupings.

GitHub task board set up with nicely labeled tasks and spikes

Each repository must have a separate Task Board set up for each Sprint.

Set up a GitHub Project

Create a GitHub Project for Scrum-style development, do the following:

  1. Go to a repository
  2. Click on the Projects tab
  3. Select the option to create a New project for this repository, then click the button to do so.
  4. Give the project a name that is obvious and intuitive for the project.

Create a new project for a GitHub repository

Create the Product Backlog

Create a “table” view that shows all Issues labeled as user story… this is the Product Backlog.

Product Backlog in GitHub

Create a Sprint Backlog

As part of Sprint Planning, create another “table” view that shows those user stories that will be worked on in the current sprint - the Sprint Backlog. Do so by showing only those Issues with the label, user story and the Milestone Sprint N, where N is replaced by the current sprint number.

Sprint Backlog in GitHub

Create a Sprint Task Board

Make a new “board” view that shows only those Issues labeled as task or spike that also have the Milestone set to the current sprint and add the following columns to the board:

  1. To do - this will contain the individual tasks and spikes that are necessary to implement the User Stories in Sprint Backlog
  2. In progress - tasks and spikes will be moved here from the To Do column once they are actively being worked on
  3. Awaiting review - tasks and spikes that have been completed but require peer review before merging into the trunk should be moved here
  4. Done - tasks and spikes will be moved here when they are completed

Scrum-style task board in GitHub

Keep the Task Board always up-to-date as you work

When starting a new Sprint, add all Tasks and Spikes to be worked on in the current sprint into the To Do column.

Maintain the Task Board with items in the correct columns as you work on the Sprint.

Do not alter the Sprint Backlog or Task Board after a Sprint has completed

Sprint Backlogs and Sprint Task Boards serve as an archive of what was and was not accomplished within each Sprint.