Vous êtes sur la page 1sur 6

Département Maths-Informatique Souk Ahras, Le 08-01-2018

Université de Souk-Ahras

Examen de moyenne durée


MMO / 1eme Année Master informatique GL

Exercice 1 (6pts) Questions de compréhension


1. Quel sont les concepts de bases dans un diagramme de temps ? Pour quelle raison ce
diagramme fait partie des diagrammes d’interactions.
2. Définir c’est quoi un profil UML. Quels sont les éléments de base qui définissent un profil
UML.
3. Citer les différents fragments combinés qui existent dans UML 2.0. Quelle est la différence
entre les fragments « weak sequencing » et « strict sequencing ».
4. Quelle est la différence entre un ADL et le diagramme de composant dans UML.
5. Quel est le rôle d’un diagramme de déploiement dans UML.
6. Représenter par un schéma les couches de modélisation vues dans cours. Donner un
exemple sur chaque couche.
Exercice 2 (3pts) Contraintes OCL !
C’est quoi une contrainte OCL ?
Les contraintes OCL sont-elles impérative ou déclarative ? Justifier ?
Quelle sémantique possède les contraintes OCL ? Quel est leur rôle dans un modèle UML ?

Exercice 3 (11pts) :
a- Imaginez une classe Etudiant, disposant de 3 notes et munie d'une opération mention qui
retourne la mention de l'étudiant sous forme d'une chaîne de caractères.
Ecrivez les contraintes en utilisant let et result pour écrire la post condition de mention.
b- Quelle est la signification de cette expression ?
context Personne inv:
Personne.allInstances()->forAll(p1, p2 |
p1 <> p2 implies p1.nom <> p2.nom )

 Comment l’écrire avec isUnique ?


c- Soit l’exemple suivant :

Ecrivez la contrainte qui caractérise l'attribut dérivé carteVermeil


 Un voyageur a droit à la carte vermeil si c'est une femme de plus de 60 ans ou un
homme de plus de 65 ans.

Prof. A. Amirat Bonne chance


d- Soit l’exemple suivant avec les deux contraintes :

context C1 inv :
c2.attr2=c2.c3.attr3

context C2 inv :
attr2=c3.attr3

Les deux contraintes ci-dessus sont-elles équivalentes ? Justifier.

e- En supposant l'existence

 d'un attribut hauteur dans la classe Rectangle


 d'une méthode hauteur():Réel dans Polygone

Ecrivez un invariant dans Polygone disant que le résultat de hauteur():Réel vaut hauteur pour
les polygones qui sont des rectangles, sinon 0.

f- soit l’exemple suivant :

Ecrire les contraintes suivantes :

- Le salaire d'un agent de secrétariat est inférieur à celui de son responsable ?


- Un agent de secrétariat a une date d'embauche antérieure à la date de début de
l'encadrement (on suppose que les dates sont des entiers).

Prof. A. Amirat Bonne chance


Solution Examen
Exercice 1 (6pts) Questions de compréhension
1. Quel sont les concepts de bases dans un diagramme de temps ? Pour quelle raison ce
diagramme fait partie des diagrammes d’interactions.

Lifeline (Ligne de Vie ),


Timing Ruler (La regle du temps),
State or Condition Timeline (Etat ou Condition),
Duration Constraint (Contrainte de Durée),
Time Constraint (Contrainte de Temps),
Events (l'événement),

Diag de temps fait partie des diags d’interaction parceque il y a un échange de messages
(interaction) entre objets.

2. Définir c’est quoi un profil UML. Quels sont les éléments de base qui définissent un profil
UML.

Un profil dans le langage UML fournit un mécanisme d'extension générique pour


personnaliser les modèles UML pour des domaines et des plates-formes spécifiques. Les
mécanismes d'extension permettent d'affiner la sémantique standard de manière strictement
additive, en les empêchant de contredire la sémantique standard.

Les profils sont définis à l'aide de stéréotypes, de taged values et de contraintes appliquées
à des éléments de modèle spécifiques, tels que les classes, les attributs, les opérations et les
activités.

3. Citer les différents fragments combinés qui existent dans UML 2.0. Quelle est la différence
entre les fragments « weak sequencing » et « strict sequencing ».

La liste suivante regroupe les opérateurs d’interaction par fonctions :


– les opérateurs de choix et de boucle : alternative, option, break et loop ;
– les opérateurs contrôlant l’envoi en parallèle de messages : parallel et critical region ;
– les opérateurs contrôlant l’envoi de messages : ignore, consider, assertion et negative ;
– les opérateurs fixant l’ordre d’envoi des messages : weak sequencing , strict sequencing.
Un opérateur "weakseq" notifiera que les interactions qui s'opèrent entre des entités indépendantes
n'ont pas d'ordre particulier. Alors qu'un opérateur "strictseq" imposera l'ordre décrit sur le
diagramme.

4. Quelle est la différence entre un ADL et le diagramme de composant dans UML.

Prof. A. Amirat Bonne chance


5. Quel est le rôle d’un diagramme de déploiement dans UML.

Un diagramme de déploiement décrit la disposition physique des ressources matérielles qui


composent le système et montre la répartition des composants sur ces matériels. Chaque
ressource étant matérialisée par un nœud, le diagramme de déploiement précise comment les
composants sont répartis sur les nœuds et quelles sont les connexions entre les composants ou
les nœuds.

6. Représenter par un schéma les couches de modélisation vues dans cours. Donner un
exemple sur chaque couche.
Exercice 2 (3pts) Contraintes OCL !
– A constraint is a restriction on one or more values of (part of) an object-oriented model or
system.
– OCL constraints are declarative; They specify what must be true not what must be done
– OCL constraints have formal syntax and semantics; their interpretation is unambiguous.

– Une contrainte est une restriction sur une ou plusieurs valeur (partie de) d’un modèle
orienté objet ou un système.
– Les contraintes OCL sont déclaratives ; elles spécifient ce qui doit être vrai et non pas ce
qui doit être fait.
– Les contraintes OCL ont une syntaxe et une sémantique formelle ; leur interprétation est
non ambigüe.

Exercice 3 (11pts) :
a- Classe Etudiant

c- La signification de expression est que les instances de la classe personne sont unique.

context Personne inv:


Personne.allInstances()->isUnique(nom)

Prof. A. Amirat Bonne chance


c- Exemple du voyageur

d- Exemple de C1, C2 et C3

e- Exemple du polygone

f- Exemple de l’entreprise

Ou

Prof. A. Amirat Bonne chance


Prof. A. Amirat Bonne chance

Vous aimerez peut-être aussi