Project

Projets et tâches

Place de marchéÉquipes et projetsVersion 0.4.0AGPL-3.0-or-latermanifest

À quoi elle sert ​

Plan work as projects, milestones and tasks with assignees and deadlines. Progress is tracked by status, which keeps the model simple; it is a good fit for small teams that want a shared board rather than effort accounting.

Ce que fait et ne fait pas le paquet ​

Projects, milestones and tasks with assignees, deadlines and status flows. A project shows its progress, the share of its tasks that are done, and the time estimated for them.

Détails du module ​

  • Version: 0.4.0
  • Auteur: SpaceCorps
  • Licence: AGPL-3.0-or-later
  • Noyau requis: ^0.2 (le noyau actuel est 0.2.0)
  • Maturité: Bêta
  • Catégories: Services, Productivité

Modèles ​

projects_project ​

A body of work with a goal

Groupe de lecture: projects.user. Groupe d'écriture: projects.manager.

ChampTypeClasse de donnéesDonnées personnellesGroupeVu par les agentsDescription
nametextnonenonprojects.useren clairProject name
codetextnonenonprojects.useren clairShort reference used in reports, for example WEB-24
project_managertextinternalouiprojects.usermasquéName of the person accountable for the project
start_ondatenonenonprojects.useren clairPlanned start date (YYYY-MM-DD)
deadlinedatenonenonprojects.useren clairDate the project must be finished (YYYY-MM-DD)
budgetmoneynonenonprojects.useren clairAgreed budget for the project (minor currency units, e.g. cents)
descriptionlongtextnonenonprojects.useren clairGoal and scope of the project
estimate_minutesnumbernonenonprojects.useren clairTime estimated for all tasks of the project that are not cancelled, in minutes
progressnumbernonenonprojects.useren clairShare of the project's tasks that are done, in percent; cancelled tasks do not count
stateselect (planned, active, done)nonenonprojects.useren clairProject status: planned, active, done

projects_milestone ​

A checkpoint in a project

Groupe de lecture: projects.user. Groupe d'écriture: projects.manager.

ChampTypeClasse de donnéesDonnées personnellesGroupeVu par les agentsDescription
project_idref → projects_projectnonenonprojects.useren clairThe project the milestone belongs to
nametextnonenonprojects.useren clairMilestone name, for example Design approved
due_ondatenonenonprojects.useren clairDate the milestone is due (YYYY-MM-DD)
descriptionlongtextnonenonprojects.useren clairWhat must be true for the milestone to count as reached
stateselect (pending, reached, missed)nonenonprojects.useren clairMilestone status: pending, reached, missed

projects_task ​

A unit of work inside a project

Groupe de lecture: projects.user. Groupe d'écriture: projects.user.

ChampTypeClasse de donnéesDonnées personnellesGroupeVu par les agentsDescription
titletextnonenonprojects.useren clairWhat needs doing
project_idref → projects_projectnonenonprojects.useren clairThe project this task belongs to; empty for a private task
milestone_idref → projects_milestonenonenonprojects.useren clairThe milestone this task contributes to
assigneetextinternalouiprojects.usermasquéName of the person responsible
priorityselect (low, normal, high)nonenonprojects.useren clairHow important the task is: low, normal, high
due_ondatenonenonprojects.useren clairDate the task is due (YYYY-MM-DD)
estimate_minutesnumbernonenonprojects.useren clairPlanned effort in minutes
descriptionlongtextnonenonprojects.useren clairDetails, acceptance criteria and links
stateselect (todo, doing, done, cancelled)nonenonprojects.useren clairTask status: todo, doing, done, cancelled

Flux de travail ​

projects_project ​

ActionTransitionQui peut l'exécuterApprobation
projects_project.startstate: planned → activeprojects.managernon
projects_project.finishstate: active → doneprojects.managernon
projects_project.reopenstate: done → activeprojects.managernon

projects_milestone ​

ActionTransitionQui peut l'exécuterApprobation
projects_milestone.reachstate: pending → reachedprojects.managernon
projects_milestone.missstate: pending → missedprojects.managernon

projects_task ​

ActionTransitionQui peut l'exécuterApprobation
projects_task.beginstate: todo → doingprojects.usernon
projects_task.completestate: doing → doneprojects.usernon
projects_task.cancelstate: todo → cancelledprojects.usernon

Groupes de permissions ​

Groupes utilisés par cette application :

  • projects.manager
  • projects.user

Étapes d'approbation ​

Aucune étape de cette application ne requiert d'approbation, hormis la suppression d'enregistrements.

Ce que les agents peuvent et ne peuvent pas faire ​

Un agent peut lire, rechercher, créer et modifier les enregistrements de cette application, et exécuter les actions qui ne requièrent pas d'approbation, dans les limites des groupes de permissions de son jeton.

Il ne peut que proposer ces étapes, qu'une personne doit approuver : projects_project.delete, projects_milestone.delete, projects_task.delete.

Les données personnelles sont masquées sous forme de jetons de substitution : projects_project.project_manager, projects_task.assignee.

Dépendances ​

Aucune.

Installation ​

Installez-la depuis l'application Customize (Place de marché), ou en ligne de commande :

bash
obop modules install-from projects

Nécessite une base de données et des droits d'administrateur.

Créer la vôtre ​

Le guide des modules montre comment sont écrites les applications de ce type