Ajouts oubliés
This commit is contained in:
125
docs/2_Solution/2.1_Conception.md
Normal file
125
docs/2_Solution/2.1_Conception.md
Normal file
@@ -0,0 +1,125 @@
|
||||
# Modèle de conception
|
||||
|
||||
```plantuml
|
||||
hide circles
|
||||
|
||||
package Roles {
|
||||
hide methods
|
||||
hide attributes
|
||||
|
||||
class Admin
|
||||
class Mod
|
||||
class User
|
||||
class Guest
|
||||
}
|
||||
|
||||
Guest <|-- User
|
||||
User <|-- Mod
|
||||
Mod <|-- Admin
|
||||
|
||||
package Entities {
|
||||
hide methods
|
||||
|
||||
class Category {
|
||||
string Nom
|
||||
}
|
||||
|
||||
class Thread {
|
||||
string Titre
|
||||
bool EstÉpinglé
|
||||
bool EstArchivé
|
||||
}
|
||||
|
||||
class Post {
|
||||
string Contenu
|
||||
string ContenuModifié
|
||||
DateTime DateDePublication
|
||||
DateTime DateDeModification
|
||||
bool EstCachée
|
||||
}
|
||||
|
||||
class Account {
|
||||
string Pseudo
|
||||
string Courriel
|
||||
string Description
|
||||
string Signature
|
||||
string Rôle
|
||||
}
|
||||
}
|
||||
|
||||
Category "1" --o "*" Thread
|
||||
Thread "1" --o "1" Post : Original Post
|
||||
Thread "1" ---* "*" Post
|
||||
|
||||
Post "1" --* "*" Post : References
|
||||
Post "*" o-- "1" Account
|
||||
|
||||
package Views {
|
||||
hide methods
|
||||
hide attributes
|
||||
|
||||
class CategoryView
|
||||
class ThreadView
|
||||
class PostView
|
||||
class AccountView
|
||||
}
|
||||
|
||||
package Controllers {
|
||||
hide attributes
|
||||
|
||||
class CategoryController {
|
||||
Category[] AfficherCatégories()
|
||||
bool CréerCatégorie(string nom)
|
||||
bool ModifierNomCatégorie(Category cat, string nom)
|
||||
bool SupprimerCatégorie(Category cat)
|
||||
}
|
||||
|
||||
class ThreadController {
|
||||
Thread[] ListerFils()
|
||||
Thread AfficherFil(string title)
|
||||
bool CréerFil(string title, string content)
|
||||
bool RépondreAuFil(Thread thr, string content, Post[] ref)
|
||||
bool ÉpinglerFil(Thread thr)
|
||||
bool ArchiverFil(Thread thr)
|
||||
}
|
||||
|
||||
class PostController {
|
||||
bool CréerPublication(string content)
|
||||
bool ModifierPublication(Post pst, string content)
|
||||
bool CacherPublication(Post pst)
|
||||
}
|
||||
|
||||
class AccountController {
|
||||
Account AfficherCompte(string pseudo)
|
||||
bool CréerCompte(string pseudo, string email, string desc, string sign)
|
||||
bool ModifierDescription(Account acc, string desc)
|
||||
bool ModifierSignature(Account acc, string sign)
|
||||
bool ModifierRôle(Account acc, string role)
|
||||
bool BannirCompte(Account acc)
|
||||
}
|
||||
}
|
||||
|
||||
Guest --> CategoryView
|
||||
Guest --> ThreadView
|
||||
Guest --> PostView
|
||||
Guest --> AccountView
|
||||
|
||||
CategoryView --> CategoryController
|
||||
ThreadView --> ThreadController
|
||||
PostView --> PostController
|
||||
AccountView --> AccountController
|
||||
|
||||
CategoryController --> Category
|
||||
|
||||
ThreadController --> Thread
|
||||
ThreadController --> Post
|
||||
|
||||
PostController --> Post
|
||||
PostController --> Account
|
||||
|
||||
AccountController --> Account
|
||||
|
||||
|
||||
|
||||
```
|
||||
|
14
docs/2_Solution/2.2_Paquetages.md
Normal file
14
docs/2_Solution/2.2_Paquetages.md
Normal file
@@ -0,0 +1,14 @@
|
||||
# Diagramme de paquetages
|
||||
|
||||
```plantuml
|
||||
package Roles
|
||||
package Controllers
|
||||
package Views
|
||||
package Entities
|
||||
|
||||
Roles ..> Views
|
||||
Views ..> Controllers
|
||||
Controllers ..> Entities
|
||||
|
||||
```
|
||||
|
20
docs/2_Solution/2.3_Composantes.md
Normal file
20
docs/2_Solution/2.3_Composantes.md
Normal file
@@ -0,0 +1,20 @@
|
||||
# Diagramme de composantes
|
||||
|
||||
```plantuml
|
||||
|
||||
package WebServer {
|
||||
[<<Website>>\rSite Web] as Website
|
||||
interface API
|
||||
API - [<<Web Backend>>\rAPI Web]
|
||||
}
|
||||
|
||||
package Database {
|
||||
interface MSSQL
|
||||
MSSQL - [<<MS SQL Lib>>\rBDForum]
|
||||
}
|
||||
|
||||
Website <..> API
|
||||
API <..> MSSQL
|
||||
|
||||
```
|
||||
|
37
docs/2_Solution/2.4_Deploiement.md
Normal file
37
docs/2_Solution/2.4_Deploiement.md
Normal file
@@ -0,0 +1,37 @@
|
||||
# Diagramme de déploiement
|
||||
|
||||
```plantuml
|
||||
node Client {
|
||||
component "<I><<Browser>></I>\rNavigateur Web" as Browser
|
||||
}
|
||||
|
||||
node "<I><<Web Server>></I>\rServeur Web" as WebServer {
|
||||
component "<I><<Framework>></I>\rReact.js" as React
|
||||
component "<I><<Website>></I>\rSite Web Forum" as Website
|
||||
component "<I><<Library (.dll)>></I>\rMicrosoft .Net Core" as DotNet
|
||||
component "<I><<Framework>></I>\rMicrosoft Asp.Net\rFramework" as AspNet
|
||||
component "<I><<Framework>></I>\rMicrosoft Entity Framework" as EF
|
||||
component "<I><<Library (.dll)>></I>\rMicrosoft Asp.Net Identity Core" as Ident
|
||||
component "<I><<Executable (.exe)>></I>\rAPI Web Forum .Net" as API
|
||||
}
|
||||
|
||||
node "<I><<Server>></I>\rServeur Microsoft SQL" as MSSQLServer {
|
||||
component "<I><<MSSQL Database>></I>\rBase de données\rMicrosoft SQL" as SQLDb
|
||||
component "<I><<MSSQL Config File>></I>\rFichier de\rconfiguration" as SQLConf
|
||||
}
|
||||
|
||||
Browser --> Website
|
||||
Website --> API
|
||||
API --> SQLDb
|
||||
|
||||
Website *-- React
|
||||
|
||||
API *-- DotNet
|
||||
API *-- AspNet
|
||||
API *-- EF
|
||||
API *-- Ident
|
||||
|
||||
SQLDb *-- SQLConf
|
||||
|
||||
```
|
||||
|
Reference in New Issue
Block a user