From 470fd9eac94c6d09be27b8359ebae0550cffc0ed Mon Sep 17 00:00:00 2001 From: emna latrous <emna.latrous@etu.utc.fr> Date: Wed, 27 May 2020 01:42:21 +0200 Subject: [PATCH] initial commit --- UML_trafic.plantuml | 130 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 130 insertions(+) create mode 100644 UML_trafic.plantuml diff --git a/UML_trafic.plantuml b/UML_trafic.plantuml new file mode 100644 index 0000000..987b5d1 --- /dev/null +++ b/UML_trafic.plantuml @@ -0,0 +1,130 @@ +@startuml + +' PARAMETERS +skinparam linetype polyline +skinparam linetype ortho + + +title Base de données trafic V2I + +package "Composant" #87CEEB { +abstract class Noeud { + +ajouter_capteur() : void + +transfér_capteur(N1:Capteur,N2:Capteur): Capteur + +supprimer_capteur():void +} +Noeud"1" *-- "0..*,1..*"Capteur +class Capteur +Class Capteur{ + + numéro_série : int + + modéle : string +} +note top of Capteur : (numéro_série, modéle) primary key + + + + +class Infrastructure { + +id :int {unique} + } + + package Composant_mobile #483D8B { +class Véhicule { + +numéro_immatriculation : integer + +marque : string + +modéle : string + +anne_production : date + +type : Type_voiture_spéciale + } +enum Type_voiture_spéciale { + ORDINAIRE + SAMU + POMPIER + POLICE +} + + + class Moto{ + +capacité_moto : integer + } + class Camion{ + +capacite_maximale : integer + } + class Voiture { + + } + } + + +} + Noeud "1..*" - "1" Noeud +(Noeud, Noeud) .. Communication +package "Communication" #000080 { + class Communication { + +type_communication : Type_communication +} + enum Type_communication { + UN_A_UN + UN_A_PLUSIEURS +} +} + + + +package "Evenement" #DDDDDD { +abstract class Evenement { + +timestamp :date + +id_entite : integer + +contenu {unique} +} + +class accident { + +gravité : integer + +nombre_véhicule : integre + +type_véhicule[1..*] : sting +} + +class alert_meteo { + +temps : string + +température : integer +} + +class detection_materiel { + } + +class traveau_routier { + } + +} + package "localisation" #5F9EA0 { +class Position { + +longitude : float + +latitude : float +} + +class Commune { + +nom : string + +code_postal : integer +} +Commune "1" --"*" Position : appartient + Infrastructure "1"--"1"Position : se trouve dans + +} + +Noeud <|-- Infrastructure +Noeud <|-- Véhicule +Capteur "1" -- "*" Evenement : détecte +Evenement <|-- accident +Evenement <|-- alert_meteo +Evenement <|-- detection_materiel +Evenement <|-- traveau_routier +Véhicule <|-- Voiture + +Véhicule <|-- Moto +Véhicule <|-- Camion +Evenement "*" -- "1" Commune : se déroule dans + Camion "0..1"--"*" Voiture : transporte +Communication "1" *-- "1" Evenement: produit + + +@enduml \ No newline at end of file -- GitLab