Skip to content

Agile Development

In this documentation we refer to the team working on an engagement a "Crew". This includes the dev team, dev lead, PM, data scientists, etc.

Why Agile

  • We want to be quick to respond to change
  • We want to get to a state of working software fast, and iterate on it to improve it
  • We want to keep the customer/end users involved all the way through
  • We care about individuals and interactions over documents and processes

The Fundamentals

We care about the goal for each activity, but not necessarily about how they are accomplished. The suggestions in parenthesis are common ways to accomplish the goals.

  • We keep a shared backlog of work, that everyone in the team can always access (ex. Azure DevOps or GitHub)
  • We plan our work in iterations with clear goals (ex. sprints)
  • We have a clear idea of when work items are ready to implement (ex. definition of ready)
  • We have a clear idea of when work items are completed (ex. definition of done)
  • We communicate the progress in one place that everyone can access, and keep the progress up to date (ex. sprint board and daily standups)
  • We reflect on our work regularly to make improvements (ex. retrospectives)
  • The team has a clear idea of the roles and responsibilities in the project (ex. Dev lead, TPM, Process Lead etc.)
  • The team has a joint idea of how we work together (ex. team agreement)
  • We value and respect the opinions and work of all team members.

References


Last update: August 22, 2024