Object Constraint Language
Apparence
OCL | ||
![]() | ||
Paradigme | déclaratif, impératif | |
---|---|---|
Auteur | Object Management Group (OMG) | |
Développeurs | Fondation Eclipse | |
Dernière version | ||
Typage | fort | |
Dialectes | EssentialOCL (pour le standard QVT), ImperativeOCL (avec effets de bord) | |
A influencé | QVT | |
Implémentations | Eclipse OCL | |
Système d'exploitation | Multiplateformes | |
Site web | eclipse.org/ocl | |
Extensions de fichiers | .ocl | |
modifier ![]() |
OCL (Object Constraint Language) est un langage informatique d'expression des contraintes utilisé par UML. C'est une contribution d'IBM à UML 1.1.
Ce langage formel est volontairement simple d'accès et représente un juste milieu entre langage naturel et langage mathématique. Il permet ainsi de limiter les ambigüités dans la spécification des contraintes logicielles. Sa grammaire simple lui permet d'être interprété par des outils logiciels pour faire de la programmation par contrat et vérifier qu'un logiciel répond à ses spécifications techniques.
Description
OCL permet de décrire des invariants dans un modèle, sous forme de pseudo-code :
- pré et post-conditions pour une opération ;
- expressions de navigation ;
- expressions booléennes ;
- etc.
OCL est utilisé dans la définition du métamodèle UML.
Exemple de contraintes
Aucun âge de personne ne peut être négatif :
context Personne inv: self.age >=0
Liens externes
- (en) Site officiel
- Laurent Audibert, « Chapitre 4 Langage de contraintes objet (Object Constraint Langage : OCL) », sur developpez.com
- « UML en français - OCL »