As of June 2020, the DSpace 7 Working Group has been using GitHub Project Boards to track all of our development & code review activities.  This page documents how we use Project Boards along with some hints/tips to developers and code reviewers.

Current Project Board

Guide to the Project Board

The Project Board represents the workflow we use to complete a specific assigned task. 

Each task is represented by a card which is (usually) either a GitHub issue (or PR, or perhaps both linked together), and comes from one of these GitHub repositories:

Board vs Milestones

While the Board is oriented towards planning for the next Beta release, it may include PRs with different milestones.  For example, the Beta 3 board may include PRs flagged for milestone "7.0beta4" if those PRs were completed earlier than expected.

In this way, we've chosen to add all active/new DSpace 7 PRs (regardless of milestone) to the current board in order to allow for reviewers to more easily find them.  However, reviewers should prioritize reviewing PRs of the current milestone over any future milestone.

(NOTE: You may also see some temporary milestones which are dates. Those are temporarily placed on issue tickets as the expected/due date of the associated PR.  These date-based milestones may be replaced after the PR is created.)

Board Workflow

To Do → In Progress → Needs Reviewers Assigned → Under Review → Reviewer Approved → Done

  1. "To Do": Lists issues that are unclaimed & tentatively scheduled for the current Beta release.
  2. "In Progress": Lists issues that are assigned & being worked on (no PR exists yet)
  3. "Needs Reviewers Assigned": When a new PR is created, it will be added automatically here. This notifies us that it needs reviewers assigned.  (NOTE: this is where we transition from an issue to a PR.  Therefore, at this time, the original issue card may be removed from the board, and we only track the PR card.)
  4. "Under Review": When a PR has reviewers assigned, it is moved to this ready to review stage. It may stay here for some time as the reviewer(s) and original developer work to improve the PR
  5. "Reviewer Approved": Once one reviewer approves the PR, it moves here automatically. These are PRs that are close to merging & they may just need one more approval.
  6. "Done": Once merged, the PR moves here.
  7. "Stalled / On Hold":  If a PR or ticket needs more discussion or stalls (from lack of engagement from the developer), it may be moved here temporarily until it is ready for review again.

Tips for Developers

Tips for Reviewers