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 :

hésitation sur cardinalité


Sujet :

Schéma

  1. #1
    Futur Membre du Club
    Femme Profil pro
    automaticienne
    Inscrit en
    Mai 2011
    Messages
    55
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Sénégal

    Informations professionnelles :
    Activité : automaticienne
    Secteur : Transports

    Informations forums :
    Inscription : Mai 2011
    Messages : 55
    Points : 8
    Points
    8
    Par défaut hésitation sur cardinalité
    Bonjour,

    J’hésite sur une cardinalité, mon projet c'est un gestion de balises.
    une balise peuxt être en stock sans avoir de puce.
    si elle appartient à un client elle contient une puce
    la puce peux être en stock sans être affectée à une balise.
    sinon elle est affectée à une balise et à une seul.
    mon problème et que il peux y avoir des cas où une puce appartient à une balise une 1ère fois et parce qu'elle tombe en panne on la remplace par une autre et la première va sur une nouvelle balise si elle est plus en panne pour être mise sur une autre donc il faut un historique,
    Je doute sur mes cardinalités sim 0,n----balise0,1 ou sim 0,1----balise0,1?
    merci d'avance de vos réponses.

  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
    Nous étudions l'association entre puce et balise...
    une balise peuxt être en stock sans avoir de puce.
    => cardinalité mini côté balise = 0
    si elle appartient à un client elle contient une puce
    Je suppose qu'une balise ne contient qu'une seule puce au maximum ? => cardinalité maxi côté balise = 1

    la puce peux être en stock sans être affectée à une balise.
    Donc une puce peut n'être affectée à aucune balise => cardinalité mini côté puce = 0
    sinon elle est affectée à une balise et à une seul
    => cardinalité maxi côté puce = 1

    MCD résultant :
    puce -0,1----affecter----0,1- balise

    MAIS...

    il faut un historique
    Soit tu ajoutes la période d'affectation à l'association affecter, ce qui fait qu'une puce peut être affectée (successivement) à plusieurs balises et qu'une balise peut se voir affecter (successivement) plusieurs puces.

    MCD résultant :
    puce -0,n----affecter(période)----0,n- balise

    Soit tu crées une historisation séparée et ne gardes que la situation actuelle dans l'association affecter.

    MCD résultant :
    puce -0,1----affecter----(1,1)- affectation -(1,1)----comprendre----0,1- balise
    [date] -0,n----historiser----0,1-----|
    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
    Futur Membre du Club
    Femme Profil pro
    automaticienne
    Inscrit en
    Mai 2011
    Messages
    55
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Sénégal

    Informations professionnelles :
    Activité : automaticienne
    Secteur : Transports

    Informations forums :
    Inscription : Mai 2011
    Messages : 55
    Points : 8
    Points
    8
    Par défaut
    Citation Envoyé par CinePhil Voir le message
    Nous étudions l'association entre puce et balise...

    => cardinalité mini côté balise = 0

    Je suppose qu'une balise ne contient qu'une seule puce au maximum ? => cardinalité maxi côté balise = 1


    Donc une puce peut n'être affectée à aucune balise => cardinalité mini côté puce = 0

    => cardinalité maxi côté puce = 1

    MCD résultant :
    puce -0,1----affecter----0,1- balise

    MAIS...


    Soit tu ajoutes la période d'affectation à l'association affecter, ce qui fait qu'une puce peut être affectée (successivement) à plusieurs balises et qu'une balise peut se voir affecter (successivement) plusieurs puces.

    MCD résultant :
    puce -0,n----affecter(période)----0,n- balise

    Soit tu crées une historisation séparée et ne gardes que la situation actuelle dans l'association affecter.

    MCD résultant :
    puce -0,1----affecter----(1,1)- affectation -(1,1)----comprendre----0,1- balise
    [date] -0,n----historiser----0,1-----|
    Merci de votre réponse.
    Et d'après vous, en ce qui concerne l'historique qu'elle solution est préférable? Merci d'avance

  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 002
    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 002
    Points : 30 906
    Points
    30 906
    Billets dans le blog
    16
    Par défaut Vint ans dans une balise, la vie d'une puce...
    Bonsoir,

    CinePhil a fourni sa réponse avant la mienne, mais comme abondance de biens ne nuit pas, je vous fais part néanmoins d'une variante de la vie d'une puce...

    Je ne suis pas sûr de vous avoir suivie de A à Z. Quoi qu’il en soit, il serait sain de mettre en œuvre deux relations entre les balises et les puces, pour exprimer deux types de faits temporels distincts. En effet :

    1) La puce P1 peut être actuellement affectée, auquel cas elle équipe une certaine balise B1.
    2) Par ailleurs, cette puce P1 a pu être précédemment affectée aux balises B2, ..., Bn (et pourquoi pas B1), à des périodes évidemment différentes.

    Ainsi, dans le MCD ci-dessous, une puce peut, depuis une certaine date, équiper une certaine balise (association-type PUCE_ACTIVE), laquelle, si j’ai bien compris, est équipée de cette seule balise depuis cette date.
    De même, une puce a pu équiper telle ou telle balise, mais durant des périodes distinctes et une balise a pu être équipée de différentes puces durant des périodes distinctes.

    MCD



    N.B.

    — Une période est composée d’un couple {date de début, date de fin}.

    — Les pointes de flèches expriment des CIF :
    PUCE X PERIODE -> BALISE (pendant une période donnée, une puce n’a pu équiper qu’une seule balise) ;
    BALISE X PERIODE -> PUCE (si j’ai bien compris, pendant une période donnée, une balise n’a pu être équipée que d’une seule puce).

    MLD

    Notes :
    Table PUCE_ACTIVE :
    Le mickey <pk, fk2> signifie que {PuceId} est clé primaire de la table et clé étrangère (par rapport à la table PUCE).

    Le mickey <ak, fk1> signifie que {BaliseId} est clé alternative de la table et clé étrangère (par rapport à la table BALISE). La clé alternative est la conséquence du fait qu’à une date donnée, une balise n’est équipée que d’une seule puce.
    Table PUCE_HISTO :
    La clé primaire de la table est la paire {PuceId, PeriodeAffectation}.
    La table comporte aussi une clé alternative {BaliseId, PeriodeAffectation}, car pendant une période donnée, une balise n’a été équipée que d’une seule puce.
    Le mickey <ak, fk2> signifie que {BaliseId} est clé alternative de la table et clé étrangère (par rapport à la table BALISE).
    (a) Faites simple, mais pas plus simple ! (A. Einstein)
    (b) Certes, E=mc², mais si on discute un peu, on peut l’avoir pour beaucoup moins cher... (G. Lacroix, « Les Euphorismes de Grégoire »)
    => La relativité n'existerait donc que relativement aux relativistes (Jean Eisenstaedt, « Einstein et la relativité générale »)

    __________________________________
    Bases de données relationnelles et normalisation : de la première à la sixième forme normale
    Modéliser les données avec MySQL Workbench
    Je ne réponds pas aux questions techniques par MP. Les forums sont là pour ça.

  5. #5
    Futur Membre du Club
    Femme Profil pro
    automaticienne
    Inscrit en
    Mai 2011
    Messages
    55
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Sénégal

    Informations professionnelles :
    Activité : automaticienne
    Secteur : Transports

    Informations forums :
    Inscription : Mai 2011
    Messages : 55
    Points : 8
    Points
    8
    Par défaut
    Bonjour,

    merci beaucoup pour votre réponse et pour les détails, c'est bien cela vous avez tout compris.
    Je voudrais vous en dire plus car la balise et la puce c'est qu'une parti et je crois que cela change un peu la donne si je vous donne plus de détails (en plus comme je suis une informaticienne qui n'a pas pratiqué depuis quelques années, je suis larguez...).

    Voilà, je voudrais gérez un stock et la gestion d'opérations comme vous l'avez compris de balise, puces et d'antennes (vont sur balise), le triplet balise, puce, antenne va être affecté à un véhicule du service d'un client (client peux ne pas avoir de service ou en avoir plusieurs),
    1- Chacun des client et du service ont un compte (client x à un comte depuis lequel on peux visualiser tout les véhicule lui appartenant, et le service permet de voir que les véhicules appartenant au service).

    2-le véhicule: si on a pas son immatriculation on peut lui affecter un ID provisoire qu'on remplacera par son immatriculation le moment venu.

    3-la puce fait parti d'un stock (sa date d'entré en stock) disponible au départ sinon elle est occupée(affectée à un client), en quarantaine (cela dure 2 mois et quand les deux mois son écoulé elle passe automatiquement dans le stock disponible), SAV (peut être réactivée), stock perte (irrécupérable).
    cas spécifique: peut être chez un des techniciens tant qu'il n'a pas affecté à une balise dans quel cas elle est dispo sinon occupée.
    la puce a un historique comme vous l'avez compris/à la balise mais aussi au véhicule.
    La puce on lui affecte un type avant de l'installer sur une balise (roaming, gps..)

    4-La balise à un type T1,T2.... et chaque type a des paramètres P1, P2
    La balise fait parti d'un stock, disponible dans quel cas n'a pas de puce ni d'antenne, stock SAV, stock perte (elle est out)
    La balise peut être vendu à un client ou pour location

    5-On a un un lot ID (identifiant) (existe déjà ce dernier est différent de id matériel qui concerne la balise) qu'on va affectée à un lot de balise vendu au client x.

    6- Ils existe des opération qu'on effectuent sur les véhicules installation (triplet balise, puce, antenne), désinstallation triplet (balise, puce, antenne), maintenance (changement de balise ou de puce ou d'antenne ou juste programmation balise ou déplacement antenne ...), permutation (1-permute balise b1 du véhicule v1 vers véhicule v2, 2-permute balise b1 du véhicule v1 vers véhicule v2 et balise b2 du véhicule v2 vers véhicule v1) et c'est un technicien qui s'occupe de cela à la date T.

    J'espère que j'ai étais clair et que je n'es rien oubliée. je vais établir le mcd et vous l'envoi.

    Merci encore et bonne journée.

    EDIT à 14h47 :
    Voilà un schéma que j'ai pu gribouiller vite fait sur toad data modler que je viens de télécharger (je ne sais pas l'utiliser encore pas de relation, pas de cardinalité je sais pas faire) mais au moins c'est une vue globale.

    Merci encore mille fois pour vos réponses.

  6. #6
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 002
    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 002
    Points : 30 906
    Points
    30 906
    Billets dans le blog
    16
    Par défaut
    Bonsoir,


    Reprenons le diagramme que vous proposez, pour la partie concernant les opérations, hors historique :




    1) Les types d’objets sont ici à prendre comme des types d’entités, donc nommons-les au singulier : OPERATION, BALISE, ANTENNE.

    2) Concernant les relations entre BALISE et ANTENNE :

    Selon votre représentation, une opération de fait pas directement référence à une antenne, en conséquence un changement d’antenne n’engendre pas d’opération, alors que vous écrivez :
    Citation Envoyé par jogodepau Voir le message
    Il existe des opérations qu'on effectue sur les véhicules [...] changement de balise ou de puce ou d'antenne [...] ou déplacement antenne...
    Il y a donc comme une contradiction. Étant donné que les opérations sont au cœur de l’historisation, avant d’aller plus loin, qu’en est-il ?

    N.B. Qu'est-ce qu'un déplacement d'antenne ?
    (a) Faites simple, mais pas plus simple ! (A. Einstein)
    (b) Certes, E=mc², mais si on discute un peu, on peut l’avoir pour beaucoup moins cher... (G. Lacroix, « Les Euphorismes de Grégoire »)
    => La relativité n'existerait donc que relativement aux relativistes (Jean Eisenstaedt, « Einstein et la relativité générale »)

    __________________________________
    Bases de données relationnelles et normalisation : de la première à la sixième forme normale
    Modéliser les données avec MySQL Workbench
    Je ne réponds pas aux questions techniques par MP. Les forums sont là pour ça.

  7. #7
    Futur Membre du Club
    Femme Profil pro
    automaticienne
    Inscrit en
    Mai 2011
    Messages
    55
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Sénégal

    Informations professionnelles :
    Activité : automaticienne
    Secteur : Transports

    Informations forums :
    Inscription : Mai 2011
    Messages : 55
    Points : 8
    Points
    8
    Par défaut
    bonjour,

    Premièrement le logiciel avec lequel j'ai fais ce schéma je ne le maîtrise pas du tout et je dirais même je ne comprend pas certains aspects, alors j'ai télécharger un autre qui represente plus ce qui me reste de mes cours loin si loin...

    pour l'explication sur les opérations ou les antennes:

    Une opération concerne une balise sur un véhicule, comme la balise se compose d'une sim et d'une antenne, l'opération peut concerner la balise en elle même(physiquement câblage) ou son antenne défectueuse ou mal placée,sinon la sim qui pose problème.. voilà

    Donc comme j'ai compris que ça allez être dur pour moi j'ai posté mon mcd sur le forum
    voici le lien:
    http://www.developpez.net/forums/d10...-mcd-correcte/

    merci de jeter un coup d'oeil svp et me donner votre avis.

Discussions similaires

  1. question sur cardinalités
    Par flex@ dans le forum Schéma
    Réponses: 1
    Dernier message: 31/01/2008, 09h12
  2. Hésitation sur un pc portable
    Par kaygee dans le forum Ordinateurs
    Réponses: 1
    Dernier message: 19/10/2007, 14h49
  3. [XHTML/CSS] Hésitation sur un livre
    Par VanHelsing dans le forum Mise en page CSS
    Réponses: 8
    Dernier message: 10/08/2006, 09h30
  4. Hésitations sur LoadFromResourceName...
    Par Sunchaser dans le forum C++Builder
    Réponses: 2
    Dernier message: 11/09/2005, 19h36
  5. Hésitation sur le choix de PostGreSQL
    Par brice01 dans le forum Décisions SGBD
    Réponses: 3
    Dernier message: 13/12/2004, 17h48

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