.. index:: single: tasks single: tickets double: governance; tasks .. |label-TBD| image:: https://img.shields.io/badge/TBD-808080 .. |label-NOPE| image:: https://img.shields.io/badge/Won't%20Do-8c480a .. |label-TODO| image:: https://img.shields.io/badge/To%20Do-ed9121 .. |label-DONE| image:: https://img.shields.io/badge/To%20Validate-009966 .. |label-bug| image:: https://img.shields.io/badge/bug-dc143c .. |label-doc| image:: https://img.shields.io/badge/doc-cdab8f .. |label-epic| image:: https://img.shields.io/badge/epic-9600ff .. |label-ufg| image:: https://img.shields.io/badge/up%20for%20grabs-2e7ba9 .. _tasks: 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 [#kanban]_. 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 :ref:`all our projects ` through GitLab tickets and labels [#gitlab]_. The result is available here: https://gitlab.huma-num.fr/groups/datasphere/-/labels . .. contents:: :local: Tasks progress -------------- .. index:: double: 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-TODO| 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 |label-DONE|. - | The |label-DONE| 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 |label-TODO|, and reassigns the task to the relevant project member. - | The |label-TBD| 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 |label-TODO|. Alternatively, the issue may be closed and new, properly defined tasks created; these tasks will be labeled |label-TODO|. | If the discussion fails, or if the consensus is to take no action, this label is replaced by |label-NOPE|, and the task is closed. - | The |label-NOPE| 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. .. plantuml:: :caption: Tasks: lifecycle :align: center @startuml start while (consensus?) is (non) -[#808080]-> #808080:TBD; -[#808080]-> endwhile (oui) if (faisable?) then (non) -[#8c480a]-> #8c480a:Won't Do; -[#8c480a]-> else (oui) repeat repeat while (planifié?) is (non) not (oui) -[#ed9121]-> repeat -[#ed9121]-> repeat -[#ed9121]-> #ed9121:To Do; -[#ed9121]-> repeat while (réalisé?) is (non) not (oui) -[#009966]-> #009966:To Validate; -[#009966]-> repeat while (validé?) is (non) not (oui) -[#009966]-> endif stop @enduml Task types ---------- These labels describe the type of a task. Each task may have none, one, or several of these labels. - The |label-bug| label is of bugs or errors. One task or more should be undertaken (and given the |label-TODO| label) to solve the problem as soon as possible. - The |label-doc| label is for documentation tasks. - The |label-epic| label is for tasks with a large scope. |label-epic| tasks are generally fragmented in and linked to subtasks, each with a precise, smaller scope. To close all subtasks means the |label-epic| tasks can be closed, too. - The |label-ufg| 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 [#up-for-grabs]_. .. [#kanban] https://en.wikipedia.org/wiki/Kanban_(development) .. [#gitlab] https://gitlab.huma-num.fr/ .. [#up-for-grabs] https://up-for-grabs.net/