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

UML Discussion :

Contrainte sur des associations


Sujet :

UML

  1. #1
    Candidat au Club
    Contrainte sur des associations
    Bonjour à tous,

    Est-ce que c'est possible de définir des contraintes de type invariant sur des associations (en utilisant le nom de l'association).

    Par exemple, si j'ai une association appelée "travaille" entre les classe "Personne" et "entreprise", est-ce que c'est possible d'écrire une contrainte avec comme contexte le nom de l'association "Travai" ? (sans passer par les classes association).

    Merci d'avance pour vos retours.

    Très cordialement

  2. #2
    Modérateur

    Bonjour,

    la réponse est dans la norme ( formal/2017-12-05 )

    oui c'est possible, le champs d'application des contraintes est très vaste puisqu'elles s'appliquent à des Element (c.f. constrainedElement § 7.8.3.5 page 41) qui est une classe abstraite dont les spécialisations directes sont (§7.8.6.3 page 43) Comment, MultiplicityElement, NamedElement, ParameterableElement, Relationship, TemplateableElement, TemplateParameter, TemplateParameterSubstitution, TemplateSignature, ExceptionHandler, Image, Slot, Clause, LinkEndData, QualifierValue

    c.f. § 11.8.1.3 page 219 une association est une spécialisation de Relationship qui est donc une spécialisation de Element

    c.f. § 7.8.3.3 page 41 une contrainte est un PackageableElement qui hérite de NamedElement et ParameterableElement qui sont tous deux des Elements, , une contrainte peut donc même s'appliquer à des contraintes, mais avec la contrainte (!) qu'une contrainte ne peut s'appliquer à elle même (c.f. not_apply_to_self § 7.8.3.6 page 42)
    Bruno Pagès, auteur de Bouml (freeware), mes tutoriels sur DVP (vieux, non à jour )

    N'oubliez pas de consulter les FAQ UML et les cours et tutoriels UML

  3. #3
    Candidat au Club
    Bonjour,

    Merci beaucoup pour votre retour.

    Est-ce que vous pouvez me donner quelques exemples de contraintes sur les associations.

    J’utilise pour la vérification de contraintes l’outil USE, je ne trouve pas comment écrire des contraintes sur un contexte d’association.

    Merci beaucoup pour votre aide.

    Très cordialement

  4. #4
    Modérateur

    Bonjour

    le langage 'officiel' pour définir les contraintes est OCL, vous avez donc des exemples dans la norme( https://www.omg.org/spec/OCL) ou en cherchant OCL via votre navigateur préféré
    Bruno Pagès, auteur de Bouml (freeware), mes tutoriels sur DVP (vieux, non à jour )

    N'oubliez pas de consulter les FAQ UML et les cours et tutoriels UML

###raw>template_hook.ano_emploi###