ETC-Genie-Logiciel-I/docs/1_Analyse/1.4_Abstractions.md

112 lines
3.0 KiB
Markdown
Raw Normal View History

2023-06-03 18:07:33 -04:00
# Abstractions principales
Un forum est divisé par catégories générales (par exemple: un forum ayant
comme intêret les aliments pourrait être divisé en 4 catégories qui seraient
analogues aux 4 catégories alimentaires); ces sujets vont ensuite être divisés
par fils - ou conversations (comme un fil dans la catégorie "Fruits et légumes"
avec comme sujet "Comment aimez-vous manger des carottes?"). L'atôme du forum
est la publication; un texte écrit par un utilisateur, soit pour démarrer une
conversation, soit en réponse à la publication de départ, ou bien en réponse à
une réponse en particulier.
Les forums sont modérés par des utilisateurs particuliers (des modérateurs) et
des administrateurs responsables du contenu de ceux-ci, ils peuvent ainsi
censurer du contenu inapproprié et bannir un utilisateur qui ne suit pas les
conditions d'utilisation des forums.
## Modèle du domaine (Diagramme de classes simplifié)
```plantuml
hide circles
hide methods
hide attributes
package Rôles {
class "Administrateur" as Admin
class "Modérateur" as Mod
class "Utilisateur" as User
class "Invité" as Guest
}
Guest <|-- User
User <|-- Mod
Mod <|-- Admin
package Forum {
class "Catégorie" as Category
class "Fil" as Thread
class "Publication" as Post
class "Compte" as Account
}
Category "1" --o "*" Thread
Thread "1" --o "1" Post : Publication Originale
Thread "1" ---* "*" Post
Post "1" --* "*" Post : Références
Post "*" o-- "1" Account
User "1" --o "1" Account
```
## Glossaire
### Langage Commun
#### Invité (Guest)
Acteur qui utilise le système sans authentification.
#### Utilisateur (User)
Acteur authentifié dans un système.
#### Modérateur (Moderator)
Super-utilisateur avec certains droits sur le système et la responsabilité de
garder le système sain d'utilisation.
#### Administrateur (Administrator)
Super-utilisateur qui gère le système et qui a ainsi tous les droits sur ce
dernier.
### Jargon du domaine
#### Forum (Forum)
Souvent vu au pluriel pour désigner son ensemble, c'est l'environnement où des
utilisateurs vont discuter sur des sujets désignés selon le contexte de
l'endroit.
#### Catégorie (Category)
Division des forums par sujets généraux permettant une recherche plus facile des
discussions passées.
#### Publication (Post)
Message écrit par un utilisateur, qui peut être en réponse à une autre
publication ou pour démarrer une discussion.
#### Fil de discussion (Thread)
Ensemble de publications entre des utilisateurs qui composent une discussion.
#### Compte (Account)
Ensemble des informations reliés à un utilisateur (Nom d'utilisateur, adresse
courriel, emplacement, etc.) qui peuvent où ne pas être vues par les autres
utilisateurs.
#### Archivage (Archiving)
Mettre un fil de discussion dans un état où il est impossible d'ajouter à la
conversation; effectivement rendre le fil uniquement lisible.
### Langage spécifique
Vu l'aspect général du projet, il n'y a pas vraiment de langage spécifique à
utiliser.