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 :

Notion "association d'association"


Sujet :

Schéma

  1. #1
    Débutant  
    Inscrit en
    Mai 2006
    Messages
    705
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 705
    Points : 117
    Points
    117
    Par défaut Notion "association d'association"
    Salut à tous,
    Je fait une conception avec mérise et je me demandais si on peut relier deux associations pour obtenir la notion "association d'association", est ce possible? si oui, veuillez me donner quelques clarifications, merci

  2. #2
    Membre éclairé Avatar de grabriel
    Inscrit en
    Septembre 2006
    Messages
    946
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 946
    Points : 730
    Points
    730
    Par défaut
    Salut,

    J'ai jamais entendu parler d'association d'associations, si t'en arrive là c'est que tu dois avoir un problème dans la conceptualisation de tes règles de gestion... peut etre que si tu en dis un peu plus on saurait te conseiller.

    Si jamais :
    * L'association ou relation

    L'association est un lien sémantique entre une ou plusieurs entités : l'association peut être réflexive, de préférence binaire (ex : une usine 'est implantée' dans un pays), parfois ternaire, voire de dimension supérieure. Elle peut également être porteuse d'une ou plusieurs propriétés (ex : 'date d'implantation' d'une usine dans un pays)

    Cette description sémantique est enrichie par la notion de cardinalité...
    Source : http://fr.wikipedia.org/wiki/MERISE

  3. #3
    Débutant  
    Inscrit en
    Mai 2006
    Messages
    705
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 705
    Points : 117
    Points
    117
    Par défaut
    Merci pour votre réponse,
    Mais si on met ce lien entre 2 associations( que ce soient porteuses de données ou non), est ce que c'est juste?

  4. #4
    Membre éclairé Avatar de grabriel
    Inscrit en
    Septembre 2006
    Messages
    946
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 946
    Points : 730
    Points
    730
    Par défaut
    bah vu que ca existe pas, donne ton MCD pour voir....

    Je te donne un exemple t'as client et fournisseur et entre les deux l'association commande tu as bien un lien de client à commande puisque le client passe une commande et tu as bien un lien entre fournisseur et commande puisque un fournisseur recois une commande donc utilise le meme principe pour ton cas tu y verras peut etre ton erreur.

  5. #5
    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
    Mais si on met ce lien entre 2 associations( que ce soient porteuses de données ou non), est ce que c'est juste?
    Cela dépend du formalisme que vous utilisez. Par exemple, RM/T (Relational Model / Tasmania, proposé par Codd (Codd79) classifie ainsi les entités :

    Kernels : entités ayant une existence autonome (disons entités-types fortes).

    Characteristics : entités dont l’existence dépend de celle d’autres entités (on peut parler d’entités faibles).

    Associations : entités dont la fonction est de représenter des relations entre deux ou plusieurs entités (on retrouve les relations merisiennes).

    Il est bon de noter qu’en RM/T, une characteristic peut dépendre de n’importe quel type d’entité : kernel, characteristic ou association.
    De même, une association peut mettre en relation n’importe quel type d’entité : kernel, characteristic ou association.

    Avec RM/T, il est donc possible d’associer des associations.

    Avec Merise, mauvaise pioche ! Associer des associations n’est pas possible, comme vous avez manifestement pu le constater. Pourtant, ponctuellement ça l’est :

    (TRC89) définit le concept de CIF (contrainte d’intégrité fonctionnelle) comme cas particulier de celui de DF (dépendance fonctionnelle), ce dernier concept étant un cas particulier de la relation binaire, elle-même cas particulier de la relation (ouf !)
    Et (Roch89) établit sans état d’âme des CIF entre relations (voir page 193).

    De même, on établit en Merise un certain nombre de types de contraintes entre relations : inclusion, exclusion, etc., sans oublier des relations d’héritage (Cf. (Afcet90) et (Bouzeghoub98)).

    Avoir à associer des associations peut être une conséquence d’une modélisation manquant de rigueur, mais parfois cela peut être légitime. Voir par exemple le paragraphe "Agrégation" dans le document
    ftp://ftp-developpez.com/cyril-gruau/ConceptionBD.pdf

    Si vous utilisez PowerAMC, vous pouvez remplacer les ronds merisiens par des carrés dans la représentation du MCD :
    Outils \ Options du modèle \ Notation : Entité/Relation.


    Références

    (AFCET90) AFCET (Groupe 135). Le formalisme de données MERISE, Extension du pouvoir d'expression). Journée d'étude organisée par le groupe de travail 135 "Conception des systèmes d'information" (Collège AFCET-GID). Jeudi 15 novembre 1990. Paris.

    (Bouzeghoub98) M. Bouzeghoub, G. Gardarin, P. Valduriez. OBJETS. Edition revue et augmentée, 2e tirage 1998 (Eyrolles, 1998).

    (Codd79) E.F. Codd. “Extending the Database Relational Model to Capture More Meaning” ACM TODS V4, N4 (December 1979), pp 397-433.

    (Roch89) Arnold Rochfeld, José Morejon : "La méthode Merise, Tome 3 - Gamme opératoire" Les Éditions d’Organisation, 1989.

    (TRC89) Hubert Tardieu, Arnold Rochfeld, René Colletti : "La méthode Merise, Tome 1 - Principes et outils" Les Éditions d’Organisation, nouvelle édition 1989.
    (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.

  6. #6
    Débutant  
    Inscrit en
    Mai 2006
    Messages
    705
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 705
    Points : 117
    Points
    117
    Par défaut
    Merci pour vous .... et pour vos explications

  7. #7
    Membre averti Avatar de Soutou
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    328
    Détails du profil
    Informations personnelles :
    Âge : 59
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 328
    Points : 378
    Points
    378
    Par défaut
    La notion d'association d'association permet d'affiner les associations de degré 3 ou plus. Pour le degré 3, on parle d'agrégat (2 entités reliées par une asso n-n) relié à la troisième entité.

    Cela peut se résoudre à l'aide de contrainte quand tu ne disposes pas du mécanisme d'agrégat. UML permet tout naturellement de modéliser ces associations (qui sont pourtant tellement nombreuses) par le concept de classe-association.

    Il faudra pour cela utiliser des études plus récents que celles listées plus avant.

  8. #8
    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 Soutou
    La notion d'association d'association permet d'affiner les associations de degré 3 ou plus.
    L’association que j’ai mentionnée à propos de RM/T répond à la question puisque par définition elle permet d’associer des associations de degré quelconque.
    Utilisant plutôt PowerAMC pour réaliser les MCD, il me suffit d’y employer la notation Entité/Relation (plutôt que la notation Merise) pour mettre facilement cela en œuvre.
    Il est évident que (selon la faq Merise), Win’Design permet de le faire (Cf. "Comment représenter une agrégation avec win'design ?")
    http://merise.developpez.com/faq/?pa...N#WD_Agrgation


    UML permet tout naturellement de modéliser ces associations (qui sont pourtant tellement nombreuses) par le concept de classe-association
    Il est évident (et c’est heureux) qu’avec UML on peut facilement représenter des associations d’associations par le biais des classes-associations.

    Cela dit, la question initiale de l’aigle de Carthage concernait Merise.


    Il faudra pour cela utiliser des études plus récents que celles listées plus avant.
    Les références que j’ai fournies concernant le modèle Entité/Relation datent, mais permettent quand même d’aborder Merise. Que conseillez-vous à l’aigle de Carthage pour aller plus avant dans cette méthode ?

    Par ailleurs, RM/T date de 1979, mais pour modéliser les données reste la référence sur laquelle je m’appuie, à cause de sa rigueur, son absence de contraintes arbitraires et le nombre minimum de concepts (termes anglo-saxons) :

    Kernel, association (y-compris d’associations !), characteristic, designation, generalization (supertype, subtype).

    Maintenant, passer des schémas de Merise aux diagrammes de classes est une autre affaire, tout à fait intéressante au demeurant...
    (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.

  9. #9
    Membre averti Avatar de Soutou
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    328
    Détails du profil
    Informations personnelles :
    Âge : 59
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 328
    Points : 378
    Points
    378
    Par défaut
    Citation Envoyé par fsmrel
    Utilisant plutôt PowerAMC pour réaliser les MCD, il me suffit d’y employer la notation Entité/Relation (plutôt que la notation Merise) pour mettre facilement cela en œuvre.
    Oui mais tu vas devoir utiliser la notion d'identification relative (un concept en plus et bien mal maîtrise par la communauté).

    Citation Envoyé par fsmrel
    Il est évident que (selon la faq Merise), Win’Design permet de le faire (Cf. "Comment représenter une agrégation avec win'design ?")
    http://merise.developpez.com/faq/?pa...N#WD_Agrgation
    Dans l'exemple de Dominique, l'agrégat ne s'impose pas car le Devoir doit être rattaché à l'élève (lui même rattaché à une seule classe). Il aurait été utile si EstInscrit fut N-N.

    Citation Envoyé par fsmrel
    Les références que j’ai fournies concernant le modèle Entité/Relation datent, mais permettent quand même d’aborder Merise. Que conseillez-vous à l’aigle de Carthage pour aller plus avant dans cette méthode ?
    Qu'il se fasse une idée par lui même de cette discussion et se manifeste.

    Citation Envoyé par fsmrel
    Par ailleurs, RM/T date de 1979, mais pour modéliser les données reste la référence sur laquelle je m’appuie, à cause de sa rigueur, son absence de contraintes arbitraires et le nombre minimum de concepts (termes anglo-saxons) :

    Kernel, association (y-compris d’associations !), characteristic, designation, generalization (supertype, subtype).
    Oui ça c'est ton dada, tu dois être le fils caché de Date ou son cousin!

  10. #10
    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 Soutou
    Citation Envoyé par fsmrel
    Utilisant plutôt PowerAMC pour réaliser les MCD, il me suffit d’y employer la notation Entité/Relation (plutôt que la notation Merise) pour mettre facilement cela en œuvre.
    Oui mais tu vas devoir utiliser la notion d'identification relative (un concept en plus et bien mal maîtrise par la communauté).
    Ô oui que j’utilise l’identification relative ! Car comme je m’évertue à le dire et à l’écrire, non seulement parce que sémantiquement ça a un sens, mais surtout parce qu’ensuite, ça permet d’éviter aux applications en production de se traîner (je pense notamment aux batchs de nuit). Je m’en suis expliqué en long et en large dans les forums de developpez.com. S’il le faut, je rabâcherai...
    Cf. par exemple la discussion entamée par ctobini : "Quand une propriété devient-elle objet ?", en l’occurrence mon message du 22/05/2007, 03h37 (#17).

    Que le concept soit mal maîtrisé par la communauté, on ne peut que le déplorer. Mais on ne peut pas l’évacuer par un coup de rasoir d’Ockham intempestif. Quand Ted Codd l’a mis en œuvre avec RM/T (sous le nom de characteristic), connaissant le côté parcimonieux du bonhomme, on sait qu’il n’a pas agi à la légère.
    De la même façon, l’héritage, voilà encore un concept en plus, mais qui s’en plaindrait ?

    Citation Envoyé par Soutou
    Citation Envoyé par fsmrel
    Il est évident que (selon la faq Merise), Win’Design permet de le faire (Cf. "Comment représenter une agrégation avec win'design ?")
    http://merise.developpez.com/faq/?pa...N#WD_Agrgation
    Dans l'exemple de Dominique, l'agrégat ne s'impose pas car le Devoir doit être rattaché à l'élève (lui même rattaché à une seule classe). Il aurait été utile si EstInscrit fut N-N.
    Quod est demonstrandum. Dans son premier schéma de la faq, Classe_Eleve (cardinalités N-N) fait penser à un agrégat, mais aussi à une classe-relation et joue de toutes façons un rôle distinct de celui de l’association EstInscrit, un peu à la façon par exemple d’un historique et il existe très vraisemblablement une règle de gestion justifiant la cardinalité N-N, donc la dépendance de Devoir (ou d’une entité moins sujette à débat) vis-à-vis du couple {Classe, Élève}.



    Citation Envoyé par Soutou
    Citation Envoyé par fsmrel
    Par ailleurs, RM/T date de 1979, mais pour modéliser les données reste la référence sur laquelle je m’appuie, à cause de sa rigueur, son absence de contraintes arbitraires et le nombre minimum de concepts (termes anglo-saxons) :
    Kernel, association (y-compris d’associations !), characteristic, designation, generalization (supertype, subtype).
    Oui ça c'est ton dada, tu dois être le fils caché de Date ou son cousin!
    Yes Sir! A ceci près que je ne suis qu’un fils spirituel de Codd et donc frère de lait de Chris Date (c’est lui qui a tout bu, mais je me rattrape avec ses ouvrages, en anglais de préférence... )
    Sur le terrain, mon dada m’a quand même bien réussi lors de l’accompagnement des projets jusqu’en production, parfois avec de la sueur mais toujours sans crainte (et sans pénalités : "pourvou qué ça doure !" comme disait Laetitia...)
    (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.

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

Discussions similaires

  1. [DC]notion qualification,classe d'association , attibut de lien
    Par ranell dans le forum Diagrammes de Classes
    Réponses: 9
    Dernier message: 10/05/2010, 09h06
  2. [Associé] Recherche associé sur Paris
    Par ATopensource dans le forum Autres
    Réponses: 0
    Dernier message: 18/11/2007, 15h49
  3. Association d'associations
    Par elf-legolas dans le forum Schéma
    Réponses: 1
    Dernier message: 02/06/2004, 12h45

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