mirror of
https://gitlab.com/Chill-Projet/chill-bundles.git
synced 2025-06-07 18:44:08 +00:00
50 lines
1.1 KiB
Plaintext
50 lines
1.1 KiB
Plaintext
# diagramme de classe du module "groupe"
|
|
|
|
@startuml
|
|
|
|
title Diagramme de classe du module "groupe"
|
|
|
|
package "PersonBundle" {
|
|
class Person
|
|
class Center
|
|
}
|
|
|
|
package "GroupBundle" {
|
|
Person "1" <-- Membership
|
|
Membership "0..*" <--> "Group"
|
|
Type "1" --> "1..*" Role
|
|
Membership -right-> "1" Role
|
|
Group -right-> "1" Type
|
|
Group -left-> "1" Center
|
|
}
|
|
|
|
class Membership {
|
|
- role
|
|
- person
|
|
- group
|
|
}
|
|
note left: <b>Membership</b> relie les groupes aux\npersonnes. Chaque membership a un\n <b>role</b>, le rôle est à choisir\nparmi ceux possibles pour le <b>type</b> de <b>groupe</b>
|
|
|
|
class Group {
|
|
- type
|
|
- memberships
|
|
- name
|
|
- center
|
|
}
|
|
note left: Un groupe a un type qui est défini à sa création.
|
|
|
|
class Type {
|
|
- roles
|
|
}
|
|
note right: Les types de groupe qu'il est possible de créer \nsont définis dans l'interface d'administration.\nExemple de type: "famille", "groupe de parole", "stage", ...
|
|
|
|
class Role {
|
|
- name
|
|
}
|
|
note right: Pour chaque <b>Type</b> on définit des rôles\npossibles pour ce type de groupe. Par exemple, pour le\ntype "famille" on peut avoir les rôles <i>parents</i> et <i>enfants</i>.
|
|
|
|
|
|
|
|
|
|
@enduml
|