OCL (Object Constraint Language) est un langage formel utilisé pour définir et spécifier des contraintes sur les modèles de données orientés objet. Il fournit des expressions de contraintes pour spécifier des conditions qui doivent être satisfaites par les instances d'une classe, ainsi que des opérations et des fonctions pour effectuer des calculs sur les objets. OCL est utilisé dans l'ingénierie logicielle pour valider et vérifier la conformité des modèles de données avec les exigences fonctionnelles et non fonctionnelles.
EXERCICE OCL PROJET INFORMATIQUE
Etudier le diagramme de classe suivant : 
1) Identifiez les classes et les associations, y compris leurs attributs et leurs opérations.
2) Écrire les contraintes OCL suivante :
- La priorité d'une compétence doit être l'une des suivantes : Élevée , Moyenne ou Faible .
- Le budget d'un projet doit être compris entre 100 000 et 500 000 inclus.
- Le nom d'une équipe dotée d'un rôle ne peut pas être une chaîne vide.
- Le numéro d'identification d'une personne affectée à un rôle doit être supérieur à 0 et inférieur à 9999.
- Le numéro d'identification de chaque membre d'une équipe doit être supérieur à 0 et inférieur à 9999.
- Le numéro d'identification de chaque membre d'une équipe doit être supérieur à 0 et inférieur à 9999.
- Le numéro d'identification de chaque ressource humaine qui se rapporte au plan d'une équipe doit être supérieur à 0 et inférieur à 9999.