Commit 5ea71768 authored by Gaetan Carabetta's avatar Gaetan Carabetta

update

parent 29de90f9
......@@ -3,6 +3,7 @@
[Relationnel](https://gitlab.utc.fr/-/ide/project/gcarabet/projet_nf17_p19_tdg1_groupe2/edit/master/-/NDC.md#relationnel)
[MongoDB](https://gitlab.utc.fr/-/ide/project/gcarabet/projet_nf17_p19_tdg1_groupe2/edit/master/-/NDC.md#mongodb)
[Neo4J](https://gitlab.utc.fr/-/ide/project/gcarabet/projet_nf17_p19_tdg1_groupe2/edit/master/-/NDC.md#neo4j)
[Relationnel Objet](https://gitlab.utc.fr/-/ide/project/gcarabet/projet_nf17_p19_tdg1_groupe2/edit/master/-/NDC.md)
# Contexte
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.
......@@ -119,3 +120,23 @@ Les relations possibles sont décrites selon les labels suivants:
* Un médicament fait partie d'un traitement: MÉDICAMENT --appartientA --> TRAITEMENT
* Un traitement est prescrit par un véterinaire: TRAITEMENT --prescritPar--> VÉTERINAIRE
* Un traitement est prescrit pour un animal: TRAITEMENT --prescritA--> ANIMAL
## Relationnel Objet
#### Hypothèses
* On suppose qu'un médicament n'est plus réservé à une espèce,
* Un traitement est prescrit avec un seul médicament à la fois,
* On suppose que les Clients peuvent avoir deux numéros de téléphones (domicile et portable).
#### Contraintes
* Un vétérinaire a prescrit au moins un traitement pour qu'il soit présent dans la BDD,
* Un animal a reçu au moins un traitement pour être placé dans la BDD,
* Donc au moins un médicament a été prescrit.
#### Choix du modèle
* Nous avons choisit d'imbriquer les tables Vétérinaire, Médicament et Posologie dans la table Traitement,
* Nous avons imbriqué la table Traitement à la table Animal,
* Nous avons rajouter une table Numéro, imbriquée dans la table Client.
@startuml
hide circle
hide empty members
' skinparam linetype ortho
class Client {
nom: string
prenom: string
ddn: date
adresse: string
numero[1..2]: integer
}
class Veterinaire{
nom: string
}
class Classe_espece {
nomClasse : string {key}
}
class Espece {
nomEspece : string {key}
}
class Animal {
nom : string
poids : float
taille : float
naissance : date
}
note left of Animal
date de naissance peut etre NULL
poids>0
taille>0
endnote
class Traitement {
debut : date
duree : int
nbJournalier : int
}
note right of Traitement
duree > 0
nbJournalier > 0
endnote
class Medicament {
nomMolec : string {key}
}
' Association
Traitement "0..*" -- "1" Animal : prescrit à >
' Association
Veterinaire "1" -- "0..*" Traitement : prescrit >
' Association
Animal "1..*" -- "1" Client : possede <
' Association et groupe d'association
Traitement "0..*" -- "1" Medicament
' Composition class_espece et espece
Classe_espece *-- "1..*" Espece : appartient <
' Relation suppriméee
' Espece "1..*" -- "1..*" Medicament : peut prendre >
' Association
Espece *-- "1..*" Animal : appartient <
@enduml
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment