QCMUP.COM

Liste QCM UML Corrigé – Partie 10

Entraînez-vous avec des questions corrigées, progressez étape par étape, puis consolidez vos notions grâce aux définitions et explications.

30 questions Réponses expliquées Réviser → Pratiquer
Liste QCM UML Corrigé – Partie 10 – UML

La modélisation orientée objet ne se limite pas à la définition abstraite des classes et de leurs relations.

Elle implique également la capacité à représenter des situations concrètes, telles qu’elles existent réellement lors de l’exécution d’un système.

C’est précisément le rôle du diagramme d’objets en UML, qui complète le diagramme de classes en apportant une vision plus tangible et opérationnelle.

Les QCM associés à cette thématique permettent d’aborder cette dimension concrète de la modélisation.

Ces notions sont particulièrement importantes dans les études en informatique et lors des examens ou concours, car elles évaluent la capacité à faire le lien entre théorie et pratique.

Comprendre comment les objets existent, interagissent et évoluent à un instant donné aide l’apprenant à mieux analyser un système, à détecter des incohérences et à raisonner de manière rigoureuse sur des structures réelles.

La modélisation orientée objet ne se limite pas à la définition abstraite des classes et de leurs relations.

Elle implique également la capacité à représenter des situations concrètes, telles qu’elles existent réellement lors de l’exécution d’un système.

C’est précisément le rôle du diagramme d’objets en UML, qui complète le diagramme de classes en apportant une vision plus tangible et opérationnelle.

Les QCM associés à cette thématique permettent d’aborder cette dimension concrète de la modélisation.

Ces notions sont particulièrement importantes dans les études en informatique et lors des examens ou concours, car elles évaluent la capacité à faire le lien entre théorie et pratique.

Comprendre comment les objets existent, interagissent et évoluent à un instant donné aide l’apprenant à mieux analyser un système, à détecter des incohérences et à raisonner de manière rigoureuse sur des structures réelles.

QCM 1 Corrigé

Quelle est la fonction principale d'un Profil UML ?

A. Définir une nouvelle version de la méta-norme UML
B. Étendre UML pour un domaine spécifique (ex: Temps Réel, Aérospatial)
C. Remplacer le diagramme de classes par du code source
D. Générer automatiquement des tests unitaires
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : B

Justification :
Un profil permet d'adapter UML à un contexte métier sans modifier le méta-modèle de base.

QCM 2 Corrigé

En OCL (Object Constraint Language), quel opérateur permet de vérifier qu'une collection ne contient aucun doublon ?

A. isUnique()
B. allInstances()
C. asSet()
D. excludesAll()
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : A

Justification :
L'opération 'isUnique' retourne vrai si chaque élément de la collection est distinct.

QCM 3 Corrigé

Dans le méta-modèle UML, de quel élément hérite le concept de 'Stéréotype' ?

A. Interface
B. Comment
C. Class
D. Association
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : C

Justification :
Un stéréotype est techniquement une sorte de classe qui s'applique à des métaclasses.

QCM 4 Corrigé

Que signifie la contrainte OCL suivante : 'self.age >= 18' ?

A. L'âge est une constante fixée à 18
B. L'attribut age doit être supérieur ou égal à 18 pour l'instance courante
C. Le système doit ajouter 18 à l'attribut age
D. Il existe au moins 18 instances de la classe
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : B

Justification :
Le mot-clé 'self' réfère à l'instance sur laquelle l'invariant est appliqué.

QCM 5 Corrigé

Quelle est la différence entre un Tagged Value (valeur étiquetée) et un attribut de classe classique ?

A. La valeur étiquetée appartient à l'instance, pas à la classe
B. La valeur étiquetée ne peut être qu'une chaîne de caractères
C. La valeur étiquetée est une propriété associée à un stéréotype pour étendre un élément de modèle
D. Il n'y a aucune différence technique
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : C

Justification :
Les Tagged Values permettent de stocker des métadonnées spécifiques au profil utilisé.

QCM 6 Corrigé

Dans un diagramme de structure composite, à quoi sert un 'Port' ?

A. À définir un point d'interaction entre l'intérieur d'un classificateur et son environnement
B. À indiquer le protocole réseau utilisé (ex: TCP 80)
C. À stocker des objets de manière persistante
D. À remplacer les attributs privés
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : A

