4
Base de données
Antoine PEREDERII edited this page 1 year ago
Rapport de conception de la Base de Données pour l'Application HeartTrack
Introduction : Notre projet consiste à développer une application WEB et Mobile d' analyse de fréquences cardiaques conçue pour répondre aux besoins d' un public diversifié. L'interface de l' application, offrira un suivi simple des activités sportives personnelles. Elle cible principalement deux types d' utilisateurs : les sportifs (professionnels et amateurs) et les coachs, leur offrant une visibilité sur les analyses de chaque membre de leur équipe.
Modèle Logique de Données (MLD):
@startuml
package MLD {
entity "Athlète" as athlete {
+ ID_Athlète : int
--
Nom : string
Prénom : string
Email : string
Sexe : string
Taille : float
Poids : float
Mot_de_passe : string
DateNaissance : Date
}
entity "Amitié" as friendship {
+ ID_Athlète1 : int
+ ID_Athlète2 : int
--
Début : Date
}
entity "Notification" as notif {
+ ID_Notif : int
--
Message : text
Date : date
Statut : string
Type : string
Urgence : string
Athlete_ID : int
}
entity "Coach" as coach {
+ ID_Coach : int
--
// attributs spécifiques au coach
+ ID_Athlete : int
}
entity "Statistique" as stats {
+ ID_Statistique : int
--
Poids : float
FC_moyenne : int
FC_max : int
Calories_brûlées_moy : float
+ ID_Athlete : int
}
entity "Entraînement" as training {
+ ID_Entrainement : int
--
Date : date
Description : text
// Exercices : string
Latitude : float
Longitude : float
Feedback : text
+ ID_Coach : int
}
entity "Participe" as takepart {
+ ID_Athlete : int
+ ID_Entrainement : int
--
}
entity "SourceDonnée" as source {
+ ID_Source : int
--
Type : string
Modèle : string
Précision : numeric
}
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
}
entity "FréquenceCardiaque" as fc {
+ ID_FC : int
--
Altitude : float
Temps : time
Température : float
BPM : int
Longitude : float
Latitude : float
+ ID_Activité : int
}
entity "Effectue" as effectue {
+ ID_Athlete : int
+ ID_Source : int
+ ID_Activity : int
--
}
}
athlete -- friendship
friendship -- athlete
notif -- athlete
coach -- athlete
stats -- athlete
takepart -- athlete
takepart -- training
effectue -- athlete
effectue -- source
effectue -- activity
activity -- fc
@enduml