Skip to main content

Résultats, évaluations et correction de module

Génération des résultats

byModuleGenerateTeamModuleResults() orchestre grading + reassemble puis persiste le résultat dans plusieurs documents.

sequenceDiagram
participant G as GenerateResults
participant TM as teamsModules
participant T as teams
participant E as evaluationTeam
participant RTT as RTT
G->>TM: lire moduleTypesData
G->>G: gradeModule()
G->>G: reassembleAnswer()
G->>T: teamDecisionsData.results[actModuleUid][moduleType]
G->>E: actPerf[actModuleUid][moduleType]
G->>RTT: execute_request GetTeamModuleTypeResults
RTT-->>Unity: récupérer le résultat

Document teams

Le résultat complet est enregistré dans teamDecisionsData.results[actModuleUid][moduleType]. Il contient notamment scores, errors, expectedValues et errorScores.

evaluationTeam

Les scores sont aussi propagés dans evaluationTeam.actPerf, afin d'alimenter l'évaluation globale de l'activité.

Summative retry

Lorsque la préférence RETRY_SUMMATIVE est active, le code compare la nouvelle note globale à lastSummativeGrade. La meilleure note est conservée; sinon les anciens scores d'évaluation sont restaurés. Un message module_graded est envoyé pour synchroniser l'état.

Pourquoi les résultats ne sont pas envoyés directement en RTT

Le commentaire serveur indique que le message serait trop gros. Le serveur envoie donc execute_request avec GetTeamModuleTypeResults; le client fait ensuite une commande dédiée pour récupérer la payload.

Correction côté Unity

Les résultats alimentent notamment CorrectedTeamModuleWindowControl, ModuleErrorsPopupControl, ModuleResultsReportItemControl et l'évaluation By Module. ignoreErrorFromTeamModuleResults permet de modifier l'état de certaines erreurs après correction.

Debug

Si l'answer key est correcte mais la note est mauvaise, inspecter dans l'ordre : résultat brut de gradeModule → reassembleAnswer → persistance dans teams → evaluationTeam → récupération côté Unity.