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 :

Gestion des Annonces [MCD]


Sujet :

Schéma

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2010
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Espagne

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2010
    Messages : 17
    Points : 19
    Points
    19
    Par défaut Gestion des Annonces
    Bonsoir tout le monde,
    Je suis chargé de la realisation d'un site web pour des annonces y je voudrais savoir si l'idée de créer deux tables differentes avec les mêmes attribues est une bonne conception, En plus dites moi Quelles modifications dois-je apporter a on MCD (NB : C'est juste une partie).
    Merci en Avance.
    Images attachées Images attachées  

  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
    Bonjour.

    D'une manière générale, sans les règles de gestion qui ont conduit à l'élaboration de ce MCD, il est difficile d'émettre un avis efficace. Il couvre cependant un domaine assez facilement compréhensible donc essayons...

    1) Associations
    Tu devrais nommer tes associations avec des verbes à l'infinitif ; ça rendrait ton MCD plus lisible.

    2) Identification relative
    Comme tu ne l'as pas utilisée, une annonce peut être à la fois pour de l'immobilier et pour un moteur. Et si c'est pour un moteur, cela peut être à la fois pour plusieurs autos, plusieurs camions, plusieurs motos...
    Il faudrait mettre des contraintes d'exclusion entre les associations si une annonce ne peut être que d'une sorte.

    3) Colonnes multiples
    Plusieurs entités comportent des colonnes multiples pour stocker des photos.
    La bonne méthode serait de créer une entité photo et d'y associer l'entité Annonce.
    Annonce -0,n----Illustrer----1,1- Photo

    4) Héritage
    Il semble que les entités Divers, Motos, Camions et Auto héritent de l'entité Moteur.
    Les cardinalités devraient donc être 0,1 - (1,1) et non pas 0,n - 1,1.

    Au passage, il est d'usage de nommer les entités au singulier. Le MCD se lit en effet par exemple de cette façon :
    " Un camion est un moteur et un moteur peut être un camion."

    5) Attributs généralisables et externalisables
    Les attributs communs à tous les types de moteurs doivent être rapatriés dans l'entité mère Moteur.
    Comme il y aura vraisemblablement plusieurs fois la même marque et le même modèle, il faut externaliser ces attributs comme cela a été fait pour les autos et donc rapatrier cette structure en association avec Moteur.

    6) Association entre Moteur et Concessionnaire
    Je ne comprends pas le sens de cette association. D'autant plus qu'un concessionnaire n'est associé qu'à un seul moteur !

    ==================

    Pour répondre à ta question :
    je voudrais savoir si l'idée de créer deux tables differentes avec les mêmes attribues est une bonne conception
    Mes remarques précédentes t'indiquent la réponse : Non !
    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 à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2010
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Espagne

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2010
    Messages : 17
    Points : 19
    Points
    19
    Par défaut

    Merci Beaucoup CinePhil, C'est ça ce que je voulais savoir, je vais essayer de corriger mon MCD ensuite vous le montrer.

  4. #4
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2010
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Espagne

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2010
    Messages : 17
    Points : 19
    Points
    19
    Par défaut
    Bon j'ai fait quelque modifications

    J'ai bien compris les contraintes d'exclusion, mais j'ai pas su comment les mettre en pratique dans le powerDesigner

    Exemple de l'entité TypeMoteur
    (1,Camion)
    (2,Moto)
    (3,Kart)
    (4,JetSki)

    J'ai pas bien compris le 4ème point, en fait j'ai lu un de vos post dans un autre thread dont lequel vous expliquer un peut ce concept et même après avoir lu ce post Je ne comprends toujours pas.

    A propos de l'entité Concessionnaire je pense la mettre en relation directe avec l'entité annonce. Concessionnaire (1,1) -------- ***** ---------(0,n) annonce

  5. #5
    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
    Vite fait avant de partir manger...
    Citation Envoyé par Black Lagoon Voir le message
    J'ai pas bien compris le 4ème point, en fait j'ai lu un de vos post dans un autre thread dont lequel vous expliquer un peut ce concept et même après avoir lu ce post Je ne comprends toujours pas.
    Il s'agit de l'héritage d'entités, tout comme il existe le concept d'héritage en UML et en programmation objet.

    Règle de gestion :
    Un camion est un moteur et un moteur peut être un camion."

    MCD qui en découle :
    camion -(1,1)----Etre----0,1- moteur

    L'entité camion hérite de l'entité moteur.
    L'entité moteur contient les attributs communs à tous les types de moteurs (par exemple identifiant et immatriculation) et l'entité camion ne comprend que les attributs spécifiques aux camions (tonnage, présence d'un hayon...)

    Tables :
    moteur (mot_id, mot_immatriculation...)
    camion (cam_id_moteur, cam_tonnage, cam_hayon...)

    Grâce à l'identification relative, l'identifiant du camion est à la fois clé primaire et clé étrangère et fait référence à l'identifiant du moteur.

    Pour plus d'explications et de détails sur l'héritage, voir chez SQLPro.
    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 !

  6. #6
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2010
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Espagne

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2010
    Messages : 17
    Points : 19
    Points
    19
    Par défaut
    Encors une fois merci, CinePhil
    Tout est clair, je voudrais juste savoir qu'est ce que vous pensez de l'entité auto et s'il ya d'autre modifications que je dois effectuer.
    Et Bon appétit. : )

  7. #7
    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 n'avais pas eu le temps de regarder ton nouveau MCD ce matin.
    Voici mes nouvelles remarques...

    1) Association Publier entre Ville et Annonce
    Je la traduis en français :
    " Une ville publie de 1 à plusieurs annonces et une annonce n'est publiée que par une seule ville. "

    Il me semble que le verbe est mal choisi !

    2) Association Illustrer (et pas illuster !) entre annonce et photo
    Chaque instance de l'entité photo ne doit être qu'une seule photo et une annonce peut être illustrée par plusieurs photos.

    MCD :
    Annonce -0,n----Illustrer----1,1- Photo

    Contenu de l'entité photo :
    Photo (ID_Photo, URL_photo)

    3) Entité Annonce
    Que représente Type ?

    Typeannonce est à mon avis inutile car on peut là aussi faire un héritage. J'y reviendrai plus loin.

    4) Associations Etre1 et Etre2
    Autant je peux comprendre qu'un bien immobilier puisse être un appartement, autant j'ai plus de mal à comprendre que cela puisse être une agence immobilière !

    Là aussi, j'ai l'impression que le verbe est mal choisi pour Etre2 ; il ne s'agit pas d'un héritage, comme le laisse supposer l'emploi du verbe Etre.

    Par contre, un Immobilier ne pourrait-il pas être autre chose qu'un appartement ? Une maison par exemple, avec ses attributs spécifiques tels que la superficie du terrain ou la présence de dépendances, d'une piscine...

    5) Héritage multiple
    Dans mon précédent message, je t'ai expliqué ce qu'est l'héritage dans un MCD. Je pense que tu peux ici faire un héritage à deux étages.

    Au passage, plutôt que moteur, je nommerais plutôt l'entité Vehicule, surtout si dans les divers tu as aussi des véhicules sans moteur !

    Appartement -(1,1)----Etre----0,1- Immobilier -(1,1)----Etre----0,1- Annonce
    Maison -(1,1)----Etre----0,1----------------|
    Auto -(1,1)----Etre----0,1- Vehicule -(1,1)----Etre----0,1----------------------|
    Camion -(1,1)----Etre----0,1---|
    Moto -(1,1)----Etre----0,1-------|

    6) Branche Version - Modele - Marque
    Elle s'applique je pense à tous les types de véhicules non ?

    Et il manque les attributs dans les entités.

    7) Enttié Concessionnaire
    Elle se retrouve toute seule dans un coin la pauvre !
    A propos de l'entité Concessionnaire je pense la mettre en relation directe avec l'entité annonce. Concessionnaire (1,1) -------- ***** ---------(0,n) annonce
    Non car toutes les annonces ne sont pas associées à un concessionnaire !
    Il vaudrait mieux l'associer à Véhicule. Et attention aux cardinalités car tous les véhicules ne sont peut-être pas vendus par des concessionnaires !

    Ne faudrait-il pas le nom du concessionnaire ?
    Le concessionnaire n'est-il pas le client qui poste l'annonce ?
    Idem pour l'agence immobilière d'ailleurs !
    On atteint là la limite de compréhension due à l'absence de cahier des charges et/ou de règles de gestion qui permettraient d'analyser ton MCD plus efficacement.

    J'ai bien compris les contraintes d'exclusion, mais j'ai pas su comment les mettre en pratique dans le powerDesigner
    Si tu cherches dans les messages de fsmrel, tu devrais trouver la méthode. N'ayant pas encore utilisé ce logiciel, je ne peux pas t'aider en la matière.

    Exemple de l'entité TypeMoteur
    (1,Camion)
    (2,Moto)
    (3,Kart)
    (4,JetSki)
    Cela me semble inutile du fait de la mise en oeuvre de l'héritage !
    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 !

  8. #8
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2010
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Espagne

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2010
    Messages : 17
    Points : 19
    Points
    19
    Par défaut
    Comme vous avez remarqué le MCD n'est pas complet,
    1) par "publier" j'ai voulu dire qu'une annonce ne peut exister que dans une seule ville, cela veut dire qu'une annonce de Vente/Location... d'une maison particulière, ne peut pas être dans deux villes différentes, car physiquement (géographiquement) une maison ne peut pas être dans deux villes différentes. (Ce n'est pas de l'ironie )

    Effectivement, j'ai mal choisi le verbe (Mon français est très mediocre. )

    2) Faute de frappe, et tout à fait d'accord avec vous, il faut reduire le nombre d'attribus

    3) le type represente Vente/Achat/Location/Offre

    4) Verbe Mal Choisi ^_^;
    Comme j'ai au debut le MCD n'est pas complet, certes, il ya plus d'entités telles que les chambre, appartement, garage, studio, terrain, bâtiment en plus des accessoires.

    5) Plus clair est impossible, Merci beaucoup

    6)Non, cela ne s'applique que sur les auto, c'est pour ça que j'ai mis Marque-Version-Modele dans Divers et ajouté l'entité typeMoteur.

    7) Encors plus clair est impossible, Merci

    Merci beaucoup pour m'avoir prêté votre temps.
    Je vous serai éternellement reconnaissant.

  9. #9
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2010
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Espagne

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2010
    Messages : 17
    Points : 19
    Points
    19
    Par défaut
    Ah! A propos du cahier des charges, j'ai été chargé de faire ce projet sans recevoir aucune instruction, ils m'ont demandé juste de créer un site web pour publier tout type d'annonce.

  10. #10
    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
    6)Non, cela ne s'applique que sur les auto, c'est pour ça que j'ai mis Marque-Version-Modele dans Divers et ajouté l'entité typeMoteur.
    Du coup tu vas avoir redondance de données dans la table divers (plusieurs fois la même marque, le même modèle, la même version). Je persiste à dire que puisque cette branche s'applique aussi aux divers, il faut la sortir du divers !

    D'ailleurs, tu n'as peut-être pas besoin de Divers grâce à l'héritage !

    pour publier tout type d'annonce.
    Pour le moment, tu n'as que des annonces immobilières et des annonces de véhicules !

    Au fait, pendant que j'y pense, il s'agit d'un site localisé près de la mer ? L'attribut "distanceplage" s'applique t-il a tout bien immobilier ?
    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 !

  11. #11
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2010
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Espagne

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2010
    Messages : 17
    Points : 19
    Points
    19
    Par défaut
    Citation Envoyé par CinePhil Voir le message
    Du coup tu vas avoir redondance de données dans la table divers (plusieurs fois la même marque, le même modèle, la même version). Je persiste à dire que puisque cette branche s'applique aussi aux divers, il faut la sortir du divers !

    D'ailleurs, tu n'as peut-être pas besoin de Divers grâce à l'héritage !
    Ce que j'ai compris c'est qu'au lieu d'ajouter une entité divers, je dois ajouter les attribus de cette derniere dans l'entité Vehicule, mais je crois qu'elle est necessaire comme TypeVehicule (Cette Derniere pour definir quelle type de vehicule autre que auto est annoncé) car par divers je dire tout type de vehicule soit moto soit camion, JetSki ... et que c'est à l'utilisateur d'entrer la marque, modele et version, et même les auto dont leur marque ne figure pas dans les options offerts à l'utilisateur.
    Je sais très bien que cette partie nécessite plus d'explication et corrections, mais je ne c'est plus comment faire mieux.

    Citation Envoyé par CinePhil Voir le message
    Pour le moment, tu n'as que des annonces immobilières et des annonces de véhicules !
    C'est vrai, je pense ajouter les entitées Emploi, Jeux,Sport,Mascotte,Informatique ... Certains auront des sous-entitées et d'autres comme Emploi n'auront aucune.

    Citation Envoyé par CinePhil Voir le message
    Au fait, pendant que j'y pense, il s'agit d'un site localisé près de la mer ? L'attribut "distanceplage" s'applique t-il a tout bien immobilier ?
    Là j'ai commis une erreur, "distanceplage" ne s'applique pas à tout bien immobilier. (C'est le probleme de n'avoir pas un cahier des charges qui explique les "Besoins")

  12. #12
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2010
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Espagne

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2010
    Messages : 17
    Points : 19
    Points
    19
    Par défaut
    Je pense que ce MCD est un peu meilleur que les autres


    maintenant aux questions


    Qu'est ce que vous pensez de/des :
    L'attribu Prix dans l'entité Annonce?
    Les entitées sans Identifiant telles que vehicule, divers, appartement ...?
    Auto n'ayant aucun attribu, car j'assume qu'en passant vers le MLD plusieurs ID vont migrer vers auto?

    TypeEmploi (1,Informatician)(2,Architecte)
    Emploi ---> TypeAnnonce (Demande/Offre)


    Bien sur, seulement Si vous avez du temps à me consacrer, pour m'aider à terminer ce MCD.

    Edit : Ops! J'ai oublié de supprimer URLP2 URLP3

    Edit 2 : le MLD résultant

    Edit 3 : J'ai oublié la relation entre Client et Annonce
    Images attachées Images attachées   

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Gestion des variables - mémoire ?
    Par RIVOLLET dans le forum Langage
    Réponses: 4
    Dernier message: 26/10/2002, 12h44
  2. Réponses: 4
    Dernier message: 04/07/2002, 12h31
  3. c: gestion des exceptions
    Par vince_lille dans le forum C
    Réponses: 7
    Dernier message: 05/06/2002, 14h11

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