BossaBox

This is the playbook for engineering-playbook

Agile Development Considerations for ML Projects

Overview

When running ML projects, we follow the Agile methodology for software development with some adaptations, as we acknowledge that research and experimentation are sometimes difficult to plan and estimate.

Goals

  1. Run and manage ML projects effectively
  2. Create effective collaboration between the ML team and the other teams working on the project

To learn more about how ISE runs the Agile process for software development teams, refer to this doc.

Within this framework, the team follows these Agile ceremonies:

Notes on Agile process during exploration and experimentation

  1. While acknowledging the fact that ML user stories and research spikes are less predictable than software development ones, we strive to have a deliverable for every user story in every sprint.

  2. User stories and spikes are usually estimated using T-shirt sizes or similar, and not in actual days/hours. See more here on story estimation.

  3. ML design sessions should be included in each sprint.

Examples of ML deliverables for each sprint

Notes on collaboration between ML team and software development team