Backlog Items

The product backlog consists of a prioritized list of work to be completed. At the beginning of a project, the Product Backlog Items (PBIs) are typically:

As the project progresses, additional types of PBIs are introduced:

Technical rework is typically the result of cutting corners to complete an earlier PBI. Taking on technical debt is a legitimate part of Scrum, but it is critical that technical debt is tracked and addressed. Left unmanged, accumulated technical debt can introduce challenges that make completion of additional features painfully slow.

PBI Attributes

Fully developed product backlog items should:

File Format

Each PBI should be captured in a markdown file named [PBI#][2-4 word description].md and be placed in a subdirectory in .issues. The subdirectory it should be placed in depends on the state of the PBI.

The file must begin with the following:

**Type:** [PBI Type]
**Priority:** [Priority]
**Story Points:** [# of points]
**Status:** [Status]

This should be followed by several sections:

Backlog Grooming

Throughout each sprint the backlog should be actively groomed (PBIs added and refined). The backlog should contain a mix of fully developed PBIs and more preliminary PBIs. At the beginning of each sprint there should be enough fully developed PBIs to fill at least one and a half sprints.

During sprint planning, the team should decide which PBIs will be added to the next sprint and create a list of tasks under each PBI that enumerate the tasks required to complete the PBI. These tasks should have time estimates associated with them. As a general rule, tasks should range in duration from 2 to 5 hours in length. Each PBI brought into a sprint should be completely fleshed out prior to the start of the sprint. During the sprint you may find the need to add or re-estimate tasks. That's bound to happen, but hopefully your team will find it happening less and less as the year progresses.

Example File

Filename: 0012 Calculate academic standing.md

**Type:** Feature
**Priority:** 2-3
**Story Points:** 2
**Status:** Open

# TL;DR
Enable an advisor to calculate academic standing.

# Description
As an academic advisor, I want to determine the academic standing of my advisee. Academic standing
is based on the number of credits successfully completed.

# Acceptance Criteria
- Given that the course history file for a student has been successfuly parsed, when the “Calculate academic standing” capability is used, then all credits are expressed in semester units before they are used in calculations or displayed in dashboard credit totals.
- Given that the course history file for a student has been successfuly parsed, when the “Calculate academic standing” capability is used, then quarter-based credits are converted to semester units by multiplying by 2/3.
- Given that the course history file for a student has been successfuly parsed, when the “Calculate academic standing” capability is used, then standing credits include: successful credits; WIP credits from terms before the advising term.
- Given that the course history file for a student has been successfuly parsed, when the “Calculate academic standing” capability is used, then standing is: FR below 30 credits; SO from 30 to below 60; JR from 60 to below 90; SR at 90 or more.
- Given that the course history file for a student has been successfuly parsed, when the “Calculate academic standing” capability is used, then removed requirements do not count.
- Given that the course history file for a student has been successfuly parsed, when the “Calculate academic standing” capability is used, then waivers do not count as earned credit unless explicitly configured otherwise.
- Given that the course history file for a student has been successfuly parsed, when the “Calculate academic standing” capability is used, then the calculation is unit-tested at each boundary.

# Dependencies
- Requires 0003 to be completed - done as of Sprint 1

# Tasks
1. Develop tests for acceptance criteria
2. Filter out courses that should not be included
3. Identify courses containing quarter-based credits and convert them to semester credits
4. Calculate sum and determine relevant cohort
5. Ensure all tests pass

# Closing Notes

When a PBI moves from .issues/backlog to .issues/open, tasks should be refined.