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 :

Site de mise en relation avec des professionnels du transport


Sujet :

Diagrammes de Classes

  1. #1
    Candidat au Club
    Inscrit en
    Septembre 2009
    Messages
    6
    Détails du profil
    Informations personnelles :
    Âge : 35

    Informations forums :
    Inscription : Septembre 2009
    Messages : 6
    Points : 2
    Points
    2
    Par défaut Site de mise en relation avec des professionnels du transport
    Bonjour à tous,

    Je m'occupe actuellement de la réalisation d'un site web de mise en relation de professionnels de transport et de particuliers/entreprises et je souhaiterais avoir votre avis sur le MCD que je viens de réaliser.

    D'abord une rapide description du projet, et dans l'idée c'est assez simple :
    - un demandeur remplit un formulaire pour décrire sa demande de transport (quel type de véhicule, quel type de trajet, nombre de passagers, adresses etc.)
    - les prestataires ont accès une liste des demandes qui les concernent et peuvent remplir un formulaire d'offre (prix, commentaires etc.) pour chacune d'entre elles

    Quelques éléments particuliers :
    - chaque demande de trajet est associé à un véhicule particulier (vélo-taxi, moto-taxi, autocar, taxi, limousine etc.) et à un type de trajet particulier (transfert, circuit/tourisme et mise à disposition)
    - chaque prestataire a un type particulier (petite remise, grande remise, taxi, service à la personne etc.)
    - chaque prestataire peut, à l'inscription, sélectionner une liste de véhicules dont il veut pouvoir gérer les demandes
    - la liste des véhicules sélectionnables par un prestataire à l'inscription dépend du type de prestataire sélectionné
    - un prestataire doit obligatoirement être associé à au moins un véhicule

    J'ai eu des soucis essentiellement pour modéliser le fait qu'un prestataire ne peut être associé qu'à des véhicules autorisés à son type de prestataire, et qu'un prestataire ne peut faire d'offre qu'à des demandes dont le véhicule lui est autorisé (j'ai déjà du mal à l'expliquer...).

    Bref, j'ai essayé de modéliser tous les points que je viens de citer (plus quelques autres petites choses), qu'en pensez-vous ?

    Je vous remercie d'avance pour vos avis et critiques !

    PS: Je n'ai mis aucun attribut ou méthode pour que ce soit plus lisible
    Images attachées Images attachées  

  2. #2
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 120
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8 120
    Points : 31 638
    Points
    31 638
    Billets dans le blog
    16
    Par défaut
    Bonsoir,


    Citation Envoyé par anis-s Voir le message
    la liste des véhicules sélectionnables par un prestataire à l'inscription dépend du type de prestataire sélectionné
    La contrainte est-elle bien au niveau du véhicule et non pas du type de véhicule ? Autrement dit, si le véhicule v1 et le véhicule v2 sont du même type de véhicule, disons tv7, v1 est-il sélectionnable pour le type de prestataire t1, tandis que le véhicule v2 ne le serait pas ?

  3. #3
    Candidat au Club
    Inscrit en
    Septembre 2009
    Messages
    6
    Détails du profil
    Informations personnelles :
    Âge : 35

    Informations forums :
    Inscription : Septembre 2009
    Messages : 6
    Points : 2
    Points
    2
    Par défaut
    Bonjour,

    Tout d'abord merci de ton aide !

    En effet, un véhicule n'est pas rattaché exclusivement à un type de prestataire. Donc tv1 peut être autorisé à sélectionner les véhicules v1,v2,v3 tandis que tv2 ne peut choisir que parmi les véhicules v2,v4 etc.

    Donc en gros, mon raisonnement en construisant le diagramme était le suivant :
    - Un "prestataire" a un "Type de prestataire"
    - Un "Type de prestataire" est rattaché à un ou plusieurs "Véhicules" différents
    - Un "Prestataire" gère un ou plusieurs "Véhicules"
    - La liste des "Véhicules" gérés par un "Prestataire" doit être un sous-ensemble de la liste des "Véhicules" rattachés à son "Type de prestataire" (le {IN})

  4. #4
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 120
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8 120
    Points : 31 638
    Points
    31 638
    Billets dans le blog
    16
    Par défaut
    Bonjour,


    Je ne voulais pas parler des contraintes entre les types de prestataires et les véhicules (l’autocar immatriculé 123XYZ75, etc.) mais entre les types de prestataires et les types de véhicules (autocar, vélo-taxi, moto-taxi, taxi, limousine, etc.)

    Mais bon, je vais supposer que la contrainte implique bien des véhicules plutôt que des types de véhicules. Procédons à l’aide d’exemples afin de nous assurer que nous parlons de la même chose. Ci-dessous, on a — sous forme tabulaire — les véhicules (tableau Vehicule), les types de prestataires (tableau TypePrestataire), les prestataires (tableau Prestataire), la liste des paires {type de prestataire, véhicule} (tableau TPV) et la liste des triplets légaux {type de prestataire, véhicule, prestataire} (tableau TPVP des véhicules sélectionnables par les prestataires).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    Vehicule {NoVehicule ...}  TypePrestataire {TypePr ...}  Prestataire {NoPr ...}
                     v01 ...                      tp01 ...                pr01 ...
                     v02 ...                      tp02 ...                pr02 ...
                     v03 ...                      tp03 ...                pr03 ...
                     v04 ...                                              pr04 ...
    
    TPV {TypePr  NoVehicule}    TPVP {TypePr  NoVehicule   NoPr}
           tp01         v02             tp01         v02   pr01
           tp01         v03             tp01         v04   pr01
           tp01         v04             tp02         v02   pr02
           tp02         v02             tp02         v02   pr03
           tp03         v01             tp03         v01   pr04
           tp03         v02             tp03         v04   pr04
           tp03         v04
    Si nous sommes d’accord sur cet exemple, alors dans le cadre du Modèle Relationnel de Données la structure tabulaire est la suivante :

    Et en faisant figurer les clés des tables :

    Selon cette représentation, la liste des véhicules sélectionnables par un prestataire (table TPVP) ne peut être qu’un sous-ensemble de la liste des véhicules associés au type de prestation auquel est rattaché ce prestataire. Ceci n’est rendu possible que parce que le prestataire est identifié relativement au type de prestataire, ce qui revient à dire que la relation entre TypePrestataire et Prestataire est une relation de composition, et même si sémantiquement ça peut se discuter, c’est le prix à payer au SGBD relationnel pour qu'il garantisse la contrainte référentielle de façon automatique.

    Par rétroconception, l’AGL Power AMC produit le diagramme de classe suivant :

    Mais attention, suite à la dérivation de ce diagramme de classes, en toute logique l’AGL pondra le MLD suivant :
    Et il faudra donc intervenir manuellement, en ne faisant qu’un seul attribut TypePr à partir des deux attributs PRE_TypePr et TPV_TypePr pour retrouver la structure tabulaire correcte initiale, c'est-à-dire la table TPV {TypePr, NoVehicule, NoPr}.

    Je ne suis pas spécialiste ès UML, et des gens plus qualifiés pourraient vous donner la solution à partir de laquelle pourrait être produite la table TPV {TypePr, NoVehicule, NoPr} sans intervention manuelle.

  5. #5
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2011
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2011
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Projet Similaire
    Bonjour ,
    J espère que vous allez, bien et que je ne vous déranges pas de trop.
    Je suis étudiant en master et je dois très bientôt sur un projet quasi similaire a celui que vous évoquez sur le forum concernant les transport sauf que je fais un projet mobile pour ma part.
    J aimerai si possible et si vous le voulez bien que vous me transmettiez quelque documents, que vous auriez dans le domaine me permettant de mieux comprendre le sujet.
    Merci d avance
    Cordialement

Discussions similaires

  1. [CSS 3] Mise en page avec des DIV
    Par redoran dans le forum Mise en page CSS
    Réponses: 12
    Dernier message: 03/05/2012, 10h17
  2. Réponses: 1
    Dernier message: 05/03/2012, 13h07
  3. Sites de mise en relation clients - développeurs
    Par éric1 dans le forum Emploi
    Réponses: 0
    Dernier message: 28/03/2011, 18h05
  4. Mise A Jour Avec Des Dates Sous Access
    Par jo001 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 14/05/2007, 16h55

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