You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
130 lines
2.3 KiB
130 lines
2.3 KiB
@startuml
|
|
skinparam {
|
|
BackgroundColor LightYellow
|
|
ArrowColor Black
|
|
Shadowing false
|
|
BorderColor Black
|
|
}
|
|
|
|
package "Modèle de Données" {
|
|
|
|
entity "Athlète" as athlete {
|
|
+ ID_Athlète : int
|
|
--
|
|
Nom : string
|
|
Prénom : string
|
|
Email : string
|
|
Sexe
|
|
Taille : Float
|
|
Poids : Float
|
|
Mot_de_passe : string
|
|
// Profil_public : text
|
|
DateNaissance:Date
|
|
// Objectifs : text
|
|
}
|
|
|
|
|
|
entity "Coach" as coach {
|
|
+ ID_Athlète : int (PK, FK)
|
|
--
|
|
// Attributs spécifiques au Coach si nécessaire
|
|
}
|
|
|
|
entity "SourceDonnée" as source {
|
|
+ ID_Source : int
|
|
--
|
|
Type : string (enum)
|
|
Modèle : string
|
|
|
|
Précision : enum
|
|
Date_d'achat : date
|
|
Date_dernière_utilisation : date
|
|
}
|
|
|
|
entity "Activité" as activity {
|
|
+ ID_Activité : int
|
|
--
|
|
Type : string
|
|
Date : date
|
|
Heure_de_début : time
|
|
Heure_de_fin : time
|
|
|
|
Effort_Ressenti: int
|
|
Variabilité : float
|
|
Variance : float
|
|
Ecart-type : float
|
|
Moyenne : float
|
|
Maximum : int
|
|
Minimum : int
|
|
Temperature_moyenne: float
|
|
// visibilité
|
|
}
|
|
|
|
|
|
entity "FréquenceCardiaque" as fc {
|
|
+ ID_FC : int
|
|
--
|
|
Altitude : float
|
|
Temps : time
|
|
Température: float
|
|
BPM : int
|
|
logitude:float
|
|
latidute: float
|
|
}
|
|
|
|
|
|
entity "Statistique" as stats {
|
|
+ ID_Statistique : int
|
|
--
|
|
Distance_totale : float
|
|
Poids: float
|
|
Temps_total : time
|
|
FC_moyenne : int
|
|
FC_max : int
|
|
Calories_brûlées : float
|
|
Records_personnels : string
|
|
}
|
|
|
|
entity "Entraînement" as training {
|
|
+ ID_Entrainement : int
|
|
--
|
|
Date : date
|
|
Description : text
|
|
// Exercices : text
|
|
Feedback : text
|
|
}
|
|
|
|
entity "Notification" as notification {
|
|
+ ID_Notification : int
|
|
--
|
|
Message : text
|
|
Date : date
|
|
Statut : enum
|
|
Type : string
|
|
Urgence : enum
|
|
}
|
|
|
|
entity "Événement" as event {
|
|
+ ID_Événement : int
|
|
--
|
|
Nom : string
|
|
Description : text
|
|
Date : date
|
|
Lieu : string
|
|
}
|
|
athlete <|-- coach : Spécialisation
|
|
athlete --o{ source : Utilise
|
|
athlete --o{ activity : Effectue
|
|
source --o{ activity : Fournit
|
|
activity --o{ fc : Contient
|
|
athlete }o--o{ athlete : Est ami avec
|
|
athlete --o{ stats : A des
|
|
coach --o{ training : Attribue
|
|
athlete --o{ training : Reçoit
|
|
athlete --o{ notification : Reçoit
|
|
athlete --o{ event : Participe à
|
|
coach --o{ event : Organise
|
|
}
|
|
|
|
@enduml
|