Hiérarchie de groupes : parents, enfants, contraintes héritées

Premium

Fonction Premium. La hiérarchie de groupes et les contraintes horaires de groupes sont incluses dans les fonctions Premium.

Hiérarchie de groupes : organisez les groupes d'une classe en parents et enfants, avec des contraintes horaires qui se propagent par héritage — pour les structures à plusieurs niveaux successifs de subdivisions.

Au-delà du modèle plat « classe → groupes », Omniscol permet d'organiser les groupes d'une classe en une hiérarchie parent / enfant et d'attacher des contraintes horaires qui se propagent par héritage. C'est utile quand la classe se structure en plusieurs niveaux successifs de subdivisions.

Créer une hiérarchie par glisser-déposer

Sur la page des groupes d'une classe, le glisser-déposer définit la hiérarchie :

  • Glisser un groupe sur un autre → l'enfant est rattaché au parent.
  • Glisser un enfant sur la tête de liste des groupes → l'enfant est ressorti de sa hiérarchie et redevient un groupe direct de la classe.

Pas de limite de profondeur. Vous pouvez avoir des chaînes parent → enfant → petit-enfant si votre découpage le justifie.

Exemple canonique

Hiérarchie type :

Classe 8A

A — parent

A1 — enfant de A

A2 — enfant de A

B — parent

B1 — enfant de B

B2 — enfant de B

Partitions déclarées :

  • (A, B) — A et B sont exclusifs au niveau parent.
  • (A1, A2) — sous A, A1 et A2 sont exclusifs.
  • (B1, B2) — sous B, B1 et B2 sont exclusifs.

Conséquence automatique : Omniscol autorise la planification simultanée de groupes appartenant à des branches différentes — par exemple A1 et B2 peuvent être au même créneau, parce qu'aucun étudiant n'est dans les deux (A1 ⊂ A, B2 ⊂ B, et A ∩ B = ∅).

Pas besoin de redéclarer la partition (A1, B2) : l'héritage la calcule.

Héritage des contraintes horaires

Au-delà des partitions, vous pouvez attacher des contraintes horaires (disponibilités, incompatibilités) à un groupe. Avec la hiérarchie, ces contraintes s'héritent des parents vers les enfants — par un système de masque que les enfants peuvent surcharger.

Exemple : créneau réservé EPS

Cas typique :

  • La classe 8A est indisponible le lundi après-midi (créneau global bloqué pour activités collectives).
  • Par héritage, tous les groupes de la classe sont indisponibles le lundi après-midi.
  • Sauf le groupe Sport : on inverse son masque pour autoriser le lundi après-midi et interdire tout le reste. Toutes les activités sportives de ce groupe tomberont alors automatiquement sur ce créneau protégé.

Le mécanisme est puissant : un masque parent + une exception enfant suffit à modéliser proprement des créneaux dédiés sans avoir à dupliquer la contrainte sur chaque cours.

Autre exemple : un parent Electifs qui porte les créneaux autorisés

Autre cas très utile : l'établissement veut que tous les électifs tombent uniquement sur quelques créneaux réservés, par exemple :

  • lundi matin,
  • mercredi avant 10h,
  • vendredi matin.

On peut alors :

  • créer un groupe parent Electifs qui ne sera pas lui-même affecté à des cours ;
  • exprimer sur ce parent les créneaux autorisés en peignant les contraintes horaires ;
  • créer en dessous autant de sous-groupes que nécessaire : Elective Marketing, Elective Finance, Elective Data, etc.

Tous ces sous-groupes héritent alors des mêmes créneaux autorisés. Si la règle change, on modifie un seul point : le parent Electifs.

Electifs — groupe parent

Elective Marketing

Elective Finance

Elective Data

Créneaux autorisés : lundi matin, mercredi avant 10h, vendredi matin

Règles d'héritage

  • Un groupe enfant hérite par défaut des contraintes horaires de son parent.
  • L'enfant peut surcharger ces contraintes : ajouter des contraintes propres ou inverser le masque.
  • Les partitions du parent s'appliquent automatiquement aux enfants : si A et B sont en partition, les enfants de A sont exclusifs des enfants de B sans déclaration explicite.

Contraintes héritées et groupes de groupes

Un groupe peut aussi être membre d'un groupe de groupes. Ses contraintes — les siennes comme celles héritées de sa classe et de ses groupes parents — sont alors consolidées avec celles des autres groupes membres : la séance du groupe de groupes respecte toutes ces indisponibilités réunies. L'héritage descend donc la hiérarchie, puis la consolidation réunit les membres du groupe de groupes.

Classe — indisponible lundi après-midi

Groupe parent

Groupe enfant — hérite du parent

Groupe de groupes

Autre groupe membre (autre classe)

Séance : indisponibilités consolidées

Voir Groupes de groupes pour le détail de la consolidation.

Quand utiliser une hiérarchie

  • Bouquets d'options : une classe avec des langues structurées en niveaux (Anglais Renforcé > A1-Conversation, A1-Civilisation, A2-…).
  • TP avec sous-rotations : deux demi-classes pour le TP, chacune subdivisée en sous-groupes pour les manips.
  • Parcours différenciés : un parcours principal avec des modules optionnels distincts qui se planifient au sein du parcours.
  • Sport : un groupe global qui regroupe tous les étudiants, avec un masque dédié pour les créneaux sport.
  • Electifs sur créneaux réservés : un groupe parent Electifs porte les créneaux autorisés, et ses sous-groupes correspondent aux électifs réels.

Quand ne pas utiliser

  • Pour des classes simples sans subdivision hiérarchique — la hiérarchie ajoute de la complexité.
  • Pour mélanger des étudiants de classes différentes — c'est le rôle des alignements ou groupes de groupes, pas de la hiérarchie intra-classe.
  • Pour des inscriptions ouvertes — utilisez les groupes libres.

Procédure

Construire une hiérarchie parent/enfant

  1. La hiérarchie de groupes organise les groupes d'une classe en parents et enfants, avec héritage des contraintes horaires.

  2. Créez d'abord les groupes à plat sur la page des groupes de la classe : A, A1, A2, B, B1, B2, plus un groupe transverse Sport. À ce stade, tous sont au même niveau, directement rattachés à la classe.

  3. Glisser-déposer pour hiérarchiser : faites glisser A1 sur AA1 devient enfant de A. Idem pour A2, B1, B2. Vous obtenez deux branches A → A1, A2 et B → B1, B2. Pas de limite de profondeur.

    Pour ressortir un enfant : glissez-le sur la tête de liste des groupes de la classe.

  4. Déclarez les partitions : (A, B) au niveau parent (exclusifs), (A1, A2) sous A, (B1, B2) sous B. Inutile de redéclarer (A1, B2) : Omniscol calcule par héritage qu'A1 ⊂ A et B2 ⊂ B sont compatibles (planifiables au même créneau).

  5. Posez le masque parent : sur la classe, marquez lundi après-midi indisponible. Tous les groupes en héritent automatiquement. Vérifiez en consultant la grille de chaque groupe : le créneau est bloqué partout.

  6. Inversez le masque sur Sport : sur la fiche du groupe Sport, inversez la contrainte horaire — autorisez le lundi après-midi, interdisez tout le reste. Toutes les activités sportives tombent automatiquement sur ce créneau dédié, sans avoir à le redéclarer sur chaque cours.

  7. Vous avez maintenant une hiérarchie active avec héritage des partitions et masque horaire dédié. Le solveur s'en sert lors de la génération automatique et les conflits hérités sont signalés en temps réel.

Voir aussi