cfpb / sbl-project

Project management repo for the SBL project
Creative Commons Zero v1.0 Universal
2 stars 1 forks source link

SBL Project

Project management for the SBL (Small Business Lending) project.

Issue tracking

The source code for SBL's software is spread across multiple GitHub repositories. We use GitHub Projects to manage the work across these repos.

Our project is up at:

Sprints

We work in two week sprints. The current sprint is viewable on the Sprint tab of SBL Project.

User stories

We use User Stories to define the features we will implement for SBL. These user stories are represented as GitHub issues, labeled as story. During our Sprint Planning meetings, we select User Stories for the upcoming Sprint that meet our definition of ready.

Definition of ready

In order for a user story to be considered "ready", and brought into a sprint, the team must agree that it meets the following criteria.

  1. All dependencies have been identified.
  2. UX requirements are complete, with UX resources linked to the user story.
  3. Acceptance criteria is complete.
  4. The story can be accomplished in a single sprint.

Definition of done

In order for a user story to be consider "done", and the issue closed, it must meet the following criteria.

  1. All acceptance criteria have been met.
  2. All UX requirements have been met.
  3. There are no known defects.
  4. Unit test coverage > 85%.
  5. Is deployed to the development environment.
  6. Documentation has been updated (if needed).

Epics

We use Epics to represent larger bodies of work that span multiple user stories across multiple sprints. These epics are represented as GitHub issues, labeled as epic. We use these issues for the initial research and discussion before we take on the underlying user stories.

UX and design

We also do most of our UX and design on epic issues. This work includes producing wireframes and mockups, gathering background information, and user research. We don't start work on any user stories until this upfront work has been completed.

Milestones

We use Milestones as a means of grouping our epic issues. We use these for grouping our work into larger initiatives. This is especially useful in our project Roadmap view. view

Development tasks

We use GitHub issues to track our development tasks as well. These issues live in separate repos alongside their corresponding code. These issues will frequently be associated with story issues, but can also be indepedent tasks, such as bug fixes. These issues do not follow any consistent labeling scheme as each repo has different needs.

Development repositories

Development setup

For local development, we use docker compose to run the supporting services. Please refer to LOCAL_DEV_COMPOSE for details.

Open source licensing info

  1. TERMS
  2. LICENSE
  3. CFPB Source Code Policy