From 564799a781bc637586bd701e1e0fd0622e869f69 Mon Sep 17 00:00:00 2001 From: Paul LEVRAULT Date: Sun, 26 Nov 2023 15:15:38 +0100 Subject: [PATCH] =?UTF-8?q?Mise=20=C3=A0=20jour=20de=20'Documents/Diagramm?= =?UTF-8?q?e/README=5FDIAGRAMMES.md'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Documents/Diagramme/README_DIAGRAMMES.md | 75 +++++++++++++++++++++++- 1 file changed, 72 insertions(+), 3 deletions(-) diff --git a/Documents/Diagramme/README_DIAGRAMMES.md b/Documents/Diagramme/README_DIAGRAMMES.md index 0694f3ad..b8d3f6fe 100644 --- a/Documents/Diagramme/README_DIAGRAMMES.md +++ b/Documents/Diagramme/README_DIAGRAMMES.md @@ -4,8 +4,62 @@ # Diagrammes nécéssaires à notre projet ## Diagrammes de classes -- [issue028 - Importation de fichiers .fit](DiagrammeDeClasses/README_issue028.md) +- Diagramme de classe pour l'ajout d'amis +```plantuml +class User { + + name : string +} + +User "1" --> "*" User: friends +User "1" --> "*" Notification: notifications +User "1" --> "*" Ask: friendRequests +class Notification { + - text : string +} + +interface INotifier { + + notify() : void +} + +INotifier --|> Observer + +abstract class UserManager { + - currentUser : User + + deleteFriend(userId : int) : void + + addFriend(userId : int) : void + + respondToFriendRequest(requestId : int, choice : bool) : void + + getFriends(userId : int) : User[] +} + +class Ask { + - fromUser : int + - toUser : int +} + +Ask --|> Subject + +abstract class Subject { + + attach(o : Observer) : void + + detach(o : Observer) : void + + notify() : void +} +Subject "1" --> "*" Observer +interface Observer { + + update() : void +} + +UserManager ..> User +UserManager o-- IUserRepository +UserManager o-- INotifier + +interface IUserRepository { + + findByUsername(username : string) : User + + addUser(user : User) : bool +} + +IUserRepository ..> User +``` ## Diagrammes de séquence - Envoi de demande d'ami : ```plantuml @@ -43,7 +97,7 @@ v-->c:EnregistrerReponse(idUser) c-->m:EnvoyerReponse(idUser) ``` --Supprimer un ami : +- Supprimer un ami : ```plantuml actor User as u boundary View as v @@ -73,7 +127,22 @@ c-->v: renderView(updatedFriendsList) v-->u: Display Updated Friends ``` ## Diagrammes de cas d'utilisation -- [use case 1]() +- Cas d'utilisation pour l'ajout d'amis +```plantuml +left to right direction +:User: as u +"Envoyer demande d'ami" as (c1) +"Accepter demande d'ami" as (c2) +"Lister ami" as (c3) +"Voir activité ami" as (c4) +"Supprimer ami" as (c5) + +:u: --> (c1) +:u: --> (c2) +:u: --> (c3) +:u: --> (c4) +:u: --> (c5) +``` ## Base de Données - [BDD] \ No newline at end of file