@startuml rdcu_ajouterQuestion
skinparam style strictuml
skinparam defaultfontname Verdana
title RDCU - ajouterQuestion()

participant ":QuestionControleur" as cq
participant "q:Question" as q
participant "listeQuestions:Question[]" as qm

->cq : ajouterQuestion(question: Question)
note right : selon Contrôleur\n(QuestionControleur est un sous-système)
cq -> q ** : q = new Question(question: Question)
note right : selon Créateur
cq -> qm : ajouter(q: Question)
note right : selon Expert

@enduml

@startuml rdcu_recupererQuestions
skinparam style strictuml
skinparam defaultfontname Verdana
title RDCU - recupererQuestions()

participant ":QuestionControleur" as cq
participant "listeQuestions:Question[]" as qm

->cq : recupererQuestions(nom : String)
note right : selon Contrôleur\n(QuestionControleur est un sous-système)
cq -> qm: questions = listeQuestions(nom: String)
note right : selon Expert
<--cq : questions: Question[]

@enduml

@startuml rdcu_recupererQuestion
skinparam style strictuml
skinparam defaultfontname Verdana
title RDCU - recupererQuestion()

participant ":QuestionControleur" as cq
participant "listeQuestions:Question[]" as qm

->cq : recupererQuestion(question_id : string)
note right : selon Contrôleur\n(QuestionControleur est un sous-système)
cq -> qm: question = find(question_id: string)
note right : selon Expert
<--cq : q : Question

@enduml

@startuml rdcu_modifierQuestion
skinparam style strictuml
skinparam defaultfontname Verdana
title RDCU - modifierQuestion()
participant ":QuestionControleur" as cq
participant "listeQuestions:Question[]" as qm
->cq : modifierQuestion(question: Question)
note right : selon Contrôleur\n(QuestionControleur est un sous-système)
cq -> qm : question = set(question_id: String, question: Question)
note right : selon Expert

@enduml

@startuml rdcu_retirerQuestion
skinparam style strictuml
skinparam defaultfontname Verdana
title RDCU - retirerQuestion()

participant ":QuestionControleur" as cq
participant "questions:\nMap<String,Question>" as qm

->cq : retirerQuestion(question_id : String)
note right : selon Contrôleur\n(QuestionControleur est un sous-système)
cq -> qm : remove(question_id: string)
note right : selon Expert

@enduml