Diagnostic config Formation / Compétences #862

Open
opened 2024-02-20 14:17:01 +01:00 by viennet · 2 comments
Owner

Tentative de définition d'une fonction comparant la structure du référentiel de compétences (nb de niveaux / année / parcours) avec la structure de la formation (nb d'UE / semestre / parcours, en considérant les associations).

Contexte

  • On ne considère évidemment que les UE standards (hors bonus et config exotiques).
  • On ne se base que sur la formation et son ref. de compétences, sans considérer les formsemestres mis en place.
  • Il est courant que la formation ne décrive pas tous les parcours: soit on le détecte, soit on demande quels sont les parcours à vérifier.
  • Il est aussi courant que la formation ne décrive qu'une ou deux années de la formation.

Existant (en 9.6.939)

formsemestre_warning_apc_setup est appelée depuis le tableau de bord semestre, et effectue des vérifications très semblables:

  • ref. compétence associé
  • tous les niveaux des parcours du semestre associés à des UEs du formsemestre
  • pas d'UE non associée à un niveau

Nouvelle implémentation ?

On partirait du référentiel de compétence.

  • Pour chaque parcours:
    • Pour chaque compétence:
      • Pour chaque année (BUT1, 2, 3):
        • Il y a-t-il une UE associée ?

Après quoi:

  • reste-il des UEs non parcourues ?
  • reste-il des niveaux de compétences sans UEs ?

A suivre

Tentative de définition d'une fonction comparant la structure du référentiel de compétences (nb de niveaux / année / parcours) avec la structure de la formation (nb d'UE / semestre / parcours, en considérant les associations). #### Contexte - On ne considère évidemment que les UE standards (hors bonus et config exotiques). - On ne se base que sur la formation et son ref. de compétences, sans considérer les *formsemestres* mis en place. - Il est courant que la formation ne décrive pas tous les parcours: soit on le détecte, soit on demande quels sont les parcours à vérifier. - Il est aussi courant que la formation ne décrive qu'une ou deux années de la formation. #### Existant (en 9.6.939) `formsemestre_warning_apc_setup` est appelée depuis le tableau de bord semestre, et effectue des vérifications très semblables: - ref. compétence associé - tous les niveaux des parcours du semestre associés à des UEs du formsemestre - pas d'UE non associée à un niveau #### Nouvelle implémentation ? On partirait du référentiel de compétence. - Pour chaque parcours: - Pour chaque compétence: - Pour chaque année (BUT1, 2, 3): - Il y a-t-il une UE associée ? Après quoi: - reste-il des UEs non parcourues ? - reste-il des niveaux de compétences sans UEs ? A suivre
viennet added the
BUT
enhancement
labels 2024-02-20 14:17:01 +01:00
Author
Owner

En vrac: à propos des UEs d'un semestre S_n

La formation est associée à son réf., on a p parcours. Le semestre S_n appartient à l'année \text{BUT}_a.

Pour chaque parcours, on a les niveaux dans l'année a grâce à la méthode
ApcNiveau.niveaux_annee_de_parcours(parcour, annee), qui se base sur une requête de ce genre:

# Exemple pour un parcours, en BUT2
ApcNiveau.query.filter(
    ApcParcoursNiveauCompetence.annee_parcours_id == ApcAnneeParcours.id,
    ApcParcours.id == ApcAnneeParcours.parcours_id,
    ApcParcours.referentiel_id == ref_comp.id,
    ApcParcoursNiveauCompetence.competence_id == ApcCompetence.id,
    ApcCompetence.id == ApcNiveau.competence_id,
    ApcAnneeParcours.parcours == parcour, # <<<
    ApcNiveau.annee == "BUT2",  # <<<<
)

On pourrait donc (eg pour affichage avertissement dans ue_table), regarder les niveaux de chaque parcours et voir si ils sont associés à au moins une UE. Il n'y a pas de bijection car:

  • les UEs associées au même niveau peuvent être différentes selon le parcours (coefs, contenu), par exemple avec deux parcours A et B
graph LR
    Niveau[Niveau 1] --> UE1a(UE1.A)
    Niveau --> UE1b(UE1.B)
    Niveau2[Niveau 2]

Un niveau est:

  • soit associé à au moins une UE
  • ou présent dans tous les parcours du référentiel.

Une UE est soit:

  • associée à aucun parcours (TC, donc à tous)
  • associée à un ou plusieurs parcours

Note: le nombre maximal d'UEs standards d'un parcours est, pour le BUT, 6 (à vérifier).

#### En vrac: à propos des UEs d'un semestre $S_n$ La formation est associée à son réf., on a $p$ parcours. Le semestre $S_n$ appartient à l'année $\text{BUT}_a$. Pour chaque parcours, on a les niveaux dans l'année $a$ grâce à la méthode `ApcNiveau.niveaux_annee_de_parcours(parcour, annee)`, qui se base sur une requête de ce genre: ```py # Exemple pour un parcours, en BUT2 ApcNiveau.query.filter( ApcParcoursNiveauCompetence.annee_parcours_id == ApcAnneeParcours.id, ApcParcours.id == ApcAnneeParcours.parcours_id, ApcParcours.referentiel_id == ref_comp.id, ApcParcoursNiveauCompetence.competence_id == ApcCompetence.id, ApcCompetence.id == ApcNiveau.competence_id, ApcAnneeParcours.parcours == parcour, # <<< ApcNiveau.annee == "BUT2", # <<<< ) ``` On pourrait donc (eg pour affichage avertissement dans `ue_table`), regarder les niveaux de chaque parcours et voir si ils sont associés à au moins une UE. Il n'y a pas de bijection car: - les UEs associées au même niveau peuvent être différentes selon le parcours (coefs, contenu), par exemple avec deux parcours A et B ```mermaid graph LR Niveau[Niveau 1] --> UE1a(UE1.A) Niveau --> UE1b(UE1.B) Niveau2[Niveau 2] ``` Un niveau est: - soit associé à au moins une UE - ou présent dans tous les parcours du référentiel. Une UE est soit: - associée à aucun parcours (TC, donc à tous) - associée à un ou plusieurs parcours Note: le nombre maximal d'UEs standards d'un parcours est, pour le BUT, 6 (à vérifier).
viennet added this to the ScoDoc 9.7 milestone 2024-03-15 14:36:14 +01:00
Author
Owner

TODO: vérifier s'il manque encore des vérifications, ou si les avertissements génèrent trop de fausses alarmes (messages inopportuns).

Retours utilisateurs attendus avant de clore ce ticket.

**TODO**: vérifier s'il manque encore des vérifications, ou si les avertissements génèrent trop de fausses alarmes (messages inopportuns). Retours utilisateurs attendus avant de clore ce ticket.
Sign in to join this conversation.
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: ScoDoc/ScoDoc#862
No description provided.