Skip to content

DO NOT IMPLEMENT

This part needs refinement to clarify the exact scope and content of the preparation business object. The current structure is a preliminary draft and may evolve significantly as we further define the requirements and use cases for the preparation module.

Preparation

Option required

Preparations are only available if the PREPARATION option is enabled on the project.

Definition

A Preparation is a planning container that groups all the organizational elements required before a project starts. It can be attached to a project or to a group, but not to both simultaneously.

Organization
└── Project
    ├── Preparation
    └── Group
        └── Preparation

A preparation can be attached to either a project (the typical case) or a group — not both at the same time. A group always belongs to a project, so a group-level preparation is indirectly tied to a project through the group hierarchy.

E.g. In the case of a supervised camp, participating groups may, for example, receive preparation based on their own schedule.

One preparation at a time

A project can have at most one project-level preparation. A group can have at most one group-level preparation. A single preparation instance cannot be simultaneously attached to both a project and a group. A project can therefore end up linked to several preparations in total: its own (zero or one) plus one per group (zero or one per group).

Main attributes

AttributeDescription
StatusValidation status of the preparation
CommentsDiscussion thread on the preparation itself

Status

StatusDescription
DRAFTPreparation is being edited, not yet submitted
IN_REVIEWPreparation has been submitted for validation
VALIDATEDPreparation has been approved
REJECTEDPreparation has been rejected and requires rework

Transitions

Ownership of the transitions:

TransitionRole
DRAFT → IN_REVIEWAuthor of the preparation
IN_REVIEW → VALIDATEDPROJECT_ADMIN or PROJECT_MANAGER
IN_REVIEW → REJECTEDPROJECT_ADMIN or PROJECT_MANAGER — a comment explaining the rejection is required
REJECTED → DRAFTAuthor — the same preparation is reworked and re-submitted

VALIDATED is terminal. REJECTED is not terminal: the author can rework the same preparation and re-submit it.

Entities

Structure

Dotted relationships (..) indicate that the related entity is from another module, while solid relationships ( --) indicate entities from the same module. All elements are scoped to a project, but for readability we only show the project relationship on top-level entities (movement, alert, etc.).

Relationships

Related objectRelationship
ProjectA preparation belongs to zero or one project
GroupA preparation belongs to zero or one group
LocationA preparation contains one or more locations
Typical dayA preparation contains exactly one typical day
PlanningA preparation contains exactly one planning
PedagogyA preparation contains exactly one pedagogy
MenuA preparation contains exactly one menu
BudgetA preparation contains exactly one budget
CommentA preparation can receive zero or more comments
TagThe project holds a catalog of tags reusable across all preparation comments