Lifecycle model
This page describes a model for managing the lifecycle of each task undertaken within a given project. It is a relatively lightweight model derived from the Kanban method [1]. In this model, each task follows a structured but clear and flexible path. The goal is to help each team coordinate in order to advance their project in a clear and efficient manner.
This model is implemented across all our projects through GitLab tickets and labels [2]. The result is available here: https://gitlab.huma-num.fr/groups/datasphere/-/labels .
Tasks progress
These labels describe the progress status of a task. Each task can only have one of these labels at a time.
- The
label indicates a high-priority task whose work is planned and for which one or more actions are currently underway.
Once all actions related to the task have been completed, this label is replaced by.
- The
label indicates that the task is “completed”. However, it still requires validation to confirm its completion.
Closing the ticket constitutes validation.If validation is not possible, the reviewer comments on the issue, replaces this label with, and reassigns the task to the relevant project member.
- The
label indicates a question or discussion intended to help define one or more concrete tasks.
If the discussion leads to a consensus on the need for clearly identified actions, this label is replaced by. Alternatively, the issue may be closed and new, properly defined tasks created; these tasks will be labeled
.
If the discussion fails, or if the consensus is to take no action, this label is replaced by, and the task is closed.
- The
label indicates a discarded task.
This may be because the related feature is not feasible or because the task description is unusable.In all cases, the corresponding ticket is closed or to be closed. Discussion about this task may be reopened later, but this is neither planned nor scheduled.
Tasks: lifecycle
Task types
These labels describe the type of a task. Each task may have none, one, or several of these labels.
The
label is of bugs or errors. One task or more should be undertaken (and given the
label) to solve the problem as soon as possible.
The
label is for documentation tasks.
The
label is for tasks with a large scope.
tasks are generally fragmented in and linked to subtasks, each with a precise, smaller scope. To close all subtasks means the
tasks can be closed, too.
The
label means this task is appropriate for new contributors. These are good ways to warm up on a project, or to share the workload between free softwares [3].