Justification :
Un port isole l'implémentation interne en exposant uniquement des interfaces spécifiques.

QCM 7 Corrigé

Quelle est la syntaxe correcte pour une précondition en OCL ?

A. context Operation::run() pre: x > 0
B. context Class pre run(): x > 0
C. if Operation() then x > 0
D. inv pre_condition: x > 0
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : A

Justification :
La syntaxe 'pre:' définit une condition qui doit être vraie avant l'exécution d'une opération.

QCM 8 Corrigé

Que représente le concept de 'Méta-modèle' (Niveau M2 dans la hiérarchie MOF) ?

A. Le code Java généré
B. Les instances d'objets en mémoire
C. Le langage définissant comment construire des modèles UML
D. Un diagramme de déploiement cloud
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : C

Justification :
Le niveau M2 définit la structure du langage UML lui-même (concepts de Classe, Attribut, etc.).

QCM 9 Corrigé

Comment modélise-t-on graphiquement l'application d'un stéréotype sur un élément ?

A. Le nom de l'élément est souligné deux fois
B. Le nom du stéréotype est placé entre guillemets (« ») au-dessus du nom de l'élément
C. L'élément change de couleur
D. Une flèche pointillée pointe vers le profil
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : B

Justification :
Les guillemets français (guillemets) sont la notation standard pour les stéréotypes.

QCM 10 Corrigé

En OCL, que retourne l'expression 'Collection->isEmpty()' ?

A. Un entier représentant la taille
B. La collection elle-même mais vidée
C. Une erreur si la collection est nulle
D. Un booléen vrai si la collection ne contient aucun élément
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : D

Justification :
isEmpty() est une opération de collection retournant un résultat booléen.

QCM 11 Corrigé

Quel est le rôle d'une 'Contrainte' ({constraint}) en UML pur ?

A. Forcer le compilateur à optimiser le code
B. Définir une condition ou une règle sémantique qui doit être respectée par le modèle
C. Empêcher la suppression d'un diagramme
D. Limiter le nombre d'utilisateurs du système
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : B

Justification :
Les contraintes étendent la sémantique du modèle au-delà de ce que le graphique peut exprimer.

QCM 12 Corrigé

Dans le cadre des Profils, qu'est-ce qu'une 'Extension' ?

A. Une relation entre un stéréotype et une métaclasse
B. Le téléchargement d'un plugin pour l'outil de modélisation
C. Une flèche d'héritage entre deux classes
D. Un fichier .exe généré par le modèle
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : A

Justification :
L'extension est une sorte d'association spécifique liant le stéréotype au concept qu'il enrichit.

QCM 13 Corrigé

Comment accède-t-on à toutes les instances d'une classe en OCL ?

A. Class.all()
B. Class.select(all)
C. Class.allInstances()
D. Class.getInstances
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : C

Justification :
allInstances() est une propriété méta-niveau retournant l'ensemble des instances existantes d'un type.

QCM 14 Corrigé

Que signifie le stéréotype standard « focus » ?

A. L'élément est le centre du diagramme
B. La classe gère la logique métier principale d'un composant
C. L'élément doit être zoomé par l'outil
D. La classe est temporaire
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : B

Justification :
Il désigne une classe qui définit les services essentiels offerts par un composant.

QCM 15 Corrigé

Quelle opération OCL permet de transformer une collection de collections en une seule collection ?

A. flatten()
B. size()
C. union()
D. collect()
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : A

Justification :
L'opération flatten() 'aplatit' les structures imbriquées.

QCM 16 Corrigé

Dans un diagramme de séquence expert, que signifie le fragment combiné 'ignore' ?

A. Le message ne sera jamais envoyé
B. L'outil de modélisation doit ignorer cette partie
C. Les messages listés peuvent apparaître mais ne sont pas pertinents pour ce scénario
D. Le récepteur ignore le message à la réception
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : C

Justification :
Il spécifie des messages qui ne sont pas considérés comme significatifs dans l'analyse courante.

QCM 17 Corrigé

Qu'est-ce qu'un 'PowerType' en modélisation avancée ?

A. Un type de donnée haute performance
B. Une classe dont les instances sont des sous-classes d'une autre classe
C. Une classe qui hérite de plusieurs parents
D. Un stéréotype appliqué à une interface
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : B

Justification :
C'est un concept avancé pour modéliser la classification de classes (méta-modélisation).

QCM 18 Corrigé

En OCL, quelle est la différence entre 'collect' et 'select' ?

A. Collect est plus rapide
B. Collect extrait des attributs, Select filtre les objets selon une condition
C. Select est utilisé uniquement sur les listes
D. Il n'y a aucune différence
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : B

Justification :
Collect projette des données (map), Select filtre les éléments (filter).

QCM 19 Corrigé

Que permet de définir le stéréotype « auxiliary » ?

A. Une classe d'aide qui soutient la logique d'une classe 'focus'
B. Une batterie de secours pour le serveur
C. Une classe qui sera supprimée à la compilation
D. Une interface utilisateur secondaire
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : A

Justification :
Il identifie les classes de support dans une architecture de composants.

QCM 20 Corrigé

Dans la hiérarchie OMG, qu'est-ce que le niveau M3 ?

A. UML
B. Java / C#
C. Le modèle utilisateur
D. MOF (Meta-Object Facility)
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : D

Justification :
MOF est le méta-méta-modèle qui permet de définir UML (M2).

QCM 21 Corrigé

Que signifie l'opérateur '->' en OCL ?

A. Accéder à un attribut d'objet
B. Appeler une opération sur une collection
C. Indiquer une flèche d'héritage
D. Définir un pointeur C++
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : B

Justification :
Le point (.) accède aux propriétés d'objet, la flèche (->) aux opérations de collection.

QCM 22 Corrigé

Quelle est l'utilité du fragment combiné 'strict' ?

A. Interdire les messages facultatifs
B. Vérifier la syntaxe du diagramme
C. Imposer un ordre séquentiel strict à tous les messages du bloc
D. Empêcher l'héritage multiple
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : C

Justification :
En UML standard, l'ordre est partiel. 'Strict' impose une chronologie totale.

QCM 23 Corrigé

Qu'est-ce qu'une 'OpaqueAction' dans un diagramme d'activité ?

A. Une action dont l'implémentation est définie dans un langage externe à UML
B. Une action invisible pour certains utilisateurs
C. Une action qui ne fait rien
D. Une erreur de modélisation
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : A

Justification :
Elle permet d'insérer du code spécifique (ex: C++, Python) directement dans l'activité.

QCM 24 Corrigé

En OCL, comment exprime-t-on 'pour tout élément de la collection' ?

A. collection->exists()
B. collection->forAll()
C. collection->each()
D. collection->one()
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : B

Justification :
forAll est l'itérateur universel en OCL.

QCM 25 Corrigé

Que définit un 'Template' UML ?

A. Une classe générique paramétrée (ex: List<T>)
B. Un modèle de document Word
C. Le design visuel des diagrammes
D. Une base de données vide
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : A

Justification :
Les templates permettent la programmation générique au niveau modélisation.

QCM 26 Corrigé

Quel est le but du stéréotype « substitute » ?

A. Remplacer un acteur par un autre
B. Indiquer qu'une classe peut en remplacer une autre tout en respectant le contrat
C. Supprimer un lien d'association
D. Utiliser une police de caractère de remplacement
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : B

Justification :
Il lie une classe de substitution à la classe qu'elle remplace dans une architecture.

QCM 27 Corrigé

Que signifie l'invariant OCL : 'self.name.oclIsUndefined() = false' ?

A. Le nom doit être vide
B. Le nom ne doit pas contenir de chiffres
C. L'attribut name doit obligatoirement avoir une valeur définie
D. Le nom est facultatif
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : C

Justification :
oclIsUndefined() vérifie si une valeur est nulle ou non définie.

QCM 28 Corrigé

Dans un diagramme d'états, qu'est-ce qu'un 'État orthogonal' ?

A. Un état sans transitions
B. Un état qui contient plusieurs régions actives en parallèle
C. Un état à angle droit
D. L'état final du système
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : B

Justification :
L'orthogonalité permet de modéliser des comportements simultanés au sein d'un même état.

QCM 29 Corrigé

Quelle est l'utilité du concept de 'PrimitiveType' dans un profil ?

A. Définir des types de données de base non structurés (ex: String, Integer)
B. Modéliser des classes sans méthodes
C. Créer des objets jetables
D. Désigner les classes parentes
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : A

Justification :
Les types primitifs sont les briques de base pour définir les attributs.

QCM 30 Corrigé

En OCL, que fait l'opérateur 'including(object)' ?

A. Il modifie la base de données
B. Il affiche l'objet à l'écran
C. Il supprime l'objet de la collection
D. Il retourne une nouvelle collection contenant l'objet spécifié
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : D

Justification :
OCL étant un langage sans effets de bord, including() crée une nouvelle collection enrichie.

Mots & Définitions
Consultez les définitions des termes importants.

Le diagramme d’objets représente des instances concrètes de classes à un moment précis. Il permet de visualiser l’état réel des objets et leurs liens en mémoire. C’est une photographie instantanée du système.

Un objet est une instance d’une classe avec des valeurs réelles pour ses attributs. Il représente un élément concret du système. Les objets interagissent entre eux pour assurer le fonctionnement de l’application.

Une instance de classe est la concrétisation d’un modèle abstrait défini par une classe. Elle possède une identité propre et un état spécifique. Plusieurs instances peuvent exister à partir d’une même classe.

Un lien est la relation existante entre deux objets dans un diagramme d’objets. Il correspond à une association concrète en mémoire. Il permet de comprendre comment les objets sont connectés.

La valeur d’attribut correspond aux données réelles contenues dans un objet. Elle reflète l’état de l’objet à un instant donné. Ces valeurs rendent le modèle concret et observable.

La structure d’objets décrit l’organisation des objets et de leurs relations à un moment précis. Elle permet de vérifier la cohérence d’un modèle conceptuel. Elle est utile pour l’analyse et le débogage.

Une association concrète relie des objets réels plutôt que des classes abstraites. Elle montre comment les instances sont effectivement liées. Elle traduit l’application pratique du modèle.

Un instantané du système est une représentation figée de l’état des objets à un moment donné. Il permet d’analyser une situation précise. C’est le principe fondamental du diagramme d’objets.

La cohérence du modèle désigne l’adéquation entre la conception théorique et la réalité des objets. Elle garantit que le système fonctionne comme prévu. Le diagramme d’objets aide à la vérifier.

À propos de ce QCM

Cette série de QCM se concentre sur l’utilisation du diagramme d’objets pour représenter l’état concret d’un système à un moment précis.

Contrairement aux diagrammes plus abstraits, ce type de diagramme permet de visualiser des objets réels, avec leurs valeurs d’attributs et leurs relations effectives.

Il constitue ainsi un outil précieux pour passer de la conception à la compréhension opérationnelle.

Les notions d’objets et d’instances occupent une place centrale.

Chaque objet est issu d’une classe et possède un état propre, matérialisé par des valeurs précises.

Les liens entre objets traduisent les associations réellement actives dans le système, ce qui permet de vérifier que les relations définies au niveau conceptuel sont correctement utilisées.

Le diagramme d’objets est également très utile pour analyser des structures complexes ou récursives.

Il aide à visualiser la disposition des objets en mémoire et à comprendre les dépendances concrètes entre eux.

Cette approche facilite la détection d’erreurs de conception ou de modélisation avant même l’implémentation complète.

En travaillant ces QCM, l’apprenant développe une compétence essentielle : relier les modèles UML abstraits à des situations concrètes.

Il améliore sa compréhension théorique, renforce son raisonnement logique et s’exerce à l’auto-évaluation.

Cette pratique est particulièrement bénéfique pour la préparation aux examens, aux concours et aux projets informatiques réels.

Conclusion

Ces QCM offrent une approche pédagogique efficace pour maîtriser le diagramme d’objets en UML.

Ils permettent de comprendre comment les classes prennent forme à travers des objets réels et comment ces objets interagissent à un instant donné.

En s’entraînant régulièrement, l’utilisateur consolide ses connaissances, affine son analyse et renforce sa capacité à relier théorie et pratique.

Cette progression continue constitue un atout majeur pour réussir les évaluations et concevoir des systèmes logiciels cohérents, fiables et bien structurés.