Aide pour concevoir mon MCD

Signaler
Messages postés
10
Date d'inscription
mardi 11 juin 2013
Statut
Membre
Dernière intervention
5 mai 2021
-
Messages postés
10
Date d'inscription
mardi 11 juin 2013
Statut
Membre
Dernière intervention
5 mai 2021
-
Bonjour,

je suis en train d'essayer de créer une application afin de pouvoir gérer et créer des épreuves sportives en milieu scolaire. J'ai dans un premier temps commencé par créer un "bilan" de ce que doit réaliser mon application pour savoir ce que devra comprendre ma base de données. Voici ce à quoi je suis arrivé :

GENERALITES


1 – Identification des personnes pouvant utiliser l’application

Un enseignant pourra se connecter à l'application à l'aide d'un MDP et de son "nomprenom".
Un élève pourra se connecter avec la même méthode. Le MDP élève sera généré automatiquement en fonction de : 3 premiere lettre du prenom, 3 premiere lettre de son nom, sa place dans l'ordre alphabétique de sa classe.

Chaque enseignant aura accès à la liste de tous les élèves et classes de son établissement, afin de modifier ses listes en cas de départ ou d'arriver d'élève en cours d'année.

2 - Gestion des classes / UNSS

Un enseignant pourra insérer la liste de ses classes (nom), et de ses élèves (nom, prenom, date de naissance, sexe).
Un enseignant pourra notifier l'inscription d'un élève dans le cadre de l'UNSS. Si l'élève est inscrit dans l'UNSS, il lui sera attribuée un catégorie (benjamin, benjamine, minime F, minime G, cadet, cadette, ... ) en fonction de son année de naissance. Un enseignant pourra aussi supprimer cette inscription à l'UNSS en cours d'année.

3 – Mise en place et création des épreuves

Un enseignant choisie l’épreuve à laquelle il souhaite que ses élèves participent. Il inscrit sa classe, et éventuellement, celle d’un ou des collègues qui travaillent en même temps. (L’épreuve sera donc affectée dans la liste des épreuves où un enseignant participe).
Il est possible de créer une épreuve uniquement pour les élèves inscrit à l'UNSS en fonction d'une ou plusieurs catégories.
L'épreuve ainsi créée apparaitra dans la liste des épreuve ouverte pour chaque enseignant et élève y participant.

4 – Utilisations annexes

- Modification de son propre MDP pour les enseignants
- Ajout d’un établissement a son propre profil,
- Archivage par extraction (CSV ou EXCELLE) des épreuves terminées
- Un enseignant dont la classe participe à une épreuve, peut modifier ou supprimer les résultats de chaque les élèves.

5 – Utilisations élèves

- L’élève dont la classe participe à une ou plusieurs épreuves peut se connecter à l’épreuve pour entrer ses performances ou résultats et les modifier pendant que la séance est en cours. Ils peuvent aussi consulter l’épreuve intégrale et son profil dans chaque épreuve


Dictionnaire E/A GENERALITES :

ENSEIGNANTS (ENS) : nom, prenom, mdp,
ETABLISSEMENTS (ETA) : nom
CLASSES : nom
ELEVES : nom, prenom, sexe, unss, mdpAuto
UNSS : eleve, catégorie
EPREUVES (EPV) : nom

Chose à traiter :

- Autorisations diverses (cf chap.4)
- Création des profils enseignants
- Ajouter Classe à partir d’un fichier EXCEL ou CSV.
- Ajouter Elèves à partir d’un fichier EXCEL ou CSV.
- Attribution classes aux enseignants en fonction de leur établissement.
- Attribution des élèves par classe en fonction de l’établissement dans lequel ils se trouvent.
- Choix des classes participant à une épreuve, en y précisant la date d’ouverture par l’enseignant.
- Répartition des épreuves ouvertes aux profils enseignants qui sont en charge des classes participantes.
- Exporter les résultats d’une épreuve par l’enseignant format Excel et/ou CSV.
 -Accès à l’épreuve pour les élèves via le mdp généré à l’insertion de la liste élève.


BIATHLON

1- Réglages

- On peut identifier plusieurs réglages :
- Les points marqués par tours de course
- Les points marqués par 1er tir réussi
- Les points marqués par 2nd tir réussi
- Les points pour chaque niveau de succès que peut obtenir un groupe
- Le nombre d’élève maximum par groupe (allant de 1 à 4).

2- Mise en place

- Création des groupes par l'enseignant

3- Réalisation

- Prise de performance lors des différentes séances réalisées par un élève (soit : nombre de tours en course réalisés, nombre de tir marqué au premier essaye, nombre de tir marqué au second essaye, nombre de tour de pénalité). L'élève ayant inscrit les résultats sera identifier sur la séance remplie en tant qu'observateur
- Bilan de la séance individuelle, où sont calculer les points pour différents critère, son potentiel de point pour la séance, son % de réussite pour la séance.
- Intégration des performances de chaque élève dans le bilan du groupe, où sont calculer les points, le potentiel de point pour la séance, le % de réussite pour la séance pour le groupe entier. Auquel on ajoutera les points d’éventuel succès débloqué pour la séance.
- Bilan de progression, où les résultats de chaque bilan de séance groupe sera référencé afin de mettre en avant la progression du groupe.

Dictionnaire E/A BIATHLON :

REGLAGES POINTS (RP) : nom, points
REGLAGES SUCCES (RS) : nom, niveau, points
REGLAGE BIATHLON (RB) : quantiteEleve
GROUPE BIATHLON (GB) : nom
SEANCES BIATHLON (SB) : date, tours, 1-1try, 1-2try, 2-1try, 2-2try, 3-1try, 3-2try, 4-1try,4-2try, penalites,observateur
BILAN INDIVIDUEL BIATHLON (BIB) : SB + points tours, points (par type de tir : 1 – 2 – 3 – 4), tourspenalites, pointspotentiel,%reussite
BILAN GROUPE BIATHLON (BGB) : = BIB de chaque élève du groupe + succes, pointsSucces (qui intègre le calcul de %reussite et pointspotentiel)
BILAN PROGRESSION GROUPE (BPG) : = BGB de chaque séance


Chose à traiter BIATHLON :

