Ce document rassemble le sujet et les éléments de correction d'un examen final universitaire consacré à l'architecture logicielle et à la conception avancée. Conçu pour évaluer les connaissances théoriques et pratiques des étudiants, il aborde les notions fondamentales de modélisation, de patrons de conception, de composants et de gestion de projets d'ingénierie logicielle.
Le sujet provient de l'École Polytechnique de Montréal, plus précisément du Département de génie informatique et génie logiciel. Rédigé en français, ce support d'évaluation s'adresse aux étudiants de niveau universitaire suivant l'enseignement dispensé par l'enseignant Zéphyrin Soh. L'épreuve est encadrée par des consignes strictes interdisant toute documentation extérieure ou calculatrice, et exige des réponses précises rédigées directement dans les espaces dédiés.
L'évaluation est structurée en plusieurs parties couvrant divers aspects de la discipline :
Ce type de document constitue un support d'entraînement pertinent pour tester ses compétences en conception logicielle avancée. Les étudiants peuvent s'en servir pour s'exercer dans des conditions proches d'une évaluation réelle, en s'attardant particulièrement sur la partie de résolution de problèmes qui demande une réflexion méthodologique approfondie sur la refactorisation et l'évolution des systèmes existants.
Ce sujet d'examen provient de l'École Polytechnique de Montréal, au Québec, émis par le Département de génie informatique et génie logiciel.
L'examen évalue les définitions conceptuelles, les modèles de composants comme Fractal, la programmation par aspects, la détection de défauts de conception, l'analyse de code Java et la conduite de refactorisation architecturale sur un cas concret.
Ce sujet s'adresse principalement aux étudiants inscrits au cours de deuxième cycle ou de fin de baccalauréat en génie logiciel portant sur l'architecture et la conception avancée.
Quel composant du modèle Fractal est considéré par défaut comme le premier pouvant instancier d'autres composants ?
Réponse correcte : Le BootStrap Component
Explication : Le BootStrap Component de Fractal est explicitement défini comme le premier composant par défaut capable d'instancier d'autres composants au sein du modèle.
Parmi les propositions suivantes, laquelle désigne un type d'interconnexion possible entre une bibliothèque et le reste d'un programme ?
Réponse correcte : Le chaînage des liens (linking)
Explication : Le chaînage des liens fait partie des cinq types d'interconnexions recensés entre une bibliothèque ou un cadriciel et le reste d'un programme.
Quelle est la première étape mentionnée dans la démarche de détection et de correction des défauts de conception ?
Réponse correcte : Spécifier les règles pour le défaut
Explication : La méthodologie débute par la spécification des règles caractérisant le défaut avant d'analyser le code et de calculer les métriques associées.