@startuml dss_cu05a
skinparam style strictuml
skinparam defaultfontname Verdana
skinparam sequence {
    MessageAlign center
}
title DSS - CU05a : ajouter un questionnaire
actor ":Enseignant" as e
participant ":Système" as s
e -> s : recupererTousCours(courriel_enseignant :String)
e <<-- s : cours associés à l'enseignant
e -> s : recupererQuestionnaires(sigle :String)
e <<-- s : questionnaires associés au cours
e -> s : ajouterQuestionnaire(courriel_enseignant :String, cours :String,\nnom :String, description :String, etat :boolean)
e <<-- s : confirmation qu'un questionnaire a été ajouté
loop pas terminé
e -> s : recupererCategoriesQuestions(courriel_enseignant :String, cours :String)
e <<-- s : catégories des questions associées à l'enseignant
e -> s : recupererQuestionsDansCategorie(categorie :String)
e <<-- s : questions associées à la catégorie
e -> s : ajouterQuestionsAuQuestionnaire(questionnaire :JSON, questions :JSON)
end
e ->> s : fin de récupération des catégories de questions
e <<-- s: confirmer

@enduml

@startuml dss_cu05b
skinparam style strictuml
skinparam defaultfontname Verdana
skinparam sequence {
    MessageAlign center
}
title DSS - CU05b : afficher les questionnaires
actor ":Enseignant" as e
participant ":Système" as s
e -> s : recupererTousCours(courriel_enseignant :String)
e <<-- s : cours associés à l'enseignant
e -> s : recupererQuestionnaires
loop récupération de questionnaires par cours pas terminée
e -> s : recupererQuestionnaires(sigle :String)
e <<-- s : questionnaires associés au cours
e -> s : recupererDetailsQuestionnaire
loop récupération des détails des questionnaires pas terminée
e -> s : recupererQuestionnaire(nom :String)
e <<-- s : détails du questionnaire et\nétudiants ayant réalisé le questionnaire + leur note
end
e ->> s : fin de récupération des détails des questionnaires
e <<-- s: confirmer
end
e ->> s : fin de récupération des questionnaires par cours
e <<-- s: confirmer
@enduml

@startuml dss_cu05c
skinparam style strictuml
skinparam defaultfontname Verdana
skinparam sequence {
    MessageAlign center
}
title DSS - CU05c : modifier un questionnaire
actor ":Enseignant" as e
participant ":Système" as s
e -> s : recupererQuestionnaire(nom: String)
e <<--s : détail questionnaire avec liste de questions
e -> s : modifierQuestionnaire(descriptionQuestionnaire: JSON)
note right of e : descriptionQuestionnaire = { \n nom: string,\n description: string,\n etat: boolean,\n numeroQuestions: number[]\n}
e <<-- s : confirmation de modification de questionnaire
@enduml

@startuml dss_cu05d
skinparam style strictuml
skinparam defaultfontname Verdana
skinparam sequence {
    MessageAlign center
}
title DSS - CU05d : retirer un questionnaire
actor ":Enseignant" as e
participant ":Système" as s
e -> s : recupererQuestionnaire(nom: String)
e <<--s : detail questionnaire
e -> s : retirerQuestionnaire(courrielUtilisateur: String, sigleGroupe: String, nomQuestionnaire: String)
e <<-- s : confirmation de suppression de questionnaire
@enduml