Skip to content

Project management

Project boards

Projects are for when you are collaborating on a repo and want to keep track of who is working on what, and when. Using the projects feature is preferable to simply having a list of issues as it enables prioritisation and creates a clearer sense of how tasks will be tackled, and in what order.

To do this, we use Github project boards.

Actively using boards and keeping them up to date: - allows project teams to developed a shared understanding of what needs to be done/has been done on a project. - creates a framework for project meetings, so that meetings can stay task-focussed and be used to gain understanding of progress. - enables asynchronous communication, as users can communicate via issues, and by changing the status of a task as well as other fields. - ensures that we have a history of what happened in the past.

Board setup

How to choose the right kind of board

Follow the steps in the quickstart guide to set up a project. Follow the steps for 'organisation project' unless you are created a personal to do list or something similar.

Different views are available including a 'table', 'board' and 'roadmap' view. The 'board' view is a kanban and is helpful for creating a clear visual of workflow and encouraging conversations about priority and capacity.

How to title a board

The board title should contain a clear reference to the project name and the mission if relevant.

GitHub versus other project management tools

The organistion generally uses Asana for project management. Where projects include non-DS team members (for example mission projects), Asana is the best tool to use and it is understood and accepted by teams across Nesta. GitHub can still be used to tracking technical tasks. In these cases, the Asana can include a high level task description, with the more granular tasks tracked in GitHub.

Where projects include just DS-team members, GitHub can be used for project management if preferred. However the project will still need to be included in the DS project list which is held on Asana so that it can be tracked for portfolio purposes. The programme management team can help with this.

Milestones

Milestones can be a useful feature, and are used by some teams. When there are multiple issues belonging to the same context, instead of creating parent issues referencing other issues, we use Github milestones.

This is a good way to organise our work and let others understand how we work, especially useful for people new in the team or readers of our open source repositories.

After creating a milestone we can add an issue to a milestone in multiple ways, but mainly we use the dropdown on the right side in the page of the issue.

One of these milestones...

...groups these issues.