INF889X - Sujets spéciaux en informatique

Ce cours est à contenu variable. Il vise à présenter aux étudiants des sujets de recherche de pointe ou en émergence dans le domaine de l'informatique qui ne sont pas couverts par d'autres cours.

INF889A - Analyse de programmes pour la sécurité logicielle

Objectifs

Étudier les vulnérabilités et l'exploitation logicielle en utilisant des techniques et outil axés sur l’analyse de programmes et de langages de programmation.

Sommaire du contenu

Principes et techniques mis en œuvre par les outils de sécurité logicielle et les logiciels malveillants pour l’analyse, la détection, l’exploitation, la protection, etc. de problèmes de sécurité dans les programmes informatiques. Analyse des techniques et des mécanismes impliqués dans les failles logicielles modernes et les contre-mesures proposées par la littérature scientifique et l'industrie. Étude des langages de programmation et des pratiques de développement d'un point de vue de la sécurité.

INF889B - Algorithmes d'optimisation combinatoire

Objectifs

Se familiariser avec les méthodes d'optimisation combinatoire exactes, approximatives et adaptatives. Connaître leurs avantages, leurs limites, être en mesure de les implémenter et d'évaluer leur performance.

Sommaire du contenu

Modélisation d'un problème d'optimisation combinatoire. Optimisation exacte: solution naïve, séparation et évaluation progressive, algorithmes paramétrés. Optimisation convexe: programmes linéaires, algorithme du simplexe, théorie de la dualité, programmation linéaire en nombres entiers. Méthodes approximatives et métaheuristiques: recherche locale, recuit simulé, recherche taboue. Méthodes bio-inspirées: algorithmes évolutionnaires, colonies de fourmis, etc. Optimisation par apprentissage: survol des méthodes d'apprentissage automatique, intégration d'apprentissage dans des algorithmes d'optimisation combinatoire.

INF889C - Technologies émergentes des services de télécommunication

Objectifs

Ce cours familiarise les étudiants avec les principes fondamentaux des technologies émergentes telle l’infonuagique, les réseaux définis par logiciel, la virtualisation des fonctions des réseaux et l’internet des objets.

Sommaire du contenu

Approvisionnement des services réseaux émergents. Présentation des principes de base de l’infonuagique. Infrastructures et centres de données. Déploiement des nouvelles applications: Internet des objets, réalité augmentée et Internet tactile. Logicielisation et virtualisation. Découpage virtuel des réseaux nouvelle génération. Placement et réplication des données. Stockage et mise en mémoire cache. Évaluation et optimisation de la qualité de service et la qualité d’expérience.

INF889D - Usines logicielles à grande échelle

Objectifs

Ce cours présente les défis du développement de logiciels de grande envergure et illustre, au travers du paradigme de séparation des préoccupations, comment mettre en pratique des approches de décomposition puis de recomposition automatique pour développer des logiciels de grande envergure produits en masse et hautement configurables. À la fin du cours, les étudiants seront capables de mettre en place une usine logicielle permettant de produire des versions à-la-carte d’un logiciel.

Sommaire du contenu

Séparation des préoccupations. Variabilité logicielle. Configuration Logicielle. Décomposition et recomposition. Langages spécifiques au domaine. Déploiement à la carte. Programmation orientée aspects. Composants et intercepteurs. Étude de cas.

Département d'informatique

Le département d'informatique compte près de quarante professeur.e.s qui oeuvrent dans divers domaines, tant en enseignement qu'en recherche. De nos jours, l'informatique occupe une place importante dans notre société. L'informatique est devenue plus accessible par l'abondance de logiciels et de systèmes de plus en plus faciles à utiliser. Ceux-ci sont conçus selon des techniques et des approches variées. Nos professeur.e.s travaillent sur ces techniques et approches au sein de nos unités de recherche et les enseignent à nos étudiant.e.s dans les programmes de premier cycle et de cycles supérieurs.

Suivez-nous

Coordonnées

Département d'informatique
Local PK-4150
201, Avenue du Président-Kennedy
Montréal (Québec) H2X 3Y7