NDC.md 4.38 KB
Newer Older
Gaetan Carabetta's avatar
Gaetan Carabetta committed
1
# Note de clarification
Osvaldo Valdivia Salas's avatar
Osvaldo Valdivia Salas committed
2
# Contexte
Gaetan Carabetta's avatar
Gaetan Carabetta committed
3
4
La clinique vétérinaire a besoin d’un système qui gère les données des clients, du personnel, des animaux, des médicaments et traitements.
Le système à développer doit être capable de traiter ces informations et de faire des requêtes spécifiques sur ces dernières, permettant une utilisation facile et efficace.
Gaetan Carabetta's avatar
Gaetan Carabetta committed
5

Osvaldo Valdivia Salas's avatar
Osvaldo Valdivia Salas committed
6
# Projet
Gaetan Carabetta's avatar
Gaetan Carabetta committed
7
Le projet consiste en la création d'une base de données pour une clinique vétérinaire.
Gaetan Carabetta's avatar
Gaetan Carabetta committed
8
9
Cette base de données devra contenir des informations sur les clients, le personnel, les animaux traités et les traitements prescrits.
Cette base de données pourra être manipulée afin de mettre à jour les informations ou d'afficher des statistiques.
Gaetan Carabetta's avatar
Gaetan Carabetta committed
10

Gaetan Carabetta's avatar
Gaetan Carabetta committed
11
12
13
On veut pouvoir lister tous les animaux d'un client qui ont été traités dans la clinique.
On veut garder les traitements prescrits par chaque vétérinaire pour chaque animal.

Gaetan Carabetta's avatar
Gaetan Carabetta committed
14
15
## Relationnel 

Gaetan Carabetta's avatar
Gaetan Carabetta committed
16
#### Hypothèses
Gaetan Carabetta's avatar
Gaetan Carabetta committed
17
* On suppose que l'administrateur ne fait pas partie du personnel soignant,
18
* On suppose que le personnel n'a qu'une seule spécialité,
Gaetan Carabetta's avatar
Gaetan Carabetta committed
19
* Les medicaments peuvent convenir à une ou plusieurs classes d'espèces animales,
Gaetan Carabetta's avatar
Gaetan Carabetta committed
20
21

#### Descriptions opérationnelles
Gaetan Carabetta's avatar
Gaetan Carabetta committed
22
23
24
25
* L'administrateur gère la base de données,
* Un client a au moins un animal traité,
* Le personnel ne peut pas avoir d'animal traité,
* Le personnel a un seul poste,
26
* A chaque membre du personnel est associé une et une seule spécialité,
Gaetan Carabetta's avatar
Gaetan Carabetta committed
27
28
29
30
* Une spécalité est associée à une classe d'espèces animales,
* Une spécialité ne limite pas la prescription d'un traitement à une autre classe d'espèces,
* Un traitement ne peut être prescrit que par un vétérinaire,
* Un traitement contient au moins une molécule,
Gaetan Carabetta's avatar
Gaetan Carabetta committed
31
* Un traitement est prescrit à un seul animal,
Gaetan Carabetta's avatar
Gaetan Carabetta committed
32
* Un médicament n'est autorisé que pour une ou plusieurs espèces,
33
* Un animal appartient à une seule espèce et donc à une seule classe,
Gaetan Carabetta's avatar
Gaetan Carabetta committed
34
* Un animal est associé à un seul client.
Osvaldo Valdivia Salas's avatar
Osvaldo Valdivia Salas committed
35
36

#### Fonctions
Gaetan Carabetta's avatar
Gaetan Carabetta committed
37
38
39
* L’application permettra à l’administrateur d’ajouter des clients avec un nom, un prénom, une date
de naissance, une adresse et un numéro de téléphone.
* L’application permettra à l’administrateur d’ajouter du personnel avec un nom, un prénom, une date
40
41
42
de naissance, une adresse, un numéro de téléphone, un poste et à minima une spécialité:
    * Le poste peut prendre la valeur de vétérinaire ou d'assistant,
    * La spécialité ne limite pas le personnel de soigner les autres classes d'espèces,
Gaetan Carabetta's avatar
Gaetan Carabetta committed
43
    * Le personnel à au moins un poste, il n'est pas possible de n'avoir aucun poste. 
44
45
46
* L’application permettra à l’administrateur d’ajouter des animaux, chacun associé à un client, avec un nom, une espèce, un poids et une taille:
    * La date de naissance n’est pas obligatoire,
    * Le client peut être associé à plusieurs animaux, mais un animal qu'à un seul client,
Gaetan Carabetta's avatar
Gaetan Carabetta committed
47
    * L’espèce d’un animal doit appartenir à une seule classe d´espèces animales.
48
* L’application refusera l'ajout si un client et un personnel ont le même nom, prénom et date de naissance.
Gaetan Carabetta's avatar
Gaetan Carabetta committed
49
* L’application permettra à l’administrateur d’ajouter de nouveaux médicaments avec un
50
nom, une petite description et la liste des espèces qui peuvent le prendre:
Gaetan Carabetta's avatar
Gaetan Carabetta committed
51
    * Ainsi l’application ne permettra pas ajouter le traitement si l'animal n'appartient pas à l’espèce autorisé pour la prise du médicament.
Gaetan Carabetta's avatar
Gaetan Carabetta committed
52
* L’application permettra de garder un historique des traitements effectués par un vétérinaire, avec les informations suivantes : une date de début, une durée, le nom des médicaments et la quantité journalière prescrite.
Gaetan Carabetta's avatar
Gaetan Carabetta committed
53
54
    * Un traitement peut contenir plusieurs médicaments. 

Gaetan Carabetta's avatar
Gaetan Carabetta committed
55
56
57
58
59
60
61
62
## Non relationnel (MongoDB)

#### Descriptions opérationnelles
* Un client peut avoir zéro ou plusieurs animaux traités,
* Un traitement contient au moins un médicament,
* Un traitement est prescrit pour un seul animal,
* Un animal peut recevoir plusieurs traitements,
* Un animal appartient à une seule espèce et donc à une seule classe,
Gaetan Carabetta's avatar
Gaetan Carabetta committed
63
64
65
66
67
68
* Un animal est associé à un seul client.

#### Notas
* Pour ajouter un animal à un client il faut renseigner la clé naturelle (nom, prenom et ddn) ou la clé artificielle créée par MongoDB,
* Pour ajouter un traitement à un animal il faut renseigner l'identifiant unique de cet animal car il n'y a pas de clé naturelle,
* A chaque traitement on va renseigner une liste de médicaments, alors qu'avant on utilisais des relations.