Cours ocl20 1 Object Constraint Language OCL Une introduction Master IFPRU - Module Ingénierie des modèles - FMIN Marianne Huchard novembre Présentation générale OCL est un langage formel basé sur la logique des prédicats du premier ordre pour annoter les

Object Constraint Language OCL Une introduction Master IFPRU - Module Ingénierie des modèles - FMIN Marianne Huchard novembre Présentation générale OCL est un langage formel basé sur la logique des prédicats du premier ordre pour annoter les diagrammes UML en permettant notamment l ? expression de contraintes Objectif du langage Voici les arguments avancés pour l ? introduction d ? OCL ?? Accompagner les diagrammes UML de descriptions ?? précises ?? non ambigu? s ?? Eviter cependant les désavantages des langages formels traditionnels qui sont peu utilisables par les utilisateurs et les concepteurs qui ne sont pas rompus à l ? exercice des mathématiques ?? rester facile à écrire ?? et facile à lire Dans le cadre de l ? ingénierie des modèles la précision du langage OCL est nécessaire pour pouvoir traduire automatiquement les contraintes OCL dans un langage de programmation a n n de les véri n er pendant l ? exécution d ? un programme Historique OCL s ? inspire de Syntropy CD méthode basée sur une combinaison d ? OMT Object Modeling Technique RBE et d ? un sous-ensemble de Z A l ? origine OCL a été développé en par Jos Warmer IBM sur les bases du langage IBEL Integrated Business Engineering Language Il a été formellement intégré à UML en Nous présentons dans ce document OCL tel qu ? il est proposé dans la version UML OMG a Vous trouverez dans MG une présentation d ? OCL UML qui a servi de base à la réalisation de ce support de cours et dans Nyt quelques exemples complémentaires Principe La notion de contrainte Une contrainte est une expression à valeur booléenne que l ? on peut attacher à n ? importe quel élément UML Elle indique en général une restriction ou donne des informations complémentaires sur un modèle Langage déclaratif Les contraintes ne sont pas opérationnelles On ne peut pas invoquer de processus ni d ? opérations autres que des requêtes On ne décrit pas le comportement à adopter si une contrainte n ? est pas respectée Langage sans e n et de bord Les instances ne sont pas modi n ées par les contraintes Utilisation Les contraintes servent dans plusieurs situations ?? description d ? invariants sur les classes et les types ?? pré-conditions et post-conditions sur les opérations et méthodes ?? contraintes sur la valeur retournée par une opération ou une méthode ?? règles de dérivation des attributs ?? description de cibles pour les messages et les actions ?? expression des gardes conditions dans les diagrammes dynamiques ?? invariants de type pour les stéréotypes Les contraintes servent en particulier à décrire la sémantique d ? UML ou de ses diverses extensions en participant à la dé n nition des pro n ls La notion de contexte Une contrainte OCL est liée à un contexte qui est le type l ? opération ou l ? attribut auquel la contrainte se rapporte context monContexte Expression de la contrainte Personne - age entier - majeur booléen

  • 38
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Aucune attribution requise
Partager
  • Détails
  • Publié le Oct 25, 2022
  • Catégorie Travel / Voayage
  • Langue French
  • Taille du fichier 43.5kB