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 Tournoi Tennis
Soit le diagramme UML suivant :
Exprimez les contraintes suivantes en OCL :
1) Tous les matchs du tournoi doivent avoir lieu dans la période du tournoi
2) Un match ne peut impliquer que les joueurs qui sont acceptés dans le tournoi
3) Chaque tournoi a au moins un match au premier jour du tournoi
4) Le nombre de joueurs autorisés dans un tournoi est incrémenté de 1 après exécution de accepterJoueur ()
5) L'opération accepterJoueur(j) ne peut être invoquée que si le joueur j n'a pas encore été accepté dans le tournoi.
6) Spécifier le résultat de l’opération getNombreJoueurs()