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

Diagrammes de Classes Discussion :

administration de base de données


Sujet :

Diagrammes de Classes

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2020
    Messages
    95
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Ariège (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2020
    Messages : 95
    Par défaut administration de base de données
    Bonjour à tous,

    après avoir longuement pataugé dans merise, j'ai a peine sorti la tête de l'eau que je me retrouve noyé dans uml sous le poids de concepts flous et de cours qui se contredisent l'un l'autre...

    je suis supposée créer un projet personnel de base de données, j'ai choisi de créer une bd listant tout mon materiel de bricolage et les travaux que j'ai à faire (taches).
    chaque tache nécessite du materiel.

    une partie du materiel est "renouvelable" (les consommables: vis, forets,etc...), il est ajouté à une liste de course dès que sa quantité stockée tombe à zero, le materiel non renouvelable (outillage, materiel spécialisé etc...) n'est ajouté au stock que si une tache en a besoin, soit en l'achetant, soit en le fabriquant.

    la fabrication de materiel vient s'ajouter à la liste de taches.

    voila le fonctionnement global, le cours nous a fait créer le mcd de nos projets persos selon la methode merise dans un premier temps, puis nous a demandé de le modéliser avec uml.

    après des jours d'incompréhension et d'arrachage de cheveux, le prof a fini par nous expliquer que la partie uml devait concerner le programme servant à administrer la base de données (a priori en php)

    autant le diagramme de cas d'utilisations est parfait pour décrire le programme en question mais je bloque sur le diagramme de classe;

    j'ai commencé à recréer mon mcd en lui ajoutant des fonctionnalités du programme d'administration (constructeurs, contraintes etc..) avant de me rendre compte qu'en procédant comme ça j'allais recréer une base de données au lieu d'administrer celle que j'ai créé via mon mcd.

    donc ma question est: mais qu'est-ce que je suis censé f**tre de ce &!#?%* de diagramme de classes?
    je suppose que le but est de générer un script php formulant les requêtes sql permettant de manipuler les tables mais je ne vois vraiment pas comment représenter ça sous forme de classes sans reprendre ce qui est déja couvert par mon mcd.

    j'ai envoyé un mail à mon prof mais sa réponse que je n'aurais pas avant plusieurs jours ne répondra probablement pas à ma question et j'ai déja pas mal de retard.

    voila mon mcd (je vais probablement enlever l'entité domaine et l'ajouter sous forme d'attribut à l'entité taches):
    Nom : 03 MCD projet perso 7.png
Affichages : 3345
Taille : 59,7 Ko

    mon diagramme de cas d'utilisation:
    Nom : casdutilisationgestion.png
Affichages : 1561
Taille : 19,7 Ko

    et l'ébauche de diagramme de classe que j'ai laissé tomber:
    Nom : diagramme .png
Affichages : 1373
Taille : 14,0 Ko

    merci beaucoup d'avance à ceux qui prendront la peine de lire mon pavé et me filer un coup de main!

  2. #2
    Membre Expert
    Avatar de Paprick
    Homme Profil pro
    Professeur des Universités
    Inscrit en
    Juin 2019
    Messages
    770
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Professeur des Universités
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2019
    Messages : 770
    Par défaut
    Bonjour,
    J'avoue ne pas bien comprendre ce que l'on attend de vous...
    Tout d'abord, concernant votre MCD, je n'ai pas analysé la justesse de sa conception, mais j'ai un doute sur les types "SOURCE_MATERIEL", "PRIORITE" et "NOM_DOMAINE" que vous avez utilisés... Ils correspondent à quoi dans votre SGBD ?
    Concernant le diagramme de classe UML, il peut facilement être déduit en l'état du MCD en adaptant juste le formalisme : votre démarrage n'était pas si mal et il est normal que les rubriques de la future BD soient reprises.
    Quant aux méthodes associées à chaque classe, c'est là que les choses ne sont pas claires du tout...

    En attendant, voici ce que donne votre MCD en E/A et en UML avec uniquement la reprise des rubriques (traduction temps-réel proposée automatiquement par Looping) :
    Nom : MCD Aperikub2.jpg
Affichages : 1443
Taille : 36,3 Ko
    Nom : MCD Aperikub2 UML.jpg
Affichages : 1830
Taille : 32,8 Ko
    Bon courage !

  3. #3
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2020
    Messages
    95
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Ariège (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2020
    Messages : 95
    Par défaut
    Citation Envoyé par Paprick Voir le message
    J'avoue ne pas bien comprendre ce que l'on attend de vous...
    moi non plus!

    Citation Envoyé par Paprick Voir le message
    j'ai un doute sur les types "SOURCE_MATERIEL", "PRIORITE" et "NOM_DOMAINE" que vous avez utilisés... Ils correspondent à quoi dans votre SGBD ?
    -
    • source_materiel est une énumeration (achat, fabrication, stock). lorsque l'utilisateur ajoute un n-uplet à materiel, il précise d'ou va venir le matériel. (je pense la mettre par défaut à stock puis si le programme de gestion voit qu'il n'y a pas ce qu'il faut en stock, selon la valeur du booléen "renouvelable" soit il demandera à l'utilisateur de choisir entre achat et fabrication, soit il mettra la valeur à achat.
    • priorité est une énumeration indiquant le niveau de priorité de la tache
    • domaine correspond à la catégorie de travaux/materiel (plomberie, électricité etc), c'est un reliquat des précédentes versions de mon modèle, je vais probablement le supprimer



    Citation Envoyé par Paprick Voir le message
    Concernant le diagramme de classe UML, il peut facilement être déduit en l'état du MCD en adaptant juste le formalisme
    c'est justement le problème, ce que je dois décrire avec uml est uniquement le programme d'administration de la base de données (qui elle, est crée avec le script sql issu du mcd) donc je suppose que le diagramme de classes ne doit modéliser que le fonctionnement de ce programme. (c'est en tout cas ce que j'ai compris)

  4. #4
    Modérateur
    Avatar de escartefigue
    Homme Profil pro
    bourreau
    Inscrit en
    Mars 2010
    Messages
    10 633
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : bourreau
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 10 633
    Billets dans le blog
    10
    Par défaut
    bonsoir Aperikub,

    Pour que le modèle soit un peu plus réaliste, il faudrait tenir compte des notions suivantes :

    MATERIEL
    Un équipement et des consommables sont deux types de matériel bien distincts, il est intéressant de les distinguer en utilisant l'héritage.
    Pour les consommables, il faut prévoir l'unité de mesure de la quantité : les peintures s'achètent au litre, les clous en sachets de 50 ou de 100, les vis en sachets de 12 ou 20, le fil électrique au mètre etc. Une quantité seule ne veut rien dire.


    TRAVAIL ou PROJET
    Une tâche doit s'inscrire dans le cadre d'un projet ou d'un travail, chaque travail comporte un certain nombre de tâches.
    Par exemple, le travail "entretenir les volets de la maison" comporte les taches "déposer les huisseries", "poncer la vieille peinture", "dépoussiérer", "laquer", "décalaminer la huisserie", "repeindre la huisserie"...


    TACHE
    Chaque tâche peut requérir du matériel de type consommable et/ou équipement pour une certaine quantité (2 litres d'enduit, une visseuse-dévisseuse, un pinceau...)
    Les tâches d'un même travail s'organisent selon une certaine séquence : il faut commencer par démonter les volets avant de les poncer.
    D'où la nécessité d'une association réflexive sur la tâche pour piloter les prédécesseurs et successeurs.


    Ce qui donne un MCD ressemblant à ceci :

    Pièce jointe 584674

    Ou le diagramme de classe :
    Pièce jointe 584675

  5. #5
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2020
    Messages
    95
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Ariège (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2020
    Messages : 95
    Par défaut
    bonsoir,

    Citation Envoyé par escartefigue Voir le message

    Pour que le modèle soit un peu plus réaliste, il faudrait tenir compte des notions suivantes :

    MATERIEL
    Un équipement et des consommables sont deux types de matériel bien distincts, il est intéressant de les distinguer en utilisant l'héritage.
    c'est ce que j'avais fait, mais le prof m'a conseillé de simplifier en n'utilisant qu'une entité materiel.

    je précis au passage que c'est une U.E de bases de donnée pour débutant visant à donner quelques notions aux étudiants, qui pourront suivre d'autres U.E plus poussées si ils le désirent (ce ne sera clairement pas mon cas!!)
    les sujets sont survolés (une semaine sur uml et fini on n'en parle plus!)

    le maitre mot est la simplicité, le timing est très très serré, je délaisse les autres cours car je passe 90% de mon temps de travail sur les BDD et je ne peux pas me permettre de m'éterniser d'avantage sur mon mcd, l'important pour l'instant est que je comprenne chaque chapitre, je peaufinerai le modèle plus tard.

    Citation Envoyé par escartefigue Voir le message
    Pour les consommables, il faut prévoir l'unité de mesure de la quantité : les peintures s'achètent au litre, les clous en sachets de 50 ou de 100, les vis en sachets de 12 ou 20, le fil électrique au mètre etc. Une quantité seule ne veut rien dire.
    bien vu, je modifierai si j'ai le temps mais je pense rendre la variable quantité facultative ou alors fonctionner par "paquets" (je ne vais pas compter le nombre de vis nécessaires pour chaque taches d'autant que j'en perds, j'en casse etc..)


    Citation Envoyé par escartefigue Voir le message
    TRAVAIL ou PROJET
    Une tâche doit s'inscrire dans le cadre d'un projet ou d'un travail, chaque travail comporte un certain nombre de tâches.
    Par exemple, le travail "entretenir les volets de la maison" comporte les taches "déposer les huisseries", "poncer la vieille peinture", "dépoussiérer", "laquer", "décalaminer la huisserie", "repeindre la huisserie"...
    c'est plus ou moins à ça que servait l'entité domaine mais je suis loin d’être aussi organisé et ma façon de travailler est plus proche de mcgyver que du compagnonnage donc simplicité: entretenir les volets = couper un morceau d'une vieille table de jardin, y mettre des charnières, et mettre ça à la place des anciens volets tombés en lambeaux!

    ce que je cherche à comprendre la, c'est comment représenter sous forme de diagramme de classes un programme d'administration (le coté utilisateur) qui interagisse avec la bd créée a partir du mcd.

    est-ce que je crée des classes comme celles que je créerais dans un programme java (le programme d'administration sera en php mais ne l'ayant pas encore vu, le java me parle plus) du genre une classe AjouterTache avec des attributs String pour le nom et la description, une méthode Input qui demande une valeur a l'utilisateur et une autre méthode qui envoi la requête sql ?

    merci beaucoup d'avance et merci pour les modèles, je vais me pencher dessus mais la il faut vraiment que j'avance sur uml

  6. #6
    Modérateur
    Avatar de escartefigue
    Homme Profil pro
    bourreau
    Inscrit en
    Mars 2010
    Messages
    10 633
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : bourreau
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 10 633
    Billets dans le blog
    10
    Par défaut
    Citation Envoyé par aperikub Voir le message
    je précis au passage que c'est une U.E de bases de donnée pour débutant visant à donner quelques notions aux étudiants, qui pourront suivre d'autres U.E plus poussées si ils le désirent (ce ne sera clairement pas mon cas!!)
    les sujets sont survolés (une semaine sur uml et fini on n'en parle plus!)
    OK pour ça, je donne des pistes d'améliorations mais il faut bien sûr faire avec les contraintes de plannning.
    Cela étant, ça ne prend pas beaucoup plus de temps de faire un MCD cohérent qu'un autre qui l'est moins, surtout quand il ne reste plus qu'à copier/coller la solution trouvée sur "developpez.net"


    Citation Envoyé par aperikub Voir le message
    ce que je cherche à comprendre la, c'est comment représenter sous forme de diagramme de classes un programme d'administration (le coté utilisateur) qui interagisse avec la bd créée a partir du mcd. l
    Là par contre il y a confusion : la modélisation des données est quasiment sans rapport avec les traitements et donc les programmes...

  7. #7
    Membre Expert
    Avatar de Paprick
    Homme Profil pro
    Professeur des Universités
    Inscrit en
    Juin 2019
    Messages
    770
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Professeur des Universités
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2019
    Messages : 770
    Par défaut
    Bonsoir,
    Soyons clairs : parler de diagramme de classes modélisant une base de données sans y intégrer les rubriques, n'a pas de sens.
    Faire un MCD sous forme de modèle E/A, puis considérer ce même MCD sous forme de diagramme de classes UML en ne voulant traiter que les méthodes d'administration de la BD sans considérer les rubriques, relève de l'utopie, surtout si vous nous dites qu'il s'agit d'un cours de BD pour débutants !
    Vous êtes dans quel cycle d'enseignement ? Demandez à votre prof de vous donner un petit exemple de ce qu'il attend

  8. #8
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2020
    Messages
    95
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Ariège (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2020
    Messages : 95
    Par défaut
    @ escartefigue effectivement ça ne prends pas longtemps théoriquement mais dès que je commence à retoucher au modèle, je finis par y passer des heures mais les modèles que vous me donnez ne tombent pas non plus dans l'oreille d'un sourd (ou plutot les yeux d'un aveugle), quand je retoucherai au modèle je reviendrai vers cette discussion pour m'en inspirer.

    @paprick l'énoncé du travail a faire est: "faites l'analyse de votre mini projet selon le modèle UML." il nous est également demandé de réaliser les jeux test.

    lors de la dernière web conférence, il a précisé d'une part que c'était la partie programme utilisateur qu'il fallait modéliser avec uml et n'a mentionné que le diagramme de cas d'utilisation (sans pour autant nous dire de ne pas faire les autres diagrammes).

    et d'autre part voyant que tout le monde était largué, il a précisé que c'était un cours d'initiation et que le principal était d'arriver à créer un système d'information fonctionnel (bd + programme utilisateur) donc vu ce que vous me dites tous les deux, je suppose qu'il n'attend de nous que le diagramme de cas d'utilisation.

    pour ce qui est du cycle d'enseignement c'est une formation mi-universitaire mi-professionnelle du cnam (c'est mon premier semestre).

    au final ce qui est le plus perturbant avec ce cours c'est qu'alors que nous ne sommes censés apprendre que les bases, on nous donne des cours vraiment complets (des centaines et des centaines de pages) sur UML, merise, mysql etc... et donc c'est à nous de nous débrouiller pour puiser les quelques notions que nous sommes censés apprendre dans la masse énorme d'information qui nous est fournie

Discussions similaires

  1. [MySQL] Générateur d'interfaces web d'administration de bases de données ?
    Par oops! dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 12/01/2010, 17h37
  2. Administration des base de données
    Par Ghilas1985 dans le forum Administration
    Réponses: 3
    Dernier message: 30/11/2009, 09h08
  3. Administrer une base de donnée
    Par parab dans le forum Sécurité
    Réponses: 4
    Dernier message: 28/01/2009, 16h48
  4. Réponses: 3
    Dernier message: 26/07/2007, 12h14

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