- Inscriptions des élèves participants dans les groupes
- Insérer les performances réalisées à chaque séance pour chaque élève par les élèves ou 
   l’enseignant. (Avec identification de l'observateur)
- Calculer en fonction des réglages chaque BIB, BGB
- Insérer les succès aux groupes qui en ont débloqués (seul l’enseignant peut le faire)
- Insérer chaque BGB dans le BPG de chaque groupe
- Fermeture de l’épreuve par l’enseignant
- Consultation par l’élève de tous ses BIB / BGB.
- Consultation du BPG du groupe par un élève du groupe.
- Consultation de toutes les SB / BIB / BGB / BPG par chaque enseignant dont les classe 
  participent à l’épreuve.
- Ouverture et fermeture de chaque séance par l’enseignant 


TOURNOIS RAQUETTE

1- Réglages

- Points de départ
- Points marqués en fonction de l’écart entre deux adversaires avant le match.
- Gestion des handicaps :
     o Activation, ou non des Handicap
     o Points d’écart pour le 1er handicap
     o Points d’écart pour le second handicap
     o Liste handicap personnalisable
- Tournois individuel ou en binôme
- Points pénalités (libellé infraction, quantité de point)

2- Mise en place

- En fonction des réglages, création des binômes ou non
- En fonction des réglages, création de la liste personnalisée de handicap

3- Réalisation

- Un joueur lance un défi à un autre
         - Si handicap activé, en fonction du nombre de points d’écart, le joueur le plus bas dans le 
            classement peut mettre 1 à 2 handicaps.
- Insertion du résultat du match par élèves ou enseignants
- Mise a jour du classement en fonction des points attribués à chaque joueur.
- L’enseignant peut ajouter à un match, ou modifier un match en ajoutant des points de 
  pénalité pour manquement à certaines règles.

4- Fonctions annexes

- Consultation du classement finale par les élèves et l’enseignant
- Consultation du profil d’un élève par l’élève et l’enseignant
- Profil élève : nombre de victoire, nombre de défaite, points marqués, points encaissés, 
  nombre de match joué, point au classement, classement actuel


Dictionnaire E/A :

REGLAGES POINTS DEPART (RPDTR) : quantitePoints
REGLAGES POINTS GAGNES VICTOIRE (RPVTR) : ecartPoints, pointsMarqués
REGLAGES POINTS GAGNES DEFAITE (RPDTR) : ecartPoints, pointsMarqués
ECART HANDICAP (EH) : ecartPoints, quantite
LISTE HANDICAP (LH) : nom, description, actif
REGLAGE GROUPE (RGTR) : nom, actif
- GROUPE (GTR) : nomParticipant1, nomParticipant2
- PARTICIPANTS (PTR) : nomParticipant
REGLAGES POINTS PENALITES (RPPTR)
MATCH (MTR) : numeroMatch, joueurDefiant, joueurDefie, score1, score2, vainqueur, ecartPoints, pointsVictoire, PointsDefaite, date
CLASSEMENT (CTTR): participant, pointsClassement, PointsMarqueScore, PointsEncaisseScore, classement
DEFI : joueurDefiant, joueurDefie, pointsDefiant, pointsDefie, handicapPossible, handicap1, handicap2
PROFIL ELEVE (PETR) : groupe, pointsMarqueScore, pointsEncaisséScore, pointsClassement, placeClassement, nbVictoire, nbDefaite, nbHandicapUtilsé

Chose à traiter :

-Activation handicap
-activation groupe
-liste handicap perso
-ajout des pénalités possible par l’enseignant
-accès au classement par tous
-accès au profil élève par l’élève ou l’enseignant
-fermeture de l’épreuve par enseignants
 

TOURNOIS GESTION D’EQUIPE


1- Réglages

- Pour chaque séance, gestion de la mixité, nombre de joueur par équipe, nombre de match à faire par équipe, temps de match, nombre de terrain disponible.
- Gestion des équipes en automatique ou en manuel
- Pour le tournois complet, nombre de points marqué en fonction du résultat du match.
- Activation des points double sur certaines séances
- Points de pénalités

2- Mise en place

- A chaque séance, faire l’appel puis composé les équipes en fonction du réglage choisi.
- Gestion automatique du tournois du jours en fonction des réglages avec affichage du terrain si plusieurs terrains de disponible.

3- Réalisation

- Affichage et activation du chronomètre par un élève ou l’enseignant au début de chaque match.
- Insertion des résultats par les élèves ou enseignants (avec identification de l'observateur)
- Bilan des points par équipe de la séance en fonction des résultats des matchs
- Mise à jour du classement final en ajoutant les points de la séance à chaque élève de chaque équipe.

4- Fonctions annexes

- Consultation des journées précédentes par enseignant.
- Consultation du classement général par tous.
- Consultation du profil élève par l’élève et l’enseignant.
- Profil élève : nombre de match joué, nombre de victoire, nombre de défaite, nombre de nul, classement élève, pénalités subies


Dictionnaire E/A :

REGLAGES MIXITE (RMGE) : nom, actif
REGLAGES MATCH SEANCE (RMSGE) : quantite, tempsMatch, NbTerrain
REGLAGES QUANTITES JOUEURS (RQJGE) : nombreJoueur
REGLAGES CREATION (RCGE) : nom, actif
REGLAGES QUANTITEJOUEUR (RQGE) : nombre 3 à x
REGLAGES POINTS PENALITE (RPPGE) : nom, quantitePoints
REGLEGES TYPE DE SEANCE (RTSGE) : nom, multiplicateur
REGLAGE POINTS (RPGE) : nom, points
PARTICIPANTS (PGE) : nom, prenom, sexe
APPEL (AGE) : dateJour, participants, presence
EQUIPE (EGE) : couleur, nom, prenom
MATCH (MGE) : equipe1, equipe2, score1, score2, vainqueur, nul, défaite, points1, points2, terrainMatch
BILAN SEANCE (BSGE) : equipe, nbVictoire, nbDefaite, nbNul, scoresPour, scoresContre, pointsResultat
CLASSEMENT ELEVE (CTEGE) : nom, prenom, sexe, nbVictoire, nbDefaite, nbNul, scoresPour, scoresContre, pointsResultat
PROFIL ELEVE (PEGE) : nom, prenom, sexe, nbVictoire, nbDefaite, nbNul, scoresPour, scoresContre, pointsResultat, classementEleve
DISTRIBUTION EQUIPE AUTO (DEAGE) : nbEquipe, nbJoueur, repartitionMixteFeminin, repartitionMasculin
REPARTITION 2 EQUIPE : nbJoueur, slot1 a slotx
REPARTITION 3 EQUIPE : nbJoueur, slot1 a slotx
REPARTITION 4 EQUIPE : nbJoueur, slot1 a slotx
REPARTITION 5 EQUIPE : nbJoueur, slot1 a slotx
REPARTITION 6 EQUIPE : nbJoueur, slot1 a slotx



Chose à traiter

-Activation chrono par tous
-Arrêt chrono en cours enseignant
-Activation réglages de séance par l’enseignant
-Les pénalités peuvent être placé par enseignant
-Accès classement et séance du jour par tous
-Accès séances précédentes par l’enseignant
-Remplissage score par tout le monde
-ouverture et fermeture d’un tournois journalier par l’enseignant
-création d’équipe manuel par enseignant
-création d’équipe automatique peuvent être modifié par l’enseignant
-accès profil élève par l’élève et l’enseignant


Je pense ne rien avoir oublié sur l'organisation et la mise en place de l'application.

Maintenant, j'ai commencé à réaliser le MCD de ce projet. Plusieurs interrogations et problèmes apparaissent (certainement du à mon statuts de novice en programmation / base de données). Voici ce que j'ai mis en place :


Je ne parviens pas à faire à modéliser l'implantation de l'UNSS. Vue que les catégories dépendent de l'année de naissance de chaque élève (par exemple pour les benjamin : 2010/2009/2008), il est nécessaire de faire un calcul. Puis-je la mettre en place, ou cela sera gérer plus tard dans la création de l'application ?

Ensuite, je souhaiterais pouvoir relier mon Entité "PARTICIPANT", pour récupérer la liste des élèves participants à l'épreuve BIATHLON pour pouvoir mettre en place les groupes pour l'événement. Cependant, affiché de la sorte, nous auront une redondance entre ELEVE et PARTICIPANT. Comment puis-je faire pour éviter cette redondance ?

Et pour finir, puis-je faire apparaître dans mon MCD l'entité BILAN SEANCE qui est le reflet de la séance d'un élève suite à un calcul de point en fonction des réglages ? Ou devrais-je comme pour l'UNSS traiter cela plus tard dans la création de l'application ?

Merci d'avance,
Je suis conscient que cela fait beaucoup à ingérer, mais je suis coincé et j'espère ne pas m'être trompé dans le choix entre SQL et NoSQL pour réaliser cela.

Merci d'avance pour vos retour.

3 réponses

Messages postés
15486
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
5 mai 2021
846
bonjour, que veux-tu dire par "mettre en place" la catégorie? moi je prévoirais la possibilité de gérer les catégories indépendamment de l'année de naissance.

l'image est illisible, il est préférable de partager cette image via Internet, e, copiant dans le forum un lien vers l'image.

à quoi sert l'entité "participant"? pourquoi ne pas utiliser "élève"?

si le bilan est un calcul qui peut être fait à tout moment en utilisant des données présentes ailleurs, je ne vois pas pourquoi le mettre dans la base de données.
Messages postés
10
Date d'inscription
mardi 11 juin 2013
Statut
Membre
Dernière intervention
5 mai 2021

Quand je parle de "mettre en place", je pensais à intégrer cette notion de catégorie d'UNSS dans ma base de donnée.

Quand tu dis "moi je prévoirais la possibilité de gérer les catégories indépendamment de l'année de naissance.", tu veux signifier par la que, inscrire en quelque sorte à la main, la catégorie de l'élève. Sans chercher à l'automatisé via la base de données ?

"à quoi sert l'entité "participant"? pourquoi ne pas utiliser "élève"?"

Justement la est le problème. Je l'ai modéliser afin de pouvoir montrer le problème que je rencontre. Je ne parviens pas à trouver la solution pour utiliser élève pour signifier que "seuls les élèves dont les classes sont inscrites de l'événement Biathon peuvent être intégré à un groupe de cette événement précis.

https://www.zupimages.net/viewer.php?id=21%2F18%2Fplp5.png
Messages postés
15486
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
5 mai 2021
846
pour les catégories, je pense plutôt les enregistrer dans la base de données, comme si elles ne pouvaient pas être calculées automatiquement par l'application.
Messages postés
10
Date d'inscription
mardi 11 juin 2013
Statut
Membre
Dernière intervention
5 mai 2021
>
Messages postés
15486
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
5 mai 2021

Donc ça reviendrais à créer une entité UNSS (licence) en relation avec élève, et une relation catégorie et UNSS me permettant d'attribuer une catégorie pour un élève de l'UNSS ?
Messages postés
15486
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
5 mai 2021
846
je ne ferais en tous cas pas une entité "participant". plutôt une relation "participer" entre élève et évènement.

pour moi, la base de données doit contenir toutes les informations permettant à l'application de faire son travail.

certaines règles, telles que "la classe doit être inscrite avant qu'un élève ne puisse s'inscrire à un évènement", cela fait partie de l'intelligence de l'application. l'application va utiliser la base de données pour vérifier que la classe de l'élève est inscrite et pour mémoriser que l'élève s'inscrit à évènement.

d'autres règles, telles que "un élève ne fait partie que d'une seule classe" peuvent être imposées par la base de données.

c'est tout un art de choisir où et comment tenir compte de chaque règle.
il faut tenir compte de ce qui est possible, de ce qui est facile.
Messages postés
10
Date d'inscription
mardi 11 juin 2013
Statut
Membre
Dernière intervention
5 mai 2021

Très bien merci, j'essaye de modéliser le changement pour voir ce que cela peut donner.
J'espère que je ne suis pas aller trop vite dans le choix du type de la BDD (entre SQL et NoSQL) étant donné que je suis novice dans le domaine.

Je vais continuer de voir si je peux avancer sur la base de données SQL et le MCD.

Je reviendrais par ici, si j'ai encore des questions sur le sujet !