Extension Messagerie (#11)

Voici le use case de messagerie.
et l'interaction overview messagerie.

Co-authored-by: Debucquoy <debucqquoy.anthony@gmail.com>
Co-authored-by: Anthony Debucquoy <debucquoy.anthony@gmail.com>
Reviewed-on: #11
Reviewed-by: Maxime <231026@umons.ac.be>
This commit is contained in:
Debucquoy Anthony 2023-12-14 15:15:39 +01:00
parent 5d8c3d03c5
commit 26bcb045ed
3 changed files with 45 additions and 55 deletions

View File

@ -3,6 +3,7 @@
\usepackage[utf8]{inputenc} \usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc} \usepackage[T1]{fontenc}
\usepackage{amsmath, amsfonts, amssymb, amsthm} \usepackage{amsmath, amsfonts, amssymb, amsthm}
\usepackage{dirtytalk}
\usepackage{tikz} \usepackage{tikz}
\usepackage{biblatex} \usepackage{biblatex}
@ -20,77 +21,74 @@
\resizebox{345pt}{!}{ \resizebox{345pt}{!}{
\input{./use_case_messagerie.tex} \input{./use_case_messagerie.tex}
} }
\caption{Use Case Diagram of the messaging extension} \caption{Use Case Diagram pour l'extension de messagerie}
\label{fig:useCase:msg_ext} \label{fig:useCase:msg_ext}
\end{figure} \end{figure}
In the diagram Figure~\ref{fig:useCase:msg_ext}, Dans le diagramme \ref{fig:useCase:msg_ext}, la définition du <<extend>> est tirée du livre:
the <<extend>> definition is not pulled from the "Genie logiciel" course "uml Pocket reference" de Dan Pilone \cite{Pilone2006-fn}.
of the University of Mons (UMONS). It is in fact the definition from
the Dan Pilone's pocket reference \cite{Pilone2006-fn}. \say{Use case extension encapsulates a distinct flow of events
that are not considered part of the normal or basic flow.
They are not necessarily exceptional conditions.}
\subsection{Answer topic} \subsection{Answer topic}
The user should be able to answer to a topic created by a teacher. L'utilisateur doit être capable de répondre à un topic crée par l'enseignant.
This answer will depend on the type of topic. The answer could be a selection on a poll, Cette réponse va dépendre du type de topic. Elle peut être une réponse à un questionnaire,
a private answer (which mean that the answer is not visible to the other users except to the professor). un message privé (qui ne serait pas visible par les autres utilisateur excepté l'enseignant) ou
The answer could finally be a basic answer to the topic and be visible to other users browsing the topic. une simple réponse qui serait visible par tous.
\subsection{Create discutions} \subsection{Create discutions}
The user can select multiple users and group them into a discussion. L'utilisateur peut séléctionner plusieurs utilisateurs et les include dans un groupe de discussion.
In this discussion, users will be able to exchange messages readable by Dans cette discussion, les utilisateurs peuvent échanger des messages lisible par les autres membres du
every other members of the discussion groupe
\subsubsection{Send messages} \subsubsection{Send messages}
Allow the creation of a message in a discussion. Permet la création d'un message dans une discusison.
The text sent to others shall be received by other users Ce message va être reçu par les autres utilisateur et ceux-ci vont être notifié
and these users shall be notified of this message by the notification du message par le système de notification
system.
\subsection{Ask appointment} \subsection{Ask appointment}
A student can ask for an appointment to a teacher. Un étudiant peut demander un rendes-vous à un enseignant.
In this request, the student will have to give a date, a time Dans cette demande, l'étudiant doit donner une date qui lui convient pour ce rendez-vous
and a subject he want to propose to the teacher. ainsi qu'une raison à ce rendez-vous.
\subsubsection{Export to calendar} \subsubsection{Export to calendar}
When an appointment is made. The program can export the event Quand un rendez-vous est crée, Le programme peut exporter l'événement dans un
to an open format that can be read by calendar software to add format libre qui pourra être lu par les programme de gestions de planning.
the event to the user's calendar.
\subsection{Manage appointment} \subsection{Manage appointment}
When a teacher received an appointment, he is able to Quand un enseignant reçois une demande de rendez-vous,
validate, deny or propose a new appointment schedule to the il a la possibilité de valider/refuser ou de proposer un nouveau rendez-vous
student. à l'étudiant
\subsubsection{Propose new appointment} \subsubsection{Propose new appointment}
If the teacher can't attend to an appointment because of his Si l'enseignant n'est pas disponible pour le rendez-vous proposé,
schedule, he can make a new time proposal and send it to il peut alors proposer un nouveau créneau horaire et l'envoyer à l'étudiant.
the student. The student then receive a notification of L'étudiant reçois alors une notification du nouveau créneau horaire.
the proposed modifications.
\subsection{Create forum} \subsection{Create forum}
The teacher can create a new forum under a specific course L'enseignant peut créer un nouveau forum lié à un cours.
The new forum will then make every student of this course Ce nouveau forum enregistrera les étudiant du cours automatiquement.
follow the forum and its topic.
\subsubsection{Post topics} \subsubsection{Post topics}
The teacher can post a new topic inside a forum to let L'enseignant peut envoyer un topic dans un forum pour préciser quelque chose aux étudiants
the student know of something specific or to ask a question to ou pour poser une questions
them.
\subsubsection{Post poll} \subsubsection{Post poll}
When posting a topic to a forum, the teacher can choose to Lors d'un post, il est possible de choisir de créer un questionnaire à choix multiples ou non.
make the post as a poll. In that case, student will have to vote Dans ce cas, les étudiants vont devoir voter pour l'une des options proposée ou potentiellement
for one of the options or if allowed by the teacher, create a new option. crée une nouvelle option.
\printbibliography \printbibliography

View File

@ -1,23 +1,19 @@
@startuml @startuml
note mainframe Appointment
Appointment
endnote
start start
:Asking Apointment] :Asking Appointment]
repeat repeat
if (accepted) is (yes) then if (accepted) is (yes) then
:Export to calendar] :Export to calendar]
stop stop
else (no) else (no)
:Propose new apointment] :Propose new appointment]
endif endif
@enduml @enduml
@startuml @startuml
note mainframe Messaging
Messaging
endnote
start start
split split
:Create Discution] :Create Discution]
@ -31,10 +27,7 @@ stop
@enduml @enduml
@startuml @startuml
note mainframe Forum
Forum
endnote
start start
:Forum Creation] :Forum Creation]

View File

@ -5,14 +5,13 @@ left to right direction
:Student: as s :Student: as s
:Teacher: as t :Teacher: as t
package "Messagerie"{ package "Messagerie"{
(Answer topics) as at (Answer topics) as at
(Ask appointement) as aa (Ask appointment) as aa
(Create Discution) as cd (Create Discussion) as cd
(Create Forum) as cf (Create Forum) as cf
(Manage appointement) as ma (Manage appointment) as ma
s -- at s -- at
s -- aa s -- aa
@ -32,7 +31,7 @@ cf <-- pt : << include >>
pt <|-- (Post poll) pt <|-- (Post poll)
cd <-- (Send messages) : << include >> cd <-- (Send messages) : << include >>
ma <-- (Propose new appointment) : << exlude>> \n [refuse] ma <-- (Propose new appointment) : << extends >> \n [refuse]
} }