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 :

contrainte de totalité ou absence de contrainte


Sujet :

Schéma

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    958
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 958
    Points : 141
    Points
    141
    Par défaut contrainte de totalité ou absence de contrainte
    Bonjour,
    Ma question est la suivante:

    Parmi des collaborateurs d'un laboratoire (au niveau commercial) on compte des visiteurs médicaux, des délégués régionaux et des responsables de secteurs.
    Les délégués régionaux sont des visiteurs à part entière qui occupent une part de leur temps à l'amélioration des activités des visiteurs.
    Par contre , les responsable de secteurs ne sont pas du tout des visiteurs.
    J'ai crée une contrainte de totalité entre une entité générique COLLABORATEUR et trois sous entités VISITEUR, DELEGUE_REGIONAL et RESPONSABLE_SECTEUR.
    Cette contrainte signifie: un collaborateur peut être soit un visiteur, soit un delegue regional ou soit un responsable de secteur.
    Il peut également être l'un et l'autre , mais ne peut pas être autre chose qu'un visiteur, un delegue regional ou un responsable de secteur.

    S'il est vrai qu'un délegué regional peut être en même temps un visiteur, ceci ne s'applique pas à responsable de secteur et visiteur(un responsable de secteur ne peut pas être en même temps un visiteur dans l'existant du laboratoire).
    Y-a-t-il pour autant un faux sens strictement?

    Il existe une autre solution qui serait de placer sous l'entité collaborateur, deux sous entités :visiteur et delegue regional et de placer une absence de contrainte entre ces sous entités et l'entité générique;cette contrainte se comprendrait ainsi: : un collaborateur peut être soit un visiteur, soit un délégué regional , soit les deux.
    Il peut être également autre chose, c'est à dire , dans notre cas, un responsable de secteur.
    Quelle solution privilègeriez-vous, sachant que dans le deuxième cas, l'entité responsable de secteur n'apparaît pas ?

    Vous remerciant beaucoup de votre réponse et de votre aide,

    Cordialement.

    New wave
    Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes. [SHADOKS]

  2. #2
    Expert confirmé Avatar de Richard_35
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    3 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 3 121
    Points : 4 596
    Points
    4 596
    Par défaut
    Bonjour New_wave,

    Intéressant...

    Il y a une contradiction entre
    Citation Envoyé par New_wave
    Les délégués régionaux sont des visiteurs à part entière
    et
    Citation Envoyé par =New_wave
    S'il est vrai qu'un délegué regional peut être en même temps un visiteur
    ==> il est fondamental de la lever !

    Si les délégués régionaux sont forcément des visiteurs particuliers :


    pourrait convenir (quoique je ne suis pas trop d'accord avec le SQL généré par JMerise).

    ou bien :



    Le second cas, plus tard.
    Images attachées Images attachées   
    Dis-nous et à bientôt,
    Richard.
    ----------------------------------------------------------------------------------------------
    En cas de résolution, et afin de faciliter la tâche des bénévoles, merci de cliquer sur .
    et permettent aux forumeurs de cibler leur recherche dans une discussion : n'hésitez pas à voter !

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


    Citation Envoyé par new_wave Voir le message
    Il existe une autre solution qui serait de placer sous l'entité collaborateur, deux sous entités :visiteur et delegue regional et de placer une absence de contrainte entre ces sous entités et l'entité générique;cette contrainte se comprendrait ainsi: : un collaborateur peut être soit un visiteur, soit un délégué regional , soit les deux.
    Il peut être également autre chose, c'est à dire , dans notre cas, un responsable de secteur.
    Quelle solution privilègeriez-vous, sachant que dans le deuxième cas, l'entité responsable de secteur n'apparaît pas ?
    Si l’on suit votre raisonnement, la modélisation qui en résulte est la suivante (aucune contrainte symbolisée au sein de la demi-lune) :




    On est alors le non dit quant aux responsables de secteur. On infère qu’un collaborateur est un responsable si et seulement si il n’est ni visiteur ni délégué, ce qui dans un monde idéal est possible, mais concrètement plutôt léger au stade opérationnel. En effet, à ce stade rien n’empêche qu’un responsable soit aussi visiteur et/ou délégué.


    Citation Envoyé par Richard_35 Voir le message

    Il y a une contradiction entre :
    Les délégués régionaux sont des visiteurs à part entière
    Et
    S'il est vrai qu'un délégué régional peut être en même temps un visiteur
    Effectivement, c’est la différence qu’il y a entre un prédicat quantifié soit par « ∀ » soit par « ∃ »...


    Citation Envoyé par Richard_35 Voir le message

    Du point de vue de Merise, un MCD ne doit pas comporter de redondance d’attributs, IdCollaborateur doit donc être évacué des entités-types Visiteur, DelegueRegional et ResponsableSecteur.

    Par ailleurs, le concept d’auto-incrément est du niveau SGBD (MPD donc) et doit être évacué lui aussi du MCD.

    En toute logique, si DelegueRegional est un sous-type de Visiteur, alors il manque un triangle sur la patte les connectant. Si c’est l’outil qui permet d’en faire l’économie, alors le triangle connectant Collaborateur et ses sous-types doit disparaître (auquel cas on retrouve la notation UML). Si l’outil permet de panacher les représentations, alors il y a là perte d’intégrité conceptuelle (cf. The Mythical Man-Month). Autrement dit, passer ça au rasoir d'Ockham.


    Citation Envoyé par Richard_35 Voir le message


    Que vient faire ici cette CIF (inférable du reste du fait cardinalités maximales 1) ? Comment repérer la source, la portée, le pivot ? S’il s’agit d’exprimer la totalité et l’exclusion, il faudrait remplacer « CIF » par « XT » (ou « + » symbole utilisé par l’Afcet (journée du 15 novembre 1990) pour le « ou exclusif », valant pour, je cite, « totalité et exclusion mutuelle »).

    Les observations faites à propos de la redondance d’attributs et de l’auto-incrémentation valent évidemment ici.
    (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.

  4. #4
    Expert confirmé Avatar de Richard_35
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    3 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 3 121
    Points : 4 596
    Points
    4 596
    Par défaut
    Bonjour Fsmrel et New_wave (et Rabdev),

    Citation Envoyé par Fsmrel
    Du point de vue de Merise, un MCD ne doit pas comporter de redondance d’attributs, IdCollaborateur doit donc être évacué des entités-types Visiteur, DelegueRegional et ResponsableSecteur.
    ==> merci . Du coup, ma remarque
    Citation Envoyé par Richard_35
    (quoique je ne suis pas trop d'accord avec le SQL généré par JMerise)
    est caduque. En effet, dans JMerise, le fait de ne pas répéter IdCollaborateur dans les tables "filles", génère un SQL de création de table correct (désolé, Rabdev).


    En revanche, si
    Citation Envoyé par Fsmrel
    le concept d’auto-incrément est du niveau SGBD (MPD donc) et doit être évacué lui aussi du MCD
    ==> alors, le CREATE TABLE n'est pas correct pour les attribut du champ IdCollaborateur. Laissons-le donc au niveau MCD.


    Citation Envoyé par Fsmrel
    Que vient faire ici cette CIF (inférable du reste du fait cardinalités maximales 1) ? Comment repérer la source, la portée, le pivot ? S’il s’agit d’exprimer la totalité et l’exclusion, il faudrait remplacer « CIF » par « XT » (ou « + » symbole utilisé par l’Afcet (journée du 15 novembre 1990) pour le « ou exclusif », valant pour, je cite, « totalité et exclusion mutuelle »).
    ==> c'est vrai. Le texte de l'objet "CIF" ne semble pas modifiable dans JMerise. Peut-être est-ce une idée d'évolution.
    Dis-nous et à bientôt,
    Richard.
    ----------------------------------------------------------------------------------------------
    En cas de résolution, et afin de faciliter la tâche des bénévoles, merci de cliquer sur .
    et permettent aux forumeurs de cibler leur recherche dans une discussion : n'hésitez pas à voter !

  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
    Citation Envoyé par fsmrel
    En toute logique, si DelegueRegional est un sous-type de Visiteur, alors il manque un triangle sur la patte les connectant.
    Euh... je vois bien un triangle sous l'entité type Visiteur qui constitue l'extrémité du trait entre Visiteur et DelegueRegional !
    Tu parles d'un autre triangle ?

    Le schéma de Richard me semble correct, une fois débarrassé des identifiants des entités types filles, puisque, en présence d'un héritage de données, il y a identification relative.
    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
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 001
    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 001
    Points : 30 905
    Points
    30 905
    Billets dans le blog
    16
    Par défaut
    Bonsoir,


    Citation Envoyé par Richard_35 Voir le message
    Citation Envoyé par fsmrel Voir le message
    le concept d’auto-incrément est du niveau SGBD (MPD donc) et doit être évacué lui aussi du MCD.
    ==> alors, le CREATE TABLE n'est pas correct pour les attribut du champ IdCollaborateur. Laissons-le donc au niveau MCD.
    Vous n’y êtes évidemment pour rien, mais c’est à l’outil de respecter le principe de l’intégrité conceptuelle. Une fonctionnalité du niveau physique n’a pas à polluer le niveau conceptuel.


    Citation Envoyé par Richard_35 Voir le message
    Citation Envoyé par fsmrel Voir le message
    Que vient faire ici cette CIF (inférable du reste du fait cardinalités maximales 1) ? Comment repérer la source, la portée, le pivot ? S’il s’agit d’exprimer la totalité et l’exclusion, il faudrait remplacer « CIF » par « XT » (ou « + » symbole utilisé par l’Afcet (journée du 15 novembre 1990) pour le « ou exclusif », valant pour, je cite, « totalité et exclusion mutuelle »).
    ==> c'est vrai. Le texte de l'objet "CIF" ne semble pas modifiable dans JMerise. Peut-être est-ce une idée d'évolution.
    Il ne s’agit pas de faire évoluer l’outil, mais bien d’y corriger une anomalie.


    Citation Envoyé par CinePhil Voir le message
    Euh... je vois bien un triangle sous l'entité type Visiteur qui constitue l'extrémité du trait entre Visiteur et DelegueRegional !
    Tu parles d'un autre triangle ?
    Je parle de cohérence dans la notation.

    Ou bien un outil propose une notation telle que celle-ci (façon WinDesign, PowerAMC) et il s’y tient :




    Ou bien un outil propose la notation ULM :




    Mais on s’en tient à une notation, l'outil ne devrait pas permettre des mélanges pouvant déstabiliser le lecteur.
    (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.

Discussions similaires

  1. Contrainte de partition(+), exclusion(X), totalité(T), ( )
    Par bauer963 dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 17/03/2010, 12h06
  2. Contraintes d'exclusion / totalité / inclusion
    Par Sandriiine dans le forum PowerAMC
    Réponses: 2
    Dernier message: 24/07/2009, 13h10
  3. contraintes inclusion exclusion totalité
    Par ds_ryo dans le forum PowerAMC
    Réponses: 7
    Dernier message: 10/04/2009, 22h39
  4. Suppression de la contrainte unique
    Par mika dans le forum SQL
    Réponses: 3
    Dernier message: 20/02/2003, 17h56
  5. [VB6] Affichage d'image avec qlq contraintes
    Par youri dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 21/11/2002, 14h44

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