Maîtrise professionnelle en Génie informatique Option Génie logiciel Le programme de maîtrise a pour but d'approfondir les connaissances technologiques et scientifiques en génie logiciel. Le profil professionnel favorise le développement de la composante professionnelle de la formation du candidat par l'approfondissement des connaissances et l'acquisition d'une spécialité. Voir aussi Maîtrise recherche en Génie informatique- Option Génie logiciel Ettore MERLO gigl-es@polymtl.ca 514-340-4711, poste 5758 Le programme de maîtrise professionnelle en génie informatique, option Génie logiciel conduit à l'obtention du grade de Maîtrise en ingénierie (M.Ing.). Conditions d'admission Avant de déposer votre demande d’admission pour ce programme, assurez-vous de répondre aux conditions d’admission et de respecter la date limite pour le dépôt de votre demande. Le programme comporte 45 crédits se répartissant comme suit: Crédits Min. Crédits Max. Cours de la série 4000 et moins 0 6 Cours de cycles supérieures Dont au moins 15 crédits doivent être choisis parmi les cours spécifiés à la section Liste des cours. 24 39 Projet ou stage L’étudiant désirant effectuer un stage industriel dans le cadre de son programme doit établir, en collaboration avec un professeur du département, des liens avec une entreprise pour obtenir son stage. Le stage doit être fait sous la co-supervision d’un professionnel de l’entreprise et d’un professeur du département. Le contenu du stage doit être approuvé par le responsable du programme au moins un mois avant le début du stage. L'étudiant peut prendre des projets et/ou un stage pour un maximum de 15 crédits. 6 15 Légende Projet Offert à l'université de Montréal Cours des cycles supérieurs Cours de jour Cours de soir Cours en ligne Certificats et microprogrammes de 1 er cycle Baccalauréat (formation d'ingénieur) Études supérieures Liste des cours Ou un cours au choix avec l'approbation du directeur ou de la directrice des études. Note Sigle Titre Crédits Trimestre Période INF8008 Prétraitement de données 1 Hiver 2026 Cours de jour Nombre de crédits: 1 (1- 1- 1) Les chiffres indiqués entre parenthèses sous le sigle du cours, par exemple (3 - 2 - 4), constituent le triplet horaire. Le premier chiffre est le nombre d'heures de cours théorique par semaine (les périodes de cours durent 50 minutes). Le second chiffre est le nombre d'heures de travaux dirigés (exercices) ou laboratoire, par semaine. (Note : certains cours ont un triplet (3 - 1.5 - 4.5). Dans ce cas, les 1,5 heure par semaine sont des laboratoires qui durent 3 heures mais qui ont lieu toutes les deux semaines. À Polytechnique, on parle alors de laboratoires bi-hebdomadaires). Le troisième chiffre est un nombre d'heures estimé que l'étudiant doit investir de façon personnelle par semaine pour réussir son cours. Département: Génies informatique & logiciel Préalables(s): 60 crédits pour les étudiants du baccalauréat. Corequis: Trimestre: Hiver 2026 Période: Notes: Responsable(s): Michel Desmarais Description Prétaitement de données pour les applications orientées données. Environnement interactif de développement en Python. Structures de données pour l'analyse numérique et transformations. Graphiques et statistiques descriptives. Échantillonnage, épuration et traitement des données manquantes. Normalisation. Détails LOG6302A Analyse d'appli. persp. de cyber-sécurité 3 Hiver 2026 Cours de jour Nombre de crédits: 3 (3- 1.5- 4.5) Les chiffres indiqués entre parenthèses sous le sigle du cours, par exemple (3 - 2 - 4), constituent le triplet horaire. Le premier chiffre est le nombre d'heures de cours théorique par semaine (les périodes de cours durent 50 minutes). Le second chiffre est le nombre d'heures de travaux dirigés (exercices) ou laboratoire, par semaine. (Note : certains cours ont un triplet (3 - 1.5 - 4.5). Dans ce cas, les 1,5 heure par semaine sont des laboratoires qui durent 3 heures mais qui ont lieu toutes les deux semaines. À Polytechnique, on parle alors de laboratoires bi-hebdomadaires). Le troisième chiffre est un nombre d'heures estimé que l'étudiant doit investir de façon personnelle par semaine pour réussir son cours. Département: Génies informatique & logiciel Préalables(s): Corequis: Trimestre: Hiver 2026 Période: Notes: Responsable(s): Ettore Merlo Description Analyse syntaxique et traduction dirigée par la syntaxe. Analyse de flux. Analyse de dépendances. Analyses dynamiques et instrumentation du code. Sécurité des applications. Détection et protection des vulnérabilités par flux de données ("SQLI", "XSS", analyse de "teint", dépassement de tampon). Détection et protection des vulnérabilités par flux de contrôle (contrôles d'accès basé sur des privilèges). Evolution de logiciels et vérifications de sécurité. Analyse de similitude pour la sécurité (protection de la propriété intellectuelle et détection du plagiat, analyse de logiciels malveillants). Sujets spéciaux (audits et certification, intelligence artificielle, traitement de la langue naturelle, sécurité de drones et de robots). Détails LOG6306 Patrons pour la compréhension de programme 3 Automne 2025 Cours de jour Nombre de crédits: 3 (3- 1.5- 4.5) Les chiffres indiqués entre parenthèses sous le sigle du cours, par exemple (3 - 2 - 4), constituent le triplet horaire. Le premier chiffre est le nombre d'heures de cours théorique par semaine (les périodes de cours durent 50 minutes). Le second chiffre est le nombre d'heures de travaux dirigés (exercices) ou laboratoire, par semaine. (Note : certains cours ont un triplet (3 - 1.5 - 4.5). Dans ce cas, les 1,5 heure par semaine sont des laboratoires qui durent 3 heures mais qui ont lieu toutes les deux semaines. À Polytechnique, on parle alors de laboratoires bi-hebdomadaires). Le troisième chiffre est un nombre d'heures estimé que l'étudiant doit investir de façon personnelle par semaine pour réussir son cours. Département: Génies informatique & logiciel Préalables(s): Corequis: Trimestre: Automne 2025 Période: Notes: Responsable(s): Foutse Khomh Description Introduction aux méthodes empiriques en génie logiciel. Métamodélisation et mesures. Principales théories de la mesure et validation des mesures. Introduction aux études empiriques et techniques d'analyses empiriques. Principales définitions de patrons (patrons architecturaux, de conception, anti-patrons, idiomes). Principales théories liées à la compréhension de programmes et à l'utilisation de patrons. Principales méthodes d'utilisation des patrons pour le développement et la maintenance et pour faciliter la compréhension de programmes. Principales techniques d'application de patrons et d'identification d'occurrences dans divers artefacts logiciels (code source, modèles statiques, dynamiques, historiques). Impact des patrons sur la compréhension des programmes. Détails LOG6307 Fouille de réf. pour mise en prod. logicielle 3 Nombre de crédits: 3 (3- 1.5- 4.5) Les chiffres indiqués entre parenthèses sous le sigle du cours, par exemple (3 - 2 - 4), constituent le triplet horaire. Le premier chiffre est le nombre d'heures de cours théorique par semaine (les périodes de cours durent 50 minutes). Le second chiffre est le nombre d'heures de travaux dirigés (exercices) ou laboratoire, par semaine. (Note : certains cours ont un triplet (3 - 1.5 - 4.5). Dans ce cas, les 1,5 heure par semaine sont des laboratoires qui durent 3 heures mais qui ont lieu toutes les deux semaines. À Polytechnique, on parle alors de laboratoires bi-hebdomadaires). Le troisième chiffre est un nombre d'heures estimé que l'étudiant doit investir de façon personnelle par semaine pour réussir son cours. Département: Génies informatique & logiciel Préalables(s): 80 crédits pour les étudiants au baccalauréat Corequis: Trimestre: Période: Notes: Ce cours est offert en anglais Responsable(s): À venir Site web Description Processus de la mise en production de logiciel: intégration, manufacture, tests en plusieurs étapes, emballage et livraison. Planification de la mise en production et problématiques liées. Définition et concepts de base de la fouille de référentiels logiciels. Différents types de référentiels: gestion des configurations, gestion de bogues, listes de diffusion, écosystèmes de projets et sites de collaboration. Techniques pour l'analyse empirique des référentiels: fouille de données, analyse statistique, traitement de la langue naturelle, analyse du code source et analyse manuelle. Intégration: gestion des configurations, impact des patrons de branchement sur la qualité du logiciel, patrons d'intégration dans des projets à grande échelle. Manufacture: maintenance et vérification de la manufacture, gestion de la variabilité logicielle. Tests en plusieurs étapes: prédiction de bogues, réduction/minimalisation/sélection de tests et assurance qualité en continu. Emballage: distributions de logiciels à grande échelle, provenance de code source et applications mobiles. Livraison: techniques de déploiement, magasins d'applications mobiles (« app stores ») et infonuagique. Détails Cours des cycles supérieurs LOG6307E Release Eng.App. Mining Software Repositories 3 Automne 2025 Cours de jour Nombre de crédits: 3 (3- 1.5- 4.5) Les chiffres indiqués entre parenthèses sous le sigle du cours, par exemple (3 - 2 - 4), constituent le triplet horaire. Le premier chiffre est le nombre d'heures de cours théorique par semaine (les périodes de cours durent 50 minutes). Le second chiffre est le nombre d'heures de travaux dirigés (exercices) ou laboratoire, par semaine. (Note : certains cours ont un triplet (3 - 1.5 - 4.5). Dans ce cas, les 1,5 heure par semaine sont des laboratoires qui durent 3 heures mais qui ont lieu toutes les deux semaines. À Polytechnique, on parle alors de laboratoires bi-hebdomadaires). Le troisième chiffre est un nombre d'heures estimé que l'étudiant doit investir de façon personnelle par semaine pour réussir son cours. Département: Génies informatique & logiciel Préalables(s): 80 crédits pour les étudiants au baccalauréat Corequis: Cours des cycles supérieurs Trimestre: Automne 2025 Période: Notes: Responsable(s): Zohreh Sharafi Description Software release engineering process: integration, build, multi-staged testing, deployment, release and operations. Definition and base concepts of mining software repositories. Different types of repositories: version control, bug reports, code review, mailing lists, StackOverflow, project ecosystems, collaboration platforms. Techniques for empirical analysis of repositories: data mining, statistical analysis, natural language processing, source code analysis, qualitative analysis. Integration: configuration management, branching patterns, feature toggles, merge conflicts. Build: maintenance and verification of build, build failures, continuous integration, infrastructure-as-code, software configuration. Multi-staged testing: bug prediction, test selection, continuous testing. Deployment/release: large-scale distributions, deployment/release strategies, source code provenance, app stores. Operations: log analysis, rollback. Détails LOG6308 Systèmes de recommandations 3 Hiver 2026 Cours de jour Nombre de crédits: 3 (3- 1.5- 4.5) Les chiffres indiqués entre parenthèses sous le sigle du cours, par exemple (3 - 2 - 4), constituent le triplet horaire. Le premier chiffre est le nombre d'heures de cours théorique par semaine (les périodes de cours durent 50 minutes). Le second chiffre est le nombre d'heures de travaux dirigés (exercices) ou laboratoire, par semaine. (Note : certains cours ont un triplet (3 - 1.5 - 4.5). Dans ce cas, les 1,5 heure par semaine sont des laboratoires qui durent 3 heures mais qui ont lieu toutes les deux semaines. À Polytechnique, on parle alors de laboratoires bi-hebdomadaires). Le troisième chiffre est un nombre d'heures estimé que l'étudiant doit investir de façon personnelle par semaine pour réussir son cours. Département: Génies informatique & logiciel Préalables(s): Aucun Corequis: Aucun Trimestre: Hiver 2026 Période: Notes: Responsable(s): Michel Desmarais Description Concepts et exemples d'applications des systèmes de recommandations et des filtres d'information. Modélisation des intérêts, buts et connaissances des utilisateurs. Matrices de votes, matrices termes-documents et matrices d'adjacence. Filtres collaboratifs item-item et utilisateur-utilisateur. Approches probabilistes et algorithme PageRank. Réduction de dimensions. Facteurs de confiance, transparence et sérendipité de l'information filtrée. Techniques de personnalisation en fonction de la connaissance et des actions des utilisateurs. Techniques de validation Détails Cours des cycles supérieurs LOG6309 DevOps intelligent des systèmes logiciels à grande échelle 3 Hiver 2023 Cours de jour Cours des cycles supérieurs LOG6309E Intelligent DevOps of Large-Scale Software Sy 3 Automne 2025 Cours de jour Nombre de crédits: 3 (3- 0- 6) Les chiffres indiqués entre parenthèses sous le sigle du cours, par exemple (3 - 2 - 4), constituent le triplet horaire. Le premier chiffre est le nombre d'heures de cours théorique par semaine (les périodes de cours durent 50 minutes). Le second chiffre est le nombre d'heures de travaux dirigés (exercices) ou laboratoire, par semaine. (Note : certains cours ont un triplet (3 - 1.5 - 4.5). Dans ce cas, les 1,5 heure par semaine sont des laboratoires qui durent 3 heures mais qui ont lieu toutes les deux semaines. À Polytechnique, on parle alors de laboratoires bi-hebdomadaires). Le troisième chiffre est un nombre d'heures estimé que l'étudiant doit investir de façon personnelle par semaine pour réussir son cours. Département: Génies informatique & logiciel Préalables(s): Corequis: Cours des cycles supérieurs Trimestre: Automne 2025 Période: Notes: Responsable(s): Heng Li Site web Description Modern software DevOps process. State-of-the-art DevOps research. Concepts and techniques of DevOps monitoring: logging, tracing, and performance monitoring. Concepts and techniques of DevOps data analytics: static analysis, dynamic analysis, statistical analysis, data mining. Applications of DevOps data analytics: log analytics, performance analytics, anomaly detection, failure diagnosis, incident prediction, security analytics, system configuration, and self-adaptive and self-healing systems. DevOps for machine learning applications. Détails LOG8371 Ingénierie de la qualité en logiciel 3 Hiver 2026 Cours de jour Nombre de crédits: 3 (3- 1.5- 4.5) Les chiffres indiqués entre parenthèses sous le sigle du cours, par exemple (3 - 2 - 4), constituent le triplet horaire. Le premier chiffre est le nombre d'heures de cours théorique par semaine (les périodes de cours durent 50 minutes). Le second chiffre est le nombre d'heures de travaux dirigés (exercices) ou laboratoire, par semaine. (Note : certains cours ont un triplet (3 - 1.5 - 4.5). Dans ce cas, les 1,5 heure par semaine sont des laboratoires qui durent 3 heures mais qui ont lieu toutes les deux semaines. À Polytechnique, on parle alors de laboratoires bi-hebdomadaires). Le troisième chiffre est un nombre d'heures estimé que l'étudiant doit investir de façon personnelle par semaine pour réussir son cours. Département: Génies informatique & logiciel Préalables(s): 70 crédits pour les étudiants du baccalauréat Corequis: Trimestre: Hiver 2026 Période: Notes: Responsable(s): Heng Li Description Concepts de base et définitions pertinentes en relation avec la qualité du logiciel, assurance qualité, tests, ingénierie de la qualité et planification de la qualité. Prévention des anomalies et classification des défauts. Tolérance aux fautes. Ingénierie de la fiabilité logicielle. Modèles de la qualité. Comparaison des différentes techniques d'assurance qualité. Amélioration du processus de développement logiciel. Mesure du logiciel et du processus. Identification des risques pour l'amélioration quantifiable de la qualité. Détails Cours des cycles supérieurs LOG8371E Software Quality Engineering 3 Automne 2025 Cours de jour Nombre de crédits: 3 (3- 1.5- 4.5) Les chiffres indiqués entre parenthèses sous le sigle du cours, par exemple (3 - 2 - 4), constituent le triplet horaire. Le premier chiffre est le nombre d'heures de cours théorique par semaine (les périodes de cours durent 50 minutes). Le second chiffre est le nombre d'heures de travaux dirigés (exercices) ou laboratoire, par semaine. (Note : certains cours ont un triplet (3 - 1.5 - 4.5). Dans ce cas, les 1,5 heure par semaine sont des laboratoires qui durent 3 heures mais qui ont lieu toutes les deux semaines. À Polytechnique, on parle alors de laboratoires bi-hebdomadaires). Le troisième chiffre est un nombre d'heures estimé que l'étudiant doit investir de façon personnelle par semaine pour réussir son cours. Département: Génies informatique & logiciel Préalables(s): 70 crédits pour les étudiants du baccalauréat Corequis: Cours des cycles supérieurs Trimestre: Automne 2025 Période: Notes: Responsable(s): Bentley Oakes Site web Description Basic concepts and definitions relevant to software quality, quality assurance, tests, quality engineering and quality planning. Anomaly prevention and fault classification. Fault tolerance. Software reliability engineering. Quality models. Comparison of different quality assurance techniques. Improvement of the software development process. Measuring the software and its processes. Identification of risks for the quantifiable improvement of quality. Détails Cours des cycles supérieurs LOG6307E Release Eng.App. Mining Software Repositories 3 Automne 2025 Cours de jour Nombre de crédits: 3 (3- 1.5- 4.5) Les chiffres indiqués entre parenthèses sous le sigle du cours, par exemple (3 - 2 - 4), constituent le triplet horaire. Le premier chiffre est le nombre d'heures de cours théorique par semaine (les périodes de cours durent 50 minutes). Le second chiffre est le nombre d'heures de travaux dirigés (exercices) ou laboratoire, par semaine. (Note : certains cours ont un triplet (3 - 1.5 - 4.5). Dans ce cas, les 1,5 heure par semaine sont des laboratoires qui durent 3 heures mais qui ont lieu toutes les deux semaines. À Polytechnique, on parle alors de laboratoires bi-hebdomadaires). Le troisième chiffre est un nombre d'heures estimé que l'étudiant doit investir de façon personnelle par semaine pour réussir son cours. Département: Génies informatique & logiciel Préalables(s): 80 crédits pour les étudiants au baccalauréat Corequis: Cours des cycles supérieurs Trimestre: Automne 2025 Période: Notes: Responsable(s): Zohreh Sharafi Description Software release engineering process: integration, build, multi-staged testing, deployment, release and operations. Definition and base concepts of mining software repositories. Different types of repositories: version control, bug reports, code review, mailing lists, StackOverflow, project ecosystems, collaboration platforms. Techniques for empirical analysis of repositories: data mining, statistical analysis, natural language processing, source code analysis, qualitative analysis. Integration: configuration management, branching patterns, feature toggles, merge conflicts. Build: maintenance and verification of build, build failures, continuous integration, infrastructure-as-code, software configuration. Multi-staged testing: bug prediction, test selection, continuous testing. Deployment/release: large-scale distributions, deployment/release strategies, source code provenance, app stores. Operations: log analysis, rollback. Détails LOG8415 Concepts avancés en infonuagique 3 Nombre de crédits: 3 (3- 1.5- 4.5) Les chiffres indiqués entre parenthèses sous le sigle du cours, par exemple (3 - 2 - 4), constituent le triplet horaire. Le premier chiffre est le nombre d'heures de cours théorique par semaine (les périodes de cours durent 50 minutes). Le second chiffre est le nombre d'heures de travaux dirigés (exercices) ou laboratoire, par semaine. (Note : certains cours ont un triplet (3 - 1.5 - 4.5). Dans ce cas, les 1,5 heure par semaine sont des laboratoires qui durent 3 heures mais qui ont lieu toutes les deux semaines. À Polytechnique, on parle alors de laboratoires bi-hebdomadaires). Le troisième chiffre est un nombre d'heures estimé que l'étudiant doit investir de façon personnelle par semaine pour réussir son cours. Département: Génies informatique & logiciel Préalables(s): 70 crédits pour les étudiants au baccalauréat Corequis: Trimestre: Période: Notes: Responsable(s): À venir Site web Description Concepts clés de l'infonuagique. Principaux modèles de services d'infonuagique. Mécanismes clés et architecture d'une plateforme infonuagique. Théorie de la virtualisation et techniques logicielles de virtualisation. Analytique pour les gros volumes de données avec MapReduce et NoSQL. Considérations techniques liées à la migration d'applications vers le nuage. Patrons d'architectures pour le nuage. Interopérabilité dans le nuage. Métriques de qualité de service et contrat de niveau de service. Sûreté de fonctionnement et sécurité dans le nuage. Problèmes juridiques liés à l'infonuagique. Infonuagique mobile Détails Cours des cycles supérieurs LOG8415E Advanced Concepts of Cloud Computing 3 Automne 2025 Cours de jour Nombre de crédits: 3 (3- 1.5- 4.5) Les chiffres indiqués entre parenthèses sous le sigle du cours, par exemple (3 - 2 - 4), constituent le triplet horaire. Le premier chiffre est le nombre d'heures de cours théorique par semaine (les périodes de cours durent 50 minutes). Le second chiffre est le nombre d'heures de travaux dirigés (exercices) ou laboratoire, par semaine. (Note : certains cours ont un triplet (3 - 1.5 - 4.5). Dans ce cas, les 1,5 heure par semaine sont des laboratoires qui durent 3 heures mais qui ont lieu toutes les deux semaines. À Polytechnique, on parle alors de laboratoires bi-hebdomadaires). Le troisième chiffre est un nombre d'heures estimé que l'étudiant doit investir de façon personnelle par semaine pour réussir son cours. Département: Génies informatique & logiciel Préalables(s): 70 crédits pour les étudiants au baccalauréat Corequis: Cours des cycles supérieurs Trimestre: Automne 2025 Période: Notes: Responsable(s): Foutse Khomh Description Key concepts of cloud computing. Key mechanisms and key architectures of cloud computing platforms. Service delivery models of a cloud computing architecture. Virtualization. Big data analytics with MapReduce and NoSQL. Migration of applications to the cloud. Cloud computing patterns. Interoperability issues in the cloud. Quality of Service metrics and Service Level Agreement (SLA). Dependability and security in the cloud. Legal issues related to cloud computing. Mobile cloud computing. Détails Cours des cycles supérieurs LOG8235 Agents intelligents pour jeux vidéo 3 Automne 2025 Hiver 2026 Cours de jour Cours de jour Nombre de crédits: 3 (3- 1.5- 4.5) Les chiffres indiqués entre parenthèses sous le sigle du cours, par exemple (3 - 2 - 4), constituent le triplet horaire. Le premier chiffre est le nombre d'heures de cours théorique par semaine (les périodes de cours durent 50 minutes). Le second chiffre est le nombre d'heures de travaux dirigés (exercices) ou laboratoire, par semaine. (Note : certains cours ont un triplet (3 - 1.5 - 4.5). Dans ce cas, les 1,5 heure par semaine sont des laboratoires qui durent 3 heures mais qui ont lieu toutes les deux semaines. À Polytechnique, on parle alors de laboratoires bi-hebdomadaires). Le troisième chiffre est un nombre d'heures estimé que l'étudiant doit investir de façon personnelle par semaine pour réussir son cours. Département: Génies informatique & logiciel Préalables(s): 70 crédits pour les étudiants au baccalauréat Corequis: Cours des cycles supérieurs Trimestre: Automne 2025, Hiver 2026 Période: Notes: Responsable(s): Olivier Gendreau Site web Description Réalisme des personnages en intelligence artificielle. Conception de règles de jeu. Sensibilisation à l'utilisation de la physique dans un jeu pour mieux percevoir et agir sur son environnement: intégration de bibliothèque de physique du jeu vidéo, lancer de rayon, cinématique inverse, voxelisation. Sensibilisation à l'animation: vallée dérangeante, animation faciale. Sensibilisation à la génération de contenu procédural: algorithmes génératifs pour la voix, les animations, les niveaux, les personnages, les situations rencontrées, ainsi que le contrôle dynamique et personnalisé de la difficulté du jeu. Navigation. Boucles de perception, de décision et d'action. Systèmes complexes et efficacité. Détails LOG8430 Architecture logicielle et conception avancée 3 Hiver 2026 Cours de jour Nombre de crédits: 3 (3- 1.5- 4.5) Les chiffres indiqués entre parenthèses sous le sigle du cours, par exemple (3 - 2 - 4), constituent le triplet horaire. Le premier chiffre est le nombre d'heures de cours théorique par semaine (les périodes de cours durent 50 minutes). Le second chiffre est le nombre d'heures de travaux dirigés (exercices) ou laboratoire, par semaine. (Note : certains cours ont un triplet (3 - 1.5 - 4.5). Dans ce cas, les 1,5 heure par semaine sont des laboratoires qui durent 3 heures mais qui ont lieu toutes les deux semaines. À Polytechnique, on parle alors de laboratoires bi-hebdomadaires). Le troisième chiffre est un nombre d'heures estimé que l'étudiant doit investir de façon personnelle par semaine pour réussir son cours. Département: Génies informatique & logiciel Préalables(s): 70 crédits pour les étudiants au baccalauréat Corequis: Trimestre: Hiver 2026 Période: Notes: Responsable(s): Zohreh Sharafi Site web Description Méthodes de conception avancées de logiciels et choix d'architecture. Architectures logicielles: multi-niveaux, clients-serveurs, extensibles et dynamiques. Concepts et implantations avancées des bibliothèques et du chargement de composantes dynamiques. Cadres de référence et plugiciels. Composition et architecture par composantes. Patrons de conception avancés pour les systèmes distribués: accès aux services et configuration, traitement d'événements, synchronisation et accès simultanés. Approches émergentes de conception et d'architecture: conception orientée aspect, architecture orientée services et autres. Détails Cours des cycles supérieurs LOG8430E Software Architecture and Advanced Design 3 Automne 2025 Cours de jour Nombre de crédits: 3 (3- 1.5- 4.5) Les chiffres indiqués entre parenthèses sous le sigle du cours, par exemple (3 - 2 - 4), constituent le triplet horaire. Le premier chiffre est le nombre d'heures de cours théorique par semaine (les périodes de cours durent 50 minutes). Le second chiffre est le nombre d'heures de travaux dirigés (exercices) ou laboratoire, par semaine. (Note : certains cours ont un triplet (3 - 1.5 - 4.5). Dans ce cas, les 1,5 heure par semaine sont des laboratoires qui durent 3 heures mais qui ont lieu toutes les deux semaines. À Polytechnique, on parle alors de laboratoires bi-hebdomadaires). Le troisième chiffre est un nombre d'heures estimé que l'étudiant doit investir de façon personnelle par semaine pour réussir son cours. Département: Génies informatique & logiciel Préalables(s): 70 crédits pour les étudiants au baccalauréat Corequis: Cours des cycles supérieurs Trimestre: Automne 2025 Période: Notes: Responsable(s): Zohreh Sharafi Description Advanced software design methods and choosing architecture. Software architectures: multitier, client-server, extendible and dynamic. Advanced concepts of software library installation and dynamic loading of components. Advanced design patterns for distributed systems: service access and configuration, event processing, synchronization and simultaneous access. Emerging approaches in design and architecture: aspect-oriented design, service-oriented architecture and others. Détails Cours des cycles supérieurs LOG8490 Génie logiciel quantique 3 Hiver 2024 Cours de jour Cours des cycles supérieurs LOG8505 Génie logiciel dirigé par les modèles 3 Hiver 2023 Cours de jour Cours des cycles supérieurs LOG8505E Model Driven Software Engineering 3 Hiver 2023 Cours de jour Cours des cycles supérieurs LOG8715 Architecture de jeux vidéo 3 Hiver 2026 Cours de jour Nombre de crédits: 3 (3- 1.5- 4.5) Les chiffres indiqués entre parenthèses sous le sigle du cours, par exemple (3 - 2 - 4), constituent le triplet horaire. Le premier chiffre est le nombre d'heures de cours théorique par semaine (les périodes de cours durent 50 minutes). Le second chiffre est le nombre d'heures de travaux dirigés (exercices) ou laboratoire, par semaine. (Note : certains cours ont un triplet (3 - 1.5 - 4.5). Dans ce cas, les 1,5 heure par semaine sont des laboratoires qui durent 3 heures mais qui ont lieu toutes les deux semaines. À Polytechnique, on parle alors de laboratoires bi-hebdomadaires). Le troisième chiffre est un nombre d'heures estimé que l'étudiant doit investir de façon personnelle par semaine pour réussir son cours. Département: Génies informatique & logiciel Préalables(s): 70 crédits pour les étudiants au baccalauréat Corequis: Cours des cycles supérieurs Trimestre: Hiver 2026 Période: Notes: Responsable(s): Olivier Gendreau Site web Description Composantes d'un moteur de jeu, modèle orienté objet, modèle entité-composante-système, patrons de conception orientés données, archétypes. Décomposition d'une itération de boucle de jeu. Jouabilité. Profilage et débogage. Performance et gestion de mémoire: stratégies, optimisations, modèles de parallélisme, patrons de synchronisation de données. Intégration continue des jeux vidéo. Programmation de jeux multijoueurs: topologies réseaux des jeux, réplication d'objets, gestion de la latence et fiabilité, architecture réseau et types de jeu, mise à l'échelle, sécurité des jeux, jeu à la demande, infrastructure serveur et infonuagique. Détails Cours des cycles supérieurs LOG8100 DevSecOps- Opérations et dév. logiciel sécur 3 Automne 2025 Cours de jour Nombre de crédits: 3 (3- 1.5- 4.5) Les chiffres indiqués entre parenthèses sous le sigle du cours, par exemple (3 - 2 - 4), constituent le triplet horaire. Le premier chiffre est le nombre d'heures de cours théorique par semaine (les périodes de cours durent 50 minutes). Le second chiffre est le nombre d'heures de travaux dirigés (exercices) ou laboratoire, par semaine. (Note : certains cours ont un triplet (3 - 1.5 - 4.5). Dans ce cas, les 1,5 heure par semaine sont des laboratoires qui durent 3 heures mais qui ont lieu toutes les deux semaines. À Polytechnique, on parle alors de laboratoires bi-hebdomadaires). Le troisième chiffre est un nombre d'heures estimé que l'étudiant doit investir de façon personnelle par semaine pour réussir son cours. Département: Génies informatique & logiciel Préalables(s): 80 crédits pour les étudiants inscrits au baccalauréat Corequis: Cours des cycles supérieurs Trimestre: Automne 2025 Période: Notes: Responsable(s): Nora Boulahia Cuppens Description Introduction à la sécurité logicielle. Analyse des vulnérabilités, testing de sécurité, stratégies de mitigation. Sécurité multi-niveau des systèmes numériques. Sécuriser la périphérie, sécuriser le logiciel, sécuriser les données (encryption), contrôle d'accès et authentification. Développement de logiciel sécuritaire. Exigences de sécurité, conformité à l'ENS, sécurité par conception, patrons et antipatrons pour la sécurité logicielle (codage sécuritaire). Introduction aux DevOps, intégration et déploiement continus, containeurs et microservices. Introduction aux DevSecOps, monitorage et mitigation des menaces dynamiques, automatisation des réponses aux menaces. Systèmes auto-adaptatifs et auto-protecteurs. Analyse des risques des vulnérabilités et des menaces sécuritaires. Détails Projets, séminaires et stages Note Sigle Titre Crédits Trimestre Période Pour les projets et les stages de 9 crédits et plus, l'étudiant doit avoir complété 9 crédits de cours avant d'entreprendre l'activité (stage ou projet). Projet LOG6901 Projet de maîtrise en ingénierie I 6 Automne 2025 Hiver 2026 Été 2026 Cours de jour Cours de jour Cours de jour Nombre de crédits: 6 (0- 0- 18) Les chiffres indiqués entre parenthèses sous le sigle du cours, par exemple (3 - 2 - 4), constituent le triplet horaire. Le premier chiffre est le nombre d'heures de cours théorique par semaine (les périodes de cours durent 50 minutes). Le second chiffre est le nombre d'heures de travaux dirigés (exercices) ou laboratoire, par semaine. (Note : certains cours ont un triplet (3 - 1.5 - 4.5). Dans ce cas, les 1,5 heure par semaine sont des laboratoires qui durent 3 heures mais qui ont lieu toutes les deux semaines. À Polytechnique, on parle alors de laboratoires bi-hebdomadaires). Le troisième chiffre est un nombre d'heures estimé que l'étudiant doit investir de façon personnelle par semaine pour réussir son cours. Département: Génies informatique & logiciel Préalables(s): Corequis: Projet Trimestre: Automne 2025, Hiver 2026, Été 2026 Période: Notes: L'étudiant doit s'inscrire à cette activité une seule fois au cours de sa maîtrise au trimestre où il prévoit déposer son rapport de projet. Responsable(s): Tarek Ould Bachir Site web Description Projet de maîtrise en ingénierie accompli sous la direction d'un directeur de projet et comprenant une étude de niveau supérieur sur un problème de génie ainsi que la rédaction d'un rapport de projet. Le travail comprend au moins 18 heures par semaine consacrées au projet pendant un trimestre ou l'équivalent. Détails Projet LOG6902 Projet de maîtrise en ingénierie II 9 Automne 2025 Hiver 2026 Été 2026 Cours de jour Cours de jour Cours de jour Nombre de crédits: 9 (0- 0- 27) Les chiffres indiqués entre parenthèses sous le sigle du cours, par exemple (3 - 2 - 4), constituent le triplet horaire. Le premier chiffre est le nombre d'heures de cours théorique par semaine (les périodes de cours durent 50 minutes). Le second chiffre est le nombre d'heures de travaux dirigés (exercices) ou laboratoire, par semaine. (Note : certains cours ont un triplet (3 - 1.5 - 4.5). Dans ce cas, les 1,5 heure par semaine sont des laboratoires qui durent 3 heures mais qui ont lieu toutes les deux semaines. À Polytechnique, on parle alors de laboratoires bi-hebdomadaires). Le troisième chiffre est un nombre d'heures estimé que l'étudiant doit investir de façon personnelle par semaine pour réussir son cours. Département: Génies informatique & logiciel Préalables(s): 9 crédits de cours aux études supérieures Corequis: Projet Trimestre: Automne 2025, Hiver 2026, Été 2026 Période: Notes: L'étudiant doit s'inscrire à cette activité une seule fois au cours de sa maîtrise au trimestre où il prévoit déposer son rapport de projet. Responsable(s): Tarek Ould Bachir Site web Description Projet de maîtrise en ingénierie accompli sous la direction d'un directeur de projet et comprenant une étude de niveau supérieur sur un problème de génie ainsi que la rédaction d'un rapport de projet. Le travail comprend au moins 27 heures par semaine consacrées au projet pendant un trimestre ou l'équivalent. Détails Projet LOG6903 Projet de maîtrise en ingénierie III 12 Automne 2025 Hiver 2026 Été 2026 Cours de jour Cours de jour Cours de jour Nombre de crédits: 12 (0- 0- 36) Les chiffres indiqués entre parenthèses sous le sigle du cours, par exemple (3 - 2 - 4), constituent le triplet horaire. Le premier chiffre est le nombre d'heures de cours théorique par semaine (les périodes de cours durent 50 minutes). Le second chiffre est le nombre d'heures de travaux dirigés (exercices) ou laboratoire, par semaine. (Note : certains cours ont un triplet (3 - 1.5 - 4.5). Dans ce cas, les 1,5 heure par semaine sont des laboratoires qui durent 3 heures mais qui ont lieu toutes les deux semaines. À Polytechnique, on parle alors de laboratoires bi-hebdomadaires). Le troisième chiffre est un nombre d'heures estimé que l'étudiant doit investir de façon personnelle par semaine pour réussir son cours. Département: Génies informatique & logiciel Préalables(s): 9 crédits de cours aux études supérieures Corequis: Projet Trimestre: Automne 2025, Hiver 2026, Été 2026 Période: Notes: L'étudiant doit s'inscrire à cette activité une seule fois au cours de sa maîtrise au trimestre où il prévoit déposer son rapport de projet. Responsable(s): Tarek Ould Bachir Site web Description Projet de maîtrise en ingénierie accompli sous la direction d'un directeur de projet et comprenant une étude de niveau supérieur sur un problème de génie ainsi que la rédaction d'un rapport de projet. Le travail comprend au moins 36 heures par semaine consacrées au projet pendant un trimestre ou l'équivalent. Détails Projet LOG6904 Projet de maîtrise en ingénierie IV 15 Automne 2025 Hiver 2026 Été 2026 Cours de jour Cours de jour Cours de jour Nombre de crédits: 15 (0- 0- 45) Les chiffres indiqués entre parenthèses sous le sigle du cours, par exemple (3 - 2 - 4), constituent le triplet horaire. Le premier chiffre est le nombre d'heures de cours théorique par semaine (les périodes de cours durent 50 minutes). Le second chiffre est le nombre d'heures de travaux dirigés (exercices) ou laboratoire, par semaine. (Note : certains cours ont un triplet (3 - 1.5 - 4.5). Dans ce cas, les 1,5 heure par semaine sont des laboratoires qui durent 3 heures mais qui ont lieu toutes les deux semaines. À Polytechnique, on parle alors de laboratoires bi-hebdomadaires). Le troisième chiffre est un nombre d'heures estimé que l'étudiant doit investir de façon personnelle par semaine pour réussir son cours. Département: Génies informatique & logiciel Préalables(s): 9 crédits de cours aux études supérieures Corequis: Projet Trimestre: Automne 2025, Hiver 2026, Été 2026 Période: Notes: L'étudiant doit s'inscrire à cette activité une seule fois au cours de sa maîtrise au trimestre où il prévoit déposer son rapport de projet. Responsable(s): Tarek Ould Bachir Site web Description Projet de maîtrise accompli sous la direction d'un directeur de projet et comprenant une étude de niveau supérieur sur un problème de génie ainsi que la rédaction d'un rapport de projet. Le travail comprend l'équivalent de 45 heures par semaine consacrées au projet pendant un trimestre. Détails LOG6966S Stage en milieu de travail à temps partiel 12 Nombre de crédits: 12 (0- 0- 36) Les chiffres indiqués entre parenthèses sous le sigle du cours, par exemple (3 - 2 - 4), constituent le triplet horaire. Le premier chiffre est le nombre d'heures de cours théorique par semaine (les périodes de cours durent 50 minutes). Le second chiffre est le nombre d'heures de travaux dirigés (exercices) ou laboratoire, par semaine. (Note : certains cours ont un triplet (3 - 1.5 - 4.5). Dans ce cas, les 1,5 heure par semaine sont des laboratoires qui durent 3 heures mais qui ont lieu toutes les deux semaines. À Polytechnique, on parle alors de laboratoires bi-hebdomadaires). Le troisième chiffre est un nombre d'heures estimé que l'étudiant doit investir de façon personnelle par semaine pour réussir son cours. Département: Génies informatique & logiciel Préalables(s): 9 crédits aux cycles supérieurs Corequis: Trimestre: Période: Notes: * Minimum de 450 heures de travail. La note IP sera attribuée à la fin du premier trimestre de stage. De même, un stage non complété sur deux trimestres ne sera pas évalué. Le stage peut débuter au trimestre d'été, d'automne ou d'hiver. Responsable(s): Tarek Ould Bachir Site web Description Stage d'une durée maximale de 30 semaines (540 heures)* effectué à temps partiel sur deux trimestres consécutifs permettant à l'étudiant de réaliser ou de participer à un ou des projets de recherche, de développement, de conception, d'application, d'implantation ou d'évaluation dans un milieu de travail. Il s'adresse exclusivement aux candidats inscrits à un programme de maîtrise professionnelle. Il se fait sous la supervision conjointe d'un professeur de l'École et d'un professionnel du milieu de travail. L'étudiant doit remettre un rapport à la fin du stage (à la fin de son deuxième trimestre de stage à temps partiel). Détails LOG6972S Stage en milieu de travail 12 Nombre de crédits: 12 (0- 0- 36) Les chiffres indiqués entre parenthèses sous le sigle du cours, par exemple (3 - 2 - 4), constituent le triplet horaire. Le premier chiffre est le nombre d'heures de cours théorique par semaine (les périodes de cours durent 50 minutes). Le second chiffre est le nombre d'heures de travaux dirigés (exercices) ou laboratoire, par semaine. (Note : certains cours ont un triplet (3 - 1.5 - 4.5). Dans ce cas, les 1,5 heure par semaine sont des laboratoires qui durent 3 heures mais qui ont lieu toutes les deux semaines. À Polytechnique, on parle alors de laboratoires bi-hebdomadaires). Le troisième chiffre est un nombre d'heures estimé que l'étudiant doit investir de façon personnelle par semaine pour réussir son cours. Département: Génies informatique & logiciel Préalables(s): 9 crédits aux cycles supérieurs Corequis: Trimestre: Période: Notes: * Minimum de 450 heures de travail. Responsable(s): François Guibault Site web Description Stage d'une durée maximale d'un trimestre de 15 semaines (540 heures)* effectué à temps plein permettant à l'étudiant de réaliser ou de participer à un ou des projets de recherche, de développement, de conception, d'application, d'implantation ou d'évaluation dans un milieu de travail. Il s'adresse exclusivement aux candidats inscrits à un programme de maîtrise professionnelle. Il se fait sous la supervision conjointe d'un professeur de Polytechnique Montréal et d'un professionnel du milieu de travail. L'étudiant doit remettre un rapport à la fin du stage. Détails Projet LOG6909 Projet d'études supérieures 3 Automne 2025 Hiver 2026 Été 2026 Cours de jour Cours de jour Cours de jour Nombre de crédits: 3 (0- 0- 9) Les chiffres indiqués entre parenthèses sous le sigle du cours, par exemple (3 - 2 - 4), constituent le triplet horaire. Le premier chiffre est le nombre d'heures de cours théorique par semaine (les périodes de cours durent 50 minutes). Le second chiffre est le nombre d'heures de travaux dirigés (exercices) ou laboratoire, par semaine. (Note : certains cours ont un triplet (3 - 1.5 - 4.5). Dans ce cas, les 1,5 heure par semaine sont des laboratoires qui durent 3 heures mais qui ont lieu toutes les deux semaines. À Polytechnique, on parle alors de laboratoires bi-hebdomadaires). Le troisième chiffre est un nombre d'heures estimé que l'étudiant doit investir de façon personnelle par semaine pour réussir son cours. Département: Génies informatique & logiciel Préalables(s): Corequis: Projet Trimestre: Automne 2025, Hiver 2026, Été 2026 Période: Notes: Responsable(s): Tarek Ould Bachir Site web Description Projet d'études supérieures accompli sous la direction d'un professeur du département et comprenant une étude d'application ainsi que la rédaction d'un rapport de projet. Le travail comprend au moins un total de 135 heures. Détails