IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Schéma Discussion :

Utilitaire pour notes,calcul de moyenne


Sujet :

Schéma

  1. #1
    Membre régulier

    Homme Profil pro
    Étudiant Réseaux et Télécoms
    Inscrit en
    Octobre 2009
    Messages
    121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant Réseaux et Télécoms
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2009
    Messages : 121
    Points : 92
    Points
    92
    Par défaut Utilitaire pour notes,calcul de moyenne
    Bonjour à vous,

    Contexte:

    Je souhaite créer un programme en C++, qui permettrait à une secrétaire d'ajouter des notes à des élèves, ajouter/supprimer des notes etc....
    Une année scolaire est divisée en deux semestres. Chaque semestre possède des matières spécifiques et ces matières sont contenues dans des UE.
    Le coefficient des matières varient selon le semestre.

    Je me suis donc dit qu'il serait bon d'utiliser une base de données afin de stocker toutes les informations.

    J'ai essayer de modéliser le modèle relationnel, voici ce que celà donne.




    J'aimerais avoir vos avis, car il me semble bon d'avoir une bdd correcte avant de commencer à programmer.

    Le but de ce projet:
    -Facilité le travail de la secrétaire
    -Me faire pratiquer le C++ et Qt
    -Me faire pratiquer sur les BDD


    Cordialement.

    PS:Je suis juste un étudiant, et non un professionnel

  2. #2
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 799
    Points : 34 031
    Points
    34 031
    Billets dans le blog
    14
    Par défaut
    Je lis le schéma...

    1) Une promo peut contenir plusieurs élèves et un élève peut être contenu dans plusieurs promo.
    OK.

    2) Un élève peut posséder plusieurs notes et une note est possédée par un seul élève.
    Une matière peut avoir plusieurs notes et une note ne concerne qu'une seule matière.

    Dit comme ça, ça semble bon. Mais en fait la note se rapporte à un élève et à une matière au minimum pour une promo, voire pour un semestre !

    Je vois que la notion de semestre apparaît dans la table Matières (laquelle ne devrait pas avoir d'accent dans son nom ni être au pluriel, comme toutes les autres d'ailleurs).
    Le semestre n'est-il pas plutôt un sous-ensemble de la promo ?

    3) Une matière peut avoir plusieurs sujets et un sujet fait partie d'une seule matière.
    OK. Mais les notes ne seraient-elles pas plutôt en relation avec les sujets qu'avec les matières ?

    4) Un professeur peut enseigner plusieurs sujets et un sujet est enseigné par un seul professeur.
    Là j'ai des doutes sur le fait qu'un professeur puisse enseigner un sujet de philo et un sujet de maths !

    Venons-en aux types des colonnes...
    Une année est un entier, ou alors un CHAR(9) si on exprime une année scolaire telle que '2009-2010'.

    Un niveau en VARCHAR(45) me semble très largement dimensionné. Un semestre également.

    Quelle est la différence entre le nom de la matière et 'matièrescol' ?


    Y'a encore du boulot !
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  3. #3
    Membre régulier

    Homme Profil pro
    Étudiant Réseaux et Télécoms
    Inscrit en
    Octobre 2009
    Messages
    121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant Réseaux et Télécoms
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2009
    Messages : 121
    Points : 92
    Points
    92
    Par défaut
    Tout d'abord, merci de m'avoir répondu


    1) Une promo peut contenir plusieurs élèves et un élève peut être contenu dans plusieurs promo.
    OK.


    2) Un élève peut posséder plusieurs notes et une note est possédée par un seul élève.
    Une matière peut avoir plusieurs notes et une note ne concerne qu'une seule matière.

    Dit comme ça, ça semble bon. Mais en fait la note se rapporte à un élève et à une matière au minimum pour une promo, voire pour un semestre !

    -> Je viens de modifier ;=)

    3) Une matière peut avoir plusieurs sujets et un sujet fait partie d'une seule matière.
    OK. Mais les notes ne seraient-elles pas plutôt en relation avec les sujets qu'avec les matières ?
    -> De même.

    4) Un professeur peut enseigner plusieurs sujets et un sujet est enseigné par un seul professeur.
    Là j'ai des doutes sur le fait qu'un professeur puisse enseigner un sujet de philo et un sujet de maths !
    Mes profs changent des fois


    Venons-en aux types des colonnes...
    Une année est un entier, ou alors un CHAR(9) si on exprime une année scolaire telle que '2009-2010'.

    Un niveau en VARCHAR(45) me semble très largement dimensionné. Un semestre également.
    -> Erreurs corrigées


    Quelle est la différence entre le nom de la matière et 'matièrescol' ?
    ->Je savais même pas que j'avais mis ca

    Voici le nouveau modèle:




    Qu'en dites-vous?


    Cordialement

  4. #4
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 799
    Points : 34 031
    Points
    34 031
    Billets dans le blog
    14
    Par défaut
    La relation entre Notes et Sujets est inversée. Ton schéma suppose qu'un sujet n'a qu'une note. Maintenant si cette notion de "sujet" signifie "sujet d'examen", c'est peut-être normal qu'il n'y ait qu'une note par élève mais la c'est une seule note pour le sujet !

    La boucle qui existe entre les tables Eleves, Participent, Matières, Sujets et Notes fait qu'un élève peut avoir une note pour un sujet ne correspondant pas à une matière à laquelle il participe !

    Le semestre est toujours un attribut de la matière ?

    J'ai toujours des doutes sur l'existence de prof multi-disciplines !

    Ma façon de voir (mais peut-être que les termes que tu emploies n'ont pas la signification que je leur donne) :

    1) Un professeur enseigne une matière et une matière peut être enseignée par plusieurs professeurs.
    Professeur >---enseigner---- Matiere

    2) Un élève participe à plusieurs matières et une matière voit la participation de plusieurs élèves.
    Eleve ----< Participation >---- Matiere

    3) Une matière peut faire l'objet de plusieurs sujets d'examen et un sujet d'examen ne concerne qu'une seule matière.
    Sujet >----concerner---- Matiere

    4) Un élève peut être noté pour plusieurs sujets et un sujet note plusieurs élèves.
    Eleve ----< Note >---- Sujet

    Il reste le problème de la boucle. Je ne sais pas comment le représenter (ni même si c'est possible) en schéma Entity/Relation avec MySQL Workbench mais il faudrait une contrainte d'inclusion entre la participation de l'élève à une matière et la note obtenue pour un sujet d'une certaine matière.

    Cela devrait se traduire dans la BDD par un trigger à l'insertion d'une note pour vérifier que l'élève participe bien à la matière du sujet noté.
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  5. #5
    Membre régulier

    Homme Profil pro
    Étudiant Réseaux et Télécoms
    Inscrit en
    Octobre 2009
    Messages
    121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant Réseaux et Télécoms
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2009
    Messages : 121
    Points : 92
    Points
    92
    Par défaut
    Encore une fois, merci de m'avoir répondu

    J'ai corrigé les erreurs dont tu m'as fait part

    Le semestre est toujours un attribut de la matière ?

    J'ai toujours des doutes sur l'existence de prof multi-disciplines !
    Oui c'est un attribut.

    Prof multi-disciplines, je vous assure

    Pour l'histoire de la boucle, j'ai retirer que les élèves participent à une matière.

    Car maintenant, il n'y a plus de boucle Et au final, dans une promo, toutes les personnes ont les mêmes matières Ceci, ma base de donnée ne fonctionnera que pour une promo comme la mienne.

    Et je pense que je ferais des modifications après si j'ai le temps.

    Qu'en pensez-vous?

    Cordialement

    PS: Je vous mets le dernier modélè, j'ai pas mis les mêmes verbes que vous, je suis désolé



    PS2: Je commence la programmation ce soir je pense.
    PS3ensez-vous qu'il serait bon de faire hébergé mon projet sur ce site?

  6. #6
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 799
    Points : 34 031
    Points
    34 031
    Billets dans le blog
    14
    Par défaut
    Encore un détail que nous n'avions pas abordé jusque là...

    Le fait de mettre un identifiant à une note (idNotes) fait qu'il peut y avoir plusieurs notes pour un élève sur un sujet.

    Il me semble que la table Notes est une table associative entre Eleves et Sujets, lesquels sujets sont semble t-il identifiés relativement aux professeurs.

    La clé de la table note devrait donc être composée des identifiants de l'élève et du sujet mais ne pas avoir son identifiant propre.

    Et enfin...
    Puisque le semestre est un attribut de la matière et que le sujet est lié à une matière, inutile de répéter le semestre dans la table Sujets.
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  7. #7
    Membre régulier

    Homme Profil pro
    Étudiant Réseaux et Télécoms
    Inscrit en
    Octobre 2009
    Messages
    121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant Réseaux et Télécoms
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2009
    Messages : 121
    Points : 92
    Points
    92
    Par défaut
    Encore un détail que nous n'avions pas abordé jusque là...

    Le fait de mettre un identifiant à une note (idNotes) fait qu'il peut y avoir plusieurs notes pour un élève sur un sujet.
    Il peut avoir plusieurs notes pour un sujet.

    Par exemple: Sujet: BDD

    Il peut y avoir deux contrôles sur tables et un top noté sur ce sujet.

    Puisque le semestre est un attribut de la matière et que le sujet est lié à une matière, inutile de répéter le semestre dans la table Sujets.
    En effet

    Pensez-vous qu'il serait bon de faire hébergé mon projet sur ce site?

Discussions similaires

  1. Boucle de plusieurs conditions pour un calcul de moyenne
    Par nickistudent dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 31/12/2014, 17h19
  2. Réponses: 3
    Dernier message: 16/07/2013, 15h07
  3. Réponses: 3
    Dernier message: 29/05/2009, 11h04
  4. calculer des moyennes pour des sous groupes
    Par madib dans le forum SAS Base
    Réponses: 3
    Dernier message: 04/02/2009, 16h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo