<-Frontpage

Teaching activities

Sorry folks, as I teach in French for now, I won't translate this page, exept for topics. Les personnes avec qui j'ai animé les cours et TPs où qui ont participé à la rédaction sont citées dans les énoncés. Vous pouvez reprendre à votre compte et modifier ces documents, les sources sont données en fichier archive. Citez vos sources !

Sécurité et réseau

Travaux Pratiques

NiveauDescriptionFichiers
L3, 4h Système et réseau : mise en oeuvre et exploitation
Double finalité : il s'agit d'une part de vous familiariser avec l'environnement Unix et d'autre part, de vous faire analyser une communication entre ordinateurs. Vous effecturez la mise en réseau des 6 machines, vérifirez les protocoles de communication Telnet et Ssh. Vous démontrerez, en analysant les trames TCP, que le protocole Ssh est plus sécurisé que le protocole Telnet. Enfin, vous explorerez des mécanismes d'accès et d'exploitation de machine à distance.
Les corrections et notes de TD proposées en archive ont été écrites par Geraldine Del Mondo
,
Système et réseau : mise en oeuvre et exploitation - version en autonomie
Récriture par Geraldine Del Mondo du TP précédent. Les élèves peuvent travailler sur le sujet avec plus d'autonomie. Une partie des explications des manipulations est inclue dans l'ennoncé.
,
L2, 2h Ensysol, l'encyclopédie du système solaire : mise en oeuvre d'un site dynamique avec PHP et CSS
Ce TD a pour but de vous faire découvrir la mise en oeuvre d'un site Web dynamique qui présentera les planètes du système solaire. L'index du site consiste en un script Php qui génère de l'HTML propre (au sens du W3C) à partir de simples fichiers de données. La mise en forme d'une page est assurée par une feuille de style en cascade (CSS) générale.
,
L3, 3h Cas d'attaque par la corruption d'un script PHP
Pour illustrer les concepts de sécurité informatique vus en cours de façon concrète et pour vous faire toucher du doigt les dangers d'un réseau mal sécurisé présentant une ou des failles, nous allons détailler une méthode d'attaque d'un serveur Web via les failles existantes dans les scripts exécutés du coté serveur. Nous utiliserons dans notre cas une faille dans une page écrite en PHP pour prendre la main sur le serveur.
,
L3, 2h Cryptographie, contrôle d'authenticité et vérification d'intégrité
Dans le domaine des réseaux informatiques, deux démarches complémentaires permettent d'assurer la confidentialité des échanges entre deux acteurs. D'une part la sécurité propre des transmissions vise à empêcher un tiers d'exploiter des failles dans le logiciel ou le matériel et de s'approprier des données confidentielles. D'autre part, la cryptographie et la vérification d'intégrité permettent dans le cas ou une interception est rendue possible par une faille du réseau, d'assurer une sécurité des données par encryptage du message.
,
L2, 2h Réseau : découverte et mise en oeuvre de la couche physique, des liaisons Ethernet et du réseau IP sur un outil de simulation
Ce TD à pour but de vous faire découvrir concrètement les réseaux informatiques. Nous allons utiliser un outil qui permet de simuler l'installation physique et le comportement d'un réseau d'ordinateurs. Nous nous intéresserons dans ce TD aux méthodes de câblage d'un réseau, aux adressages mac et à la diffusion de messages au niveau de la couche liaison. Nous verrons comment utiliser des commutateurs et concentrateurs. Enfin nous verrons les bases de l'adressage IP.
,
L2, 2h Réseau : Interconnexion de réseaux, routage et application de règles de filtrage.
Un réseau de grande importance ne peut pas seulement reposer sur du matériel de bas niveau comme les switchs ou les hubs. Les grands réseaux fonctionnent par interconnexion. Des ordinateurs particuliers vont jouer le rôle de lien entre deux réseaux distincts et faire circuler l'information de l'un vers l'autre. Ces noeuds particuliers qui divisent un réseau s'appellent des passerelles. L'intérêt de cette distribution est de limiter l'usage du réseau Ethernet à un nombre réduit d'ordinateurs et d'utiliser le protocole IP pour la transmission d'un réseau vers l'autre.
,

Intelligence artificielle

Travaux pratiques

NiveauDescriptionFichiers
M1, 4h Avalanches en milieu alpin avec Netlogo
Ce TD fait suite aux premières heures d'initiation à la simulation par agent en Netlogo. Nous simulerons un environnement géographique de type alpin dans lequel nous déclencherons des avalanches pour déterminer quelles sont les zones à risques et quelles est le meilleur emplacement pour un refuge. En fin de TD, des alpinistes tenterons de rejoindre le refuge en évitant d'être emporté par les avalanches.
,
M1, 2h Simulation comportementale de navires
En utilisant Netlogo, vous simulerez le comportement de trois types d'agents (le navire de police, les navires en infraction, les navires neutres) au sein d´un environnement composé d´îles. Bien entendu, il est demandé aux navires de police d´appréhender les navires fautifs et de les remorquer jusqu'à un point précis de la carte où ils seront pris en charge (sorte de prison).
,
M1, 2h Mise en oeuvre d'un réseau de neurones simple : le Perceptron
L'un des problèmes majeurs en intelligence artificielle est la distinction entre deux classes. Il se pose comme la base de systèmes d'IA beaucoup plus complexes. L'utilisation d'un réseau de neurones permet de résoudre des problèmes de classification. Un neurone sait faire la différence entre deux classes dès lors qu'il a appris par des exemples successifs à correctement classer (apprentissage supervisé). Ce TD vous amène à découvrir les réseaux de neurones et à construire un perceptron pour le cas concret de la distinction entre deux groupes de bateaux.
,

Interaction Homme-Machine

Ces TDs et compléments suivent le cours de Meriam Horchani disponible sur sa page personnelle

Cours

NiveauDescriptionFichiers
M1, 1h Compléments de cours sur les tests de mémoire et de perception
Quelques exercices à faire en groupe pour montrer que l'évidence n'est pas forcément la règle à suivre en IHM.
,
M1, 1h Compléments de cours sur les interfaces orientées objets
Quelques exemples d'interfaces orientées objets. À critiquer lors du TP "MVC en MVC 2".
,

Sujets de réfléxion

NiveauDescriptionFichiers
M1, ~5h L'entrée de texte en mobilité
La saisie sur dispositif mobile offre de nombreux défis en termes de recherche et des solutions variées sont proposées pour améliorer les performances en entrée. Ce sujet d'étude présente trois méthodes récentes pour la saisie de texte en mobilité. Il vous sera demandé d'effectuer une synthèse globale des articles de recherche et de présenter l'une des solution en détail lors de votre passage à l'oral.
,
M1, ~5h Les interfaces tangibles
Cette étude porte sur la compréhension des mécanismes à l'oeuvre dans les interfaces tangibles. Dans une première partie de synthèse, vous montrerez votre compréhension des principes et des utilisations imaginées pour ces objets d'interaction. Dans un deuxième temps vous imaginerez ce que pourrait être une table à cartes tangible et défendrez votre point de vue à l'oral.
,
M1, ~5h Panorama actuel de quelques aspects de l'interaction naturelle imaginée en 1995 (Proposé par Meriam Horchani)
Votre travail doit vous permettre d'identifier un panorama de certains travaux qui visent à une interaction avec les ordinateurs qui semble naturelle aux utilisateurs. Pour cela, vous vous appuyerez sur l'étude d'un des chapitres du livre de Negroponte "l'homme numérique" que vous confronterez à des travaux actuels de ce domaine. Après avoir distingué les pistes intéressantes identifiées par Negroponte, vous chercherez à y classer les articles scientifiques fournis. Dans l'espace des pistes proposées par Negroponte ainsi redéfini et affiné, vous essayerez de justifier les convergences ou divergences de travaux actuels qui vous semblent probables ou souhaitables. Ces justifications passeront par des illustrations d'applications pertinentes (éventuellement futuristes) qui montrent les intérêts ou les risques de concilier certaines de ces approches.
,
M1, ~5h L'interaction du futur imaginée en 1945 (Proposé par Meriam Horchani)
Votre travail visera dans un premier temps à identifier les points-clés de l'interaction avec la machine et du rôle de cette dernière vues par Vannevar Bush en 1945. Ensuite, confrontant ces points-clés à la situation actuelle, vous distinguerez les aspects sur lesquels Vannevar Bush a été particulièrement perspicace de ceux qui n'ont pas répondu à ses projections. Vous terminerez par les prévisions essentielles à vos yeux qu'il reste à réaliser pour augmenter les capacités humaines, en justifiant votre point de vue et en proposant éventuellement quelques pistes de réalisation tenant compte des techniques actuelles (commercialisées ou à l'étude).
,

Travaux pratiques

NiveauDescriptionFichiers
M1, 4h Critères pour l'IHM et l'ergonomie des systèmes interactifs : application à la conception Web
En groupe de trois personnes, vous apliquerez les notions du cours à la conception des pages Web du site fioup.net. En premier lieu, il s'agira d'évaluer les pages existantes selon les critères d'ergonomie retenus et de décrire les problèmes d'interaction homme machine rencontrés, puis de modifier ces pages pour proposer des solutions. Vous préparerez une intervention de 5 minutes pour présenter les versions modifiées et les problèmes d'IHM corrigés. Vos solutions seront à leur tour évaluées par l'ensemble du groupe de voie d'approfondissement.
,
M1, 2h MVC en MVC : Mitigeur Vitesse-Cap selon l'architecture Modèle-Vue-Contrôleur (partie 1)
La bibliothèque graphique Swing structure ses composants selon le patron Modèle-Vue-Controleur, inventé dans les années 70 avec le language SmallTalk. Vous verrez dans ce TD quels sont ses avantages pour la construction de systèmes interactifs. Cette première partie sera dédiée à la conception centrée utilisateur : vous partirez d'un échange entre des concepteurs et des utilisateurs pour construire l'arbre des tâches de l'application. Puis vous implémenterez en Java les premiers prototypes en respectant l'architecture MVC et le principe d'identification de la tâche.
,
M1, 2h MVC en MVC : Mitigeur Vitesse-Cap selon l'architecture Modèle-Vue-Contrôleur (partie 2)
Après les premiers tests, les utilisateurs sont encore frileux par rapport au prototype de pilotage mis en place. Pour surmonter cela, nous vous proposons d'imaginer de nouvelles solutions pour ce système interactif, qui dépasseront le modèle d'interface graphique orienté objet. A cette fin, vous appliquerez le concept du mitigeur pour simplifier l'arbre des tâches et permettre un dialogue plus efficace entre l'opérateur et le système de pilotage.
,
M1, 2h Conception d'un système interactif en Java : Éléments d'interaction gestuelle
À la fin du précédent TD, vous étiez amenés à une première utilisation du geste pour interagir avec le système. Ce TD est l'occasion de pousser cette utilisation plus loin dans un cas où l'interaction gestuelle peut sembler plus naturelle que l'interaction par menus classiques, à savoir celui des logiciels de dessin.
,
M1, 2h+4h Conception d'IHM centrée sur la tâche
dans les TP "MVC en MVC", vous avez été guidé pas à pas pour construire différents arbres des tâches à partir d'échanges entre des concepteurs et des utilisateurs. Chaque arbre a ensuite été implémenté dans un système interactif particulier, avec un style d'interaction approprié. L'objectif de ce TD est de vous glisser complètement dans le rôle des concepteurs pour la partie amont de la conception d'un système interactif. Vous implémenterez votre proposition durant la prochaine et dernière séance de TD.
1),
2),

Interfaces utilisateur graphique

Ces travaux pratiques suivent le cours d'informatique graphique de Francois Berard disponible sur sa page personnelle

Travaux pratiques, projet

NiveauDescriptionFichiers
L3, 18h Boîte à Outils Graphique et d'Interaction
Il est demandé aux élèves d'implémenter une boite à outil graphique pour le tracé de primitives géométriques (polylignes et polygones), la gestion de la couleur et de la transparence et la gestion du clipping rectangulaire. Cette boite à outil est exploitée par un outil d'interaction de type "Toolglass" implémenté par les élèves dans le cas d'application d'un logiciel de dessin vectoriel.Les élèves se répartissent en groupes de trois personnes
L3, 6h Boite à outils graphiques avec Tcl/Tk
Dans ce projet, les élèves doivent utiliser la bibliothèque de composants graphiques Tk associée au langage Tcl pour implémenter l'interface et les interactions d'un logiciel permettant de faire des requêtes de type "whereis" sur les serveurs de l'ENSIMAG. Le cahier des charge fonctionnel et le coeur métier sont fournis. En particulier la procédure whereis est implémentée. Les élèves s'organisent en binomes.

Compilation

Cours

NiveauDescriptionFichiers
M1, 18h Stage de compilation du "Projet GL" ENSIMAG
Initiation à la pratique de la compilation. Ce cours permet aux élèves de se preparer au projet de genie logiciel. Il introduit les fondamentaux de la théorie des langages, de l'analyse et de la génération de code appliquée au cas d'un compilateur d'un langage objet, Deca, vers un langage d'assemblage.

Encadrement de projet

NiveauDescriptionFichiers
M1, 32h Projet de Genie Logiciel
Les élèves, en groupe de 4 personnes, doivent écrire en Ada un compilateur "zéro défaut" pour le langage Deca (petit langage ressemblant à Java). Pour cela, il doivent comprendre et respecter des spécifications, formelles (grammaires attribuées) ou non, puis s'accorder sur un modèle de developpement et une architecture de code avant d'implémenter le compilateur. Les élèves utilisent des outils d'aide au développement (make, générateurs d'analyseurs lexicaux et syntaxiques, Git, Gcov, etc.) et travaillent sur la base des spécifications fournies par l'encadrement

Informatique financière

Encadrement de projet

NiveauDescriptionFichiers
M2, 24h Évaluation de produits structurés
En autonomie, les élèves doivent realiser une analyse financière d'un produit structuré. D'un point de vue mathématique, les élèves doivent comprendre et en détailler le fonctionnement du produit, puis proposer une stratégie permetant sa couverture sans risque. D'un point de vue informatique, cette stratégie de couverture est implémentée par les élèves et proposée au gérant sous la forme d'un classeur Excel/.Net interfacé avec les fournisseurs de données Reuters et FinInfo
Lastest update: September 08, 2011