La conception d’un système logiciel ne se limite pas à l’écriture du code.
Elle repose sur une compréhension claire de son architecture, de l’organisation de ses modules et de leur déploiement sur l’infrastructure technique.
Les diagrammes UML jouent ici un rôle essentiel en permettant de visualiser la structure logicielle et sa mise en œuvre concrète dans un environnement réel.
Les QCM associés à cette thématique abordent les diagrammes de composants et de déploiement, deux outils clés pour analyser l’architecture d’une application.
Ces notions sont particulièrement importantes dans les études en informatique, les formations en génie logiciel et les concours techniques.
Elles permettent d’acquérir une vision globale du système, en reliant les choix de conception logicielle aux contraintes matérielles et organisationnelles.
Le lecteur est ainsi accompagné dans une approche structurée et professionnelle de l’architecture logicielle.
La conception d’un système logiciel ne se limite pas à l’écriture du code.
Elle repose sur une compréhension claire de son architecture, de l’organisation de ses modules et de leur déploiement sur l’infrastructure technique.
Les diagrammes UML jouent ici un rôle essentiel en permettant de visualiser la structure logicielle et sa mise en œuvre concrète dans un environnement réel.
Les QCM associés à cette thématique abordent les diagrammes de composants et de déploiement, deux outils clés pour analyser l’architecture d’une application.
Ces notions sont particulièrement importantes dans les études en informatique, les formations en génie logiciel et les concours techniques.
Elles permettent d’acquérir une vision globale du système, en reliant les choix de conception logicielle aux contraintes matérielles et organisationnelles.
Le lecteur est ainsi accompagné dans une approche structurée et professionnelle de l’architecture logicielle.
QCM
1
Corrigé
Dans un diagramme de séquence, que représente l'axe vertical ?
A. La hiérarchie des classes
B. L'écoulement du temps
C. La complexité du système
D. Le nombre d'objets actifs
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
B
Justification :
L'axe vertical représente la chronologie : les messages du haut sont envoyés avant ceux du bas.
QCM
2
Corrigé
Quel fragment combiné est utilisé pour modéliser une structure conditionnelle 'If-Then-Else' ?
A. loop
B. opt
C. alt
D. par
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
C
Justification :
Le fragment 'alt' (alternatives) définit plusieurs chemins mutuellement exclusifs selon des conditions de garde.
QCM
3
Corrigé
Que signifie graphiquement une pointe de flèche pleine (triangle rempli) sur un message ?
A. Un appel synchrone
B. Un message de retour
C. Un message asynchrone
D. Une création d'objet
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
A
Justification :
La pointe pleine indique que l'émetteur attend la fin du traitement par le récepteur avant de continuer.
QCM
4
Corrigé
Comment l'ordre des messages est-il déterminé dans un diagramme de communication ?
A. Par la position de gauche à droite
B. Par la couleur des flèches
C. Par une numérotation séquentielle (1, 1.1, 2...)
D. Par la taille des boîtes d'objets
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
C
Justification :
Le diagramme de communication est spatial ; il utilise des numéros pour restituer l'ordre chronologique des échanges.
QCM
5
Corrigé
Que représente le rectangle étroit placé sur une ligne de vie ?
A. Une erreur système
B. Le focus de contrôle (barre d'activation)
C. La destruction de l'instance
D. Un changement de classe
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
B
Justification :
La barre d'activation indique la période pendant laquelle un objet effectue une opération ou attend un retour.
QCM
6
Corrigé
Quelle est la fonction du fragment 'opt' ?
A. Répéter une action
B. Référencer un autre diagramme
C. Exécuter des messages en parallèle
D. Indiquer un comportement optionnel (If simple)
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
D
Justification :
Le fragment 'opt' entoure une séquence qui ne s'exécute que si une condition spécifique est vraie.
QCM
7
Corrigé
Quel symbole marque la destruction d'un objet en UML ?
A. Une croix (X) à la fin de la ligne de vie
B. Un cercle rouge
C. Un carré plein
D. Une flèche pointillée vers le haut
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
A
Justification :
La croix (X) indique la fin de vie de l'instance de l'objet dans le scénario modélisé.
QCM
8
Corrigé
Comment appelle-t-on un message qu'un objet s'envoie à lui-même ?
A. Un message circulaire
B. Un message réflexif
C. Un message récursif
D. Un message miroir
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
B
Justification :
Un message réflexif représente l'invocation d'une opération interne sur la même instance.
QCM
9
Corrigé
Que signifie une flèche avec une pointe ouverte (simple trait en chevron) ?
A. Un message synchrone
B. Un message de retour
C. Une erreur de connexion
D. Un message asynchrone
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
D
Justification :
Une pointe ouverte indique que l'émetteur n'attend pas de réponse avant de poursuivre son exécution.
QCM
10
Corrigé
Dans '1.2.1 : message()', que signifie le premier '1' ?
A. Le numéro de l'interaction parente
B. La version du logiciel
C. Le nombre de paramètres
D. L'identifiant de l'objet
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
A
Justification :
La numérotation hiérarchique montre l'imbrication (ex: 1.2 est un sous-appel déclenché par le message 1).
QCM
11
Corrigé
Quel fragment permet de modéliser des exécutions simultanées ?
A. loop
B. par
C. alt
D. break
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
B
Justification :
Le fragment 'par' (parallel) définit des sections qui s'exécutent en même temps sans ordre imposé.
QCM
12
Corrigé
Comment représente-t-on un message de retour après un appel synchrone ?
A. Une flèche pleine
B. Une ligne pointillée avec une flèche ouverte
C. Un double trait
D. Un trait rouge
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
B
Justification :
La ligne pointillée indique que le contrôle revient à l'appelant une fois l'opération terminée.
QCM
13
Corrigé
Que signifie le stéréotype «create» sur une flèche de message ?
A. L'instanciation d'un nouvel objet
B. L'ajout d'une ligne de code
C. La création d'une base de données
D. Le redémarrage du système
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
A
Justification :
Ce message pointe directement vers la boîte d'un objet pour indiquer sa création durant la séquence.
QCM
14
Corrigé
Quelle est la principale différence entre le diagramme de Séquence et de Communication ?
A. L'un utilise Java, l'autre C++
B. Séquence est statique, Communication est dynamique
C. Séquence insiste sur le temps, Communication sur les liens structurels
D. Seul le diagramme de séquence autorise les acteurs
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
C
Justification :
Ils sont sémantiquement proches, mais l'un privilégie la chronologie et l'autre la topologie des objets.
QCM
15
Corrigé
Quel fragment est utilisé pour sortir prématurément d'une interaction en cas d'erreur ?
A. opt
B. break
C. alt
D. ref
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
B
Justification :
Le fragment 'break' modélise un scénario d'exception qui interrompt le flux normal du diagramme.
QCM
16
Corrigé
Dans un diagramme de communication, que représente une ligne entre deux objets ?
A. Un héritage
B. Un lien (instance d'une association)
C. Un câble réseau physique
D. Un dossier commun
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
B
Justification :
La ligne représente le support (link) sur lequel circulent les messages entre les instances d'objets.
QCM
17
Corrigé
Que signifie le fragment 'loop' ?
A. Une erreur infinie
B. Une itération (répétition)
C. Un choix entre deux messages
D. Une synchronisation réseau
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
B
Justification :
Il entoure les messages qui doivent être répétés tant qu'une condition de boucle est remplie.
QCM
18
Corrigé
Un acteur peut-il apparaître dans un diagramme de séquence ?
A. Oui, il est souvent l'initiateur de la séquence
B. Non, jamais
C. Seulement s'il est un robot
D. Uniquement dans les diagrammes de cas d'utilisation
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
A
Justification :
L'acteur possède sa propre ligne de vie pour montrer comment il interagit avec les objets du système.
QCM
19
Corrigé
Que permet le fragment 'ref' ?
A. Référencer un attribut de classe
B. Inclure un autre diagramme de séquence (réutilisation)
C. Rafraîchir la page
D. Refuser un message
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
B
Justification :
Cela permet de factoriser des interactions complexes définies dans d'autres diagrammes.
QCM
20
Corrigé
Qu'est-ce qu'une condition de garde ?
A. Un système de sécurité
B. Le nom du serveur
C. Une expression booléenne [ ] conditionnant l'envoi d'un message
D. Une méthode privée
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
C
Justification :
Si la condition entre crochets est fausse, le message ou le fragment n'est pas exécuté.
QCM
21
Corrigé
Comment représente-t-on un message dont le récepteur n'est pas précisé ?
A. Une flèche barrée
B. Une flèche pointant vers un petit cercle noir (Lost message)
C. Une ligne rouge
D. Il n'est pas représenté
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
B
Justification :
Le 'Lost message' indique qu'un message est envoyé vers une destination hors du périmètre du diagramme.
QCM
22
Corrigé
Dans quel diagramme utilise-t-on une étoile (*) devant un numéro de message ?
A. Diagramme de communication
B. Diagramme de classes
C. Diagramme d'objets
D. Diagramme de déploiement
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
A
Justification :
L'étoile indique une itération (le message est répété plusieurs fois) dans un diagramme de communication.
QCM
23
Corrigé
Que signifie graphiquement une boîte d'objet décalée vers le bas du diagramme ?
A. Une erreur de dessin
B. Un objet de priorité basse
C. La création de l'objet au cours de l'exécution
D. La fin du programme
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
C
Justification :
Le décalage vertical montre que l'instance n'existait pas au début de la séquence.
QCM
24
Corrigé
Le focus de contrôle est-il obligatoire sur chaque ligne de vie ?
A. Oui, toujours
B. Seulement pour les acteurs
C. Seulement pour les bases de données
D. Non, il est optionnel mais recommandé pour la clarté
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
D
Justification :
Il peut être omis pour simplifier le diagramme, bien qu'il aide à comprendre l'activité réelle des objets.
QCM
25
Corrigé
Quel était le nom du diagramme de communication en UML 1.x ?
A. Diagramme de collaboration
B. Diagramme de flux
C. Diagramme de réseau
D. Diagramme de liens
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
A
Justification :
UML 2.0 a renommé le diagramme de collaboration en diagramme de communication.
QCM
26
Corrigé
Comment note-t-on un message asynchrone avec retour ?
A. C'est une contradiction sémantique
B. On utilise deux flèches simples
C. On utilise un 'callback' (message séparé)
D. On utilise une flèche pleine
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
C
Justification :
En asynchrone, le retour ne se fait pas par la flèche de retour standard mais par un nouvel appel ultérieur.
QCM
27
Corrigé
Que représente un cadre (Frame) avec le libellé 'sd' ?
A. Une zone de texte
B. L'enveloppe formelle du Sequence Diagram
C. Une capture d'écran
D. Une bordure décorative
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
B
Justification :
Le cadre 'sd' permet de nommer et délimiter l'interaction modélisée.
QCM
28
Corrigé
Où place-t-on l'objet qui initie l'interaction dans un diagramme de séquence ?
A. Tout à droite
B. Tout à gauche
C. Au milieu
D. En bas
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
B
Justification :
Par convention de lecture, l'initiateur est placé à gauche pour que les messages partent vers la droite.
QCM
29
Corrigé
Peut-on modéliser une 'auto-destruction' d'objet ?
A. Non
B. Oui, via un message réflexif suivi d'une croix (X)
C. Seulement avec une note textuelle
D. Seulement en langage C++
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
B
Justification :
Un objet peut s'envoyer un message qui déclenche sa propre suppression dans le scénario.
QCM
30
Corrigé
Un diagramme de séquence peut-il montrer des paramètres de méthode ?
A. Non
B. Oui, à l'intérieur des parenthèses sur la flèche
C. Seulement si ce sont des entiers
D. Seulement dans une note attachée
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
B
Justification :
On peut préciser les données transmises, par exemple : 'calculer(montant, TVA)'.
Mots & Définitions
Consultez les définitions des termes importants.
Le diagramme de composants représente l’organisation logique des modules logiciels d’un système. Il montre comment les composants sont structurés et reliés entre eux. Il aide à comprendre l’architecture globale d’une application.
Un composant logiciel est une unité modulaire qui regroupe des fonctionnalités cohérentes. Il possède des interfaces bien définies pour interagir avec d’autres composants. Cette approche favorise la réutilisation et la maintenabilité.
Une interface fournie décrit les services qu’un composant met à disposition des autres. Elle définit ce que le composant sait faire. Elle facilite la communication entre modules sans exposer les détails internes.
Une interface requise représente les services dont un composant a besoin pour fonctionner. Elle exprime une dépendance vis-à-vis d’un autre composant. Cela permet de clarifier les relations entre modules.
La dépendance entre composants indique qu’un composant utilise les services d’un autre. Elle met en évidence les liens fonctionnels au sein de l’architecture. Elle aide à anticiper l’impact des modifications.
Le diagramme de déploiement montre comment les composants logiciels sont installés sur des ressources matérielles. Il relie la partie logicielle à l’infrastructure physique. Il est essentiel pour comprendre l’architecture technique finale.
Un nœud représente une ressource matérielle ou un environnement d’exécution. Il peut s’agir d’un serveur, d’un poste client ou d’un appareil. Les composants sont déployés sur ces nœuds.
Un artefact désigne un élément concret issu du développement, comme un fichier exécutable ou une bibliothèque. Il matérialise le résultat du travail logiciel. Les artefacts sont déployés sur des nœuds.
Un lien de communication représente une connexion entre deux nœuds. Il symbolise un canal d’échange de données. Cela permet de visualiser les interactions réseau.
L’architecture logicielle décrit la structure globale d’un système et l’organisation de ses composants. Elle définit les grandes décisions de conception. Une bonne architecture facilite l’évolution et la maintenance.
Le couplage mesure le degré de dépendance entre les composants d’un système. Un couplage faible est recherché pour limiter les impacts des changements. Il améliore la flexibilité de l’architecture.
La cohésion indique à quel point les éléments d’un composant sont liés entre eux. Une forte cohésion signifie que le composant a une responsabilité claire. Cela rend le système plus lisible et plus robuste.
À propos de ce QCM
Ces QCM permettent d’explorer les bases de l’architecture logicielle à travers la modélisation UML.
Le diagramme de composants met en lumière la manière dont une application est découpée en modules fonctionnels.
Chaque composant regroupe des responsabilités précises et communique avec les autres via des interfaces clairement définies.
Cette représentation favorise une conception modulaire, plus facile à comprendre et à faire évoluer.
Le diagramme de déploiement complète cette vision en introduisant la dimension matérielle.
Il montre comment les composants et les artefacts logiciels sont installés sur des nœuds physiques ou virtuels, tels que des serveurs ou des postes clients.
Cette approche est essentielle pour anticiper les contraintes techniques, comme les performances, la sécurité ou la répartition des charges.
Les notions de dépendance, de couplage et de cohésion sont également au cœur de ces QCM.
Elles permettent d’évaluer la qualité d’une architecture et d’identifier les points sensibles d’un système.
Une bonne compréhension de ces concepts aide à concevoir des applications plus robustes, maintenables et évolutives.
En s’entraînant avec ces QCM, l’apprenant développe une capacité d’analyse architecturale solide.
Il améliore sa compréhension théorique, affine son raisonnement et renforce son aptitude à évaluer et concevoir des systèmes complexes.
Cette pratique constitue une préparation efficace aux examens, aux concours et aux projets professionnels.
Conclusion
Ces QCM offrent une approche pédagogique complète pour comprendre et maîtriser l’architecture logicielle en UML.
Ils permettent de relier la structure interne d’une application à son déploiement concret sur l’infrastructure technique.
En s’exerçant régulièrement, l’utilisateur consolide ses connaissances, développe une vision globale des systèmes et gagne en assurance dans ses choix de conception.
Cette progression continue est un atout majeur pour réussir les évaluations et aborder les projets informatiques avec rigueur, méthode et professionnalisme.