I2L:Detail
Ce document est proposé à titre indicatif. La répartition cours/TD/TP des heures peut être modifiée ainsi que le détail des modules.
Sommaire |
Module Systèmes, réseaux et sécurité
Etat des lieux des distributions Unix et dérivés (Debian, Fedora, Mandriva, Novell Linux, Gentoo, ...), déploiement de Linux/debian et de FreeBSD. Etude du noyau Linux (Gestion mémoire, gestion de fichiers – ext2, ext3, lufs, ... - , gestion de processus, drivers de périphériques, synchronisation, IPC, ...). Sécurisation des systèmes et des services réseaux (DNS, Web, Mail, ...). Sécurité physique, sécurité des données et sécurisation du système Linux. Filtrage, topologie, segmentation et DMZ (FireWall, IP table, Squid, Reverse Proxy, VPN, ...). Surveillance, audit et outils de monitoring.
Intervenants
- D. Duvivier (LISIC - ULCO) - Kernel + Réseau [9h + 33h]
- E. Leblond (Edenwall) - Réseau avancé [6h + 9h]
- O. Wulveryck (Techsys) - Virtualisation et BSD [0h + 18h]
Cours
- Cours 1 (3h) - Linux Kernel I - D. Duvivier (LISIC-ULCO)
- Introduction
- Linux et les autres Unix
- Les différentes versions
- Un survol du noyau
- Gestion mémoire
- Introduction
- Cours 2 (3h) - Linux Kernel II - D. Duvivier (LISIC-ULCO)
- Les processus
- fork, signal, thread, semaphore, ...
- Les interruptions et les exceptions
- La gestion des entrées-sorties
- Les processus
- Cours 3 (3h) - Linux Kernel III - D. Duvivier (LISIC-ULCO)
- Les systèmes de fichiers
- Le système de fichiers virtuels (VFS)
- Ext2 et Ext3
- Les systèmes de fichiers
- Cours 4 (3h) - Linux en réseau I - E. Leblond (INL)
- Protocoles niveau 1 et 2
- ATM, PPP
- Ethernet, VLAN, Bridging
- Virtualisation (tuntap, bonding, ...)
- Pile TCP/IP et autres protocoles de même niveau
- Présentation
- Principes d'optimisations
- Protocoles niveau 1 et 2
- Cours 5 (3h) - Linux en réseau II - E. Leblond (INL)
- Routage avancé et Qualité de Service :
- Protocole de routage dynamique : RIP,OSPF,BGP;
- Politique de routage différencié;
- Qualité de service : Diffserv.
- Firewall (netfilter/iptables) et VPN
- Routage avancé et Qualité de Service :
TD/TP
- TD/TP 1 (3h) - Installation d'une distribution Debian - D. Duvivier (LISIC-ULCO)
- C'est le premier TP de l'année : l'étudiant installe sa propre machine de l'année : noyau Debian minimal, NFS, OpenLDAP, X server, Window manager et outils de base (développement, réseaux, ...) - Le guide d'installation du client et des serveurs.
- TD/TP 2 (3h) - Système et réseaux 1 - D. Duvivier (LISIC-ULCO)
- comment sécuriser son noyau ?
- TD/TP 3 (6h) - Système et réseaux 2 - D. Duvivier (LISIC-ULCO)
- fork, thread, mutex et sémaphores
- TD/TP 4 (9h) - Système 3 - D. Duvivier (LISIC-ULCO)
- Ecriture d'un driver de périphérique sous Linux
- TD/TP 5 (3h) - Système - D. Duvivier (LISIC-ULCO)
- DNS - DHCP
- TD/TP 6 (3h) - Système - D. Duvivier (LISIC-ULCO)
- FTP - Apache
- TD/TP 7 (3h) - Système - D. Duvivier (LISIC-ULCO)
- IP table
- TD/TP 8 (3h) - Système - D. Duvivier (LISIC-ULCO)
- Squid
- TD/TP 9 (3h) - Linux en réseau 1 - E. Leblond (INL)
- Routage simple, utilisation d'openvpn
- TD/TP 10 (3h) - Linux en réseau 2 - E. Leblond (INL)
- Exemple de programmation réseau, mise en oeuvre d'un protocole de routage dynamique (OSPF)
- TD/TP 11 (3h) - Linux en réseau 3 - E. Leblond (INL)
- Découverte de Netfilter et expérimentation de quelques fonctionnalités de qualité de service
- TD/TP 12 (9h) - Distributions BSD - O. Wulveryck (???)
- Introduction aux distributions BSD
- Installation et découverte des configurations
- Introduction au ZFS
Module Développement d’applications Web
Web Services : architecture orientée services (WSDL (http://www.w3.org/TR/wsdl), SOAP (http://www.w3.org/TR/soap/), XML-RPC (http://www.xmlrpc.com/), HTTP, ...). Concepts avancés de Java (JSP (http://java.sun.com/products/jsp/), Servlets (http://java.sun.com/products/servlet/), les EJB (http://java.sun.com/products/ejb/) et Enterprise Service Bus – ESB - ). Déploiement et mise en oeuvre : Python/Zope (http://www.zope.org/), J2EE et serveurs d'applications (Tomcat, Jonas (http://jonas.objectweb.org/), Jboss (http://labs.jboss.com/), ...). Persistance des données (Hibernate (http://www.hibernate.org/), ...).
Intervenants 2010-2011
- L Deruelle (LISIC - ULCO) [12h + 0h]
- M. Bouneffa (LISIC - ULCO) [4h + 6h]
- L. Belmar-Letelier (Itaapy) [5h + 22h]
- A. Ahmad (LISIC - ULCO) [0h + 30h]
- M. Debureaux [6h + 18h]
Cours
- Cours 1 (3h) - L. Deruelle (commun ISIDIS) (LISIC - ULCO)
- Architectures orientée services (J2EE, .Net, Zope, ...)
- Cours 2 (3h) - L. Deruelle (commun ISIDIS) (LISIC - ULCO)
- Déploiement et serveur d'applications
- Cours 3 (3h) - L. Deruelle (commun ISIDIS) (LISIC - ULCO)
- JSP et Servlet
- Cours 4 (4h) - M. Bouneffa (commun ISIDIS) (LISIC - ULCO)
- Persistance des données
- Mapping Relationnel - Objet : cas d'Hibernate
- Cours 5 (5h) - L. Belmar-Letelier (Itaapy)
- Compréhension du protocole HTTP
- Configuration fine des virtualHost d'Apache
- architecture RESTfull
- Python pour le développement d'application Web
- Cours 6 (6h) - M. Debureaux (Alten)
- Ruby on Rails
TD/TP
- TD/TP 1 (6h) - A. Ahmad (LISIC - ULCO)
- Déploiement J2EE
- TD/TP 2 (12h) - A. Ahmad (LISIC - ULCO)
- JSP/Servlet
- TD/TP 3 (3h) - A. Ahmad (LISIC - ULCO)
- Manipulation de Struts
- TD/TP 4 (9h) - A. Ahmad (LISIC - ULCO)
- EJB
- TD/TP 5 (6h) - M. Bouneffa (LISIC - ULCO)
- Hibernate - Tutorial et applications
- TD/TP 6 (6h) - L. Belmar-Letelier (Itaapy)
- HTTP, Apache, CGI, Virtual Host
- TD/TP 7 (15h) - L. Belmar-Letelier (Itaapy)
- RESTfull et Python
- TD/TP 8 (18h) - M. Debureaux (Alten)
- Ruby on Rails
Module Environnement de développement libres
Méthodologies et gestion de projets (méthodes agiles - RAD et eXtreme Programming -,...). Outils de gestion de suivi de projets (bugzilla (http://www.bugzilla.org/), trac, ...). Test unitaire (JUnit, cppunit, phpunit, PyUnit ...). Documentation (doxygen, ...). Architecture de développement et de déploiement (autotools, cmake, gestion de paquets, ...). Gestion de versions centralisée (CVS, subversion, ...) et distribuée (git,...). Design pattern. Interopérabilité. Environnement de développement collaboratif : concepts, méthodologies et outillage (gforge, Eclipse, ...).
Intervenants 2010-2011
- E. Ramat (LISIC - ULCO) [14h + 41h]
- G. Quesnel (INRA) - Git [2h + 4h]
- G. Bourguin (LISIC - ULCO) [6h + 9h]
Prérequis
Cours
- Cours 1 (1h30) Python - E. Ramat (LISIC-ULCO) - présentation - dépôt git
- Cours 2 (1h30) Makefile, CMake, CTest et les tests unitaires avec Boost - E. Ramat (LISIC-ULCO) - présentation - dépôt git
- Cours 3 (2h) Gestion de versions centralisées et distribuées. - G. Quesnel (INRA)
- Comparaison entre centralisé et distribués
- Étude de Git
- Le reste de TP seront tous en utilisation de systèmes de gestion de version.
- Cours 4 (3h) Design pattern - E. Ramat (LISIC-ULCO) - présentation - dépôt git
- Cours 5 (3h) Boost : un aperçu, smart pointers, interopérabilité Python-C++ et tests unitaires - E. Ramat (LISIC-ULCO) - présentation - dépôt git
- Cours 6 (6h) - G. Bourguin (LISIC - ULCO)
- Environnement de développement collaboratif.
TD/TP
- TD/TP 1 (5h) - E. Ramat (LISIC-ULCO) - Les tests unitaires en Python et C++ - sujet
- TD/TP 2 (4h) - G. Quesnel (INRA) - Git - L'apprentissage se ferait à l'aide du TP1
- TD/TP 3 (9h) - E. Ramat (LISIC-ULCO) - Design patterns et C++ - présentation de pygtk - sujet
- TD/TP 4 (3h) - E. Ramat (LISIC-ULCO) - Interopérabilité Python - C++ avec Boost
- TD/TP 5 (27h) - Projet de développement avec la méthode XP - E. Ramat (LISIC-ULCO)
- Analyse et conception du projet en UML
- Trac pour la gestion du projet (guide d'installation)
- Gestion de versions avec git pour le code
- CMake pour la gestion de la compilation
- Tests
- cppunit ou Boost::test pour la version C++
- pyUnit pour Python
- JUnit pour Java
- Coding style
- pour le C++ : coding style
- Internationalisation de code
- Documentation
- doxygen, JavaDoc
- lien vers le sujet
- TD/TP 6 (9h) - G. Bourguin (LISIC - ULCO)
- Ecriture d'un plugin pour Eclipse
Module Migration vers le libre et intégration du Libre
Les annuaires et leur applications (OpenLDAP vs ActiveDirectory). Migration des bases de données (Postgres. Linux embarqué. Voix sur IP et Astérisk.
Intervenants 2010-2011
- J. P. Argudo (Dalibo) - PostgreSQL [3h + 9h]
- D. Duvivier (LISIC - ULCO) - LDAP [3h + 15h]
- E. Lécharny (???) - LDAP avancée [3h + 4h + 8h]
- O. Harand (???) - Astérisk [0h + 9h]
- S. Bocahu (???) - OpenWRT et SheevaPlug [4h + 3h + 5h]
- P. Ficheux (OpenWide) - Linux embarqué et temps réel, Xenomai, QEMU et ARM9 [2h + 2h]
- S. Bourdeauducq (???) - System on Chip et Milkymist [0h + 5h TD + 3h de conf]
Cours
- Cours 1 (3h)
- Les annuaires LDAP (première partie) - D. Duvivier (LISIC - ULCO)
- Cours 2 (3h)
- Les annuaires LDAP (deuxième partie) - E. Lécharny (???)
- Cours 3 (3h) Migration des bases de données - PostgreSQL - Jean-Paul Argudo (Dalibo)
- Cours 4 (3h) - O. Harand (???)
- Etat de l'art d'une application de VoIP aujourd'hui ;
- Présentation plus détaillée des couches de VoIP à l'aide d'Astérisk
- Cours 5 (4h) - Linux embarqué (OpenWrt) - S. Bocahu (???)
- panorama des solutions logicielles et matérielles
TD/TP
- TD/TP 1 (24h) - D. Duvivier (LISIC - ULCO)
- LDAP (première partie)
- TD/TP 2 12h) - E. Lécharny (???)
- LDAP (deuxième partie)
- TD/TP 3 (6h) - Jean-Paul Argudo (Dalibo)
- Migration des bases de données - PostgreSQL
- Création d'un cluster PostgreSQL
- TD/TP 4 (9h) - O. Harand (???)
- Astérisk
- TD/TP 5 (8h) - S. Bocahu (???)
- développement d'un serveur web de diffusion d'images temps réel provenant d'une webcam à l'aide de GuruPlug Server et d'OpenWRT
- TD/TP 6 (4h) - P. Ficheux (OpenWide)
- Linux embarqué et temps réel, Xenomai, QEMU et ARM9
- TD/TP 7 (5h) - S. Bourdeauducq (???)
- System on Chip et Milkymist
Module L’environnement du libre
Historique du phénomène Logiciels Libres. Notions de propriétés intellectuelles. Les licences logicielles (http://www.opensource.org/licenses/). L’informatique libre et le droit des acheteurs. Environnement économique des logiciels libres. Les logiciels libre dans les collectivités locales et territoriales.
Intervenants
- F. Couchet (April) [6h + 0h] - Histoire, concepts, ... du Libre
- L. Dachary [6h + 3h] - licences / aspect communautaire
- A. Monville (Ayeba) [6h + 0h] - LL et collectivités
Cours
- Cours 1 (3h) Histoire et les concepts des logiciels libres - Frédéric Couchet (April)
- Les principaux avantages du Logiciel Libre (éthiques, techniques, économiques) sont présentés.
- Cours 2 (3h) Aspects légaux et modèles économiques - Frédéric Couchet (April)
- Cours 3 (3h) Aspects juridiques des logiciels libres - Loic Dachary (???)
- Comment fonctionnent les principales licences de logiciels libres ? Comment les utiliser et les faire respecter (pour un particulier ou en entreprise) ? Quelles menaces juridiques pour les auteurs de logiciels libres ? Comment réagir en cas d'attaque ou cas de violation des licences ?
- Cours 4 (3h) Gestion de projet de logiciels libres et aspects communautaires - Loic Dachary (???)
- Qu'attendre des communautés de développeurs de logiciels libres ? Comment aggréger une communauté autour d'un projet libre ? Comment optimiser la coopération au sein du projet (principes de gestion de projet et aspects humains) ? Quelle communication pour quel projet ?
- Cours 5 (3h) Les logiciels libre dans les collectivités locales et territoriales - A. Monville (???)
- Particularités des collectivités territoriales qui invitent au recours au Libre : archivage, interopérabilité, pérennité des données, préservation confidentialités, maîtrise des ressources (indépendance)...
- Cours 6 (3h) Les logiciels libre dans les collectivités locales et territoriales - A. Monville (???)
- Difficultés rencontrées et modèles réussis : logiciels métiers traditionnellement propriétaires, mutualisation et partage des coûts, développements internes, recours aux SSLL.
TD/TP
- TD 1 (3h) Etablir une "stratégie communautaire" pour un projet donné sur le module plus axé gestion de projet. - Loic Dachary (???)
Module Management du libre
Rappel sur la gestion de projets informatiques. Spécificités de la gestion des projets de développement de logiciels libres. Impact des logiciels libres sur le Marketing des services informatiques.
Intervenants
- M. Atallah (Caritat Group) [3h + 8h]
- Camille Harang (???) [8h + 0h]
Cours
- Cours 1 (3h) Dynamique Business - M. Atallah
- Création d'une société dans le libre
- Transformer une idée en plan d'affaires
- Maintenir et développer son business
- Trouver les bons partenaires
- But de la structure - un société Open Source comme outil Marketing
- Quelles questions se posent les financiers sur une société
- Comprendre les appréhensions du LL
- Les modèles économiques du libre : éditeur, intégrateur, SSLL
- Le modèle propriétaire sur Linux
- Cours 2 (3h) Le marché du LL - ???
- La place des LL dans le marché informatique mondial
- Bref historique informatique
- La naissance et l'évolution des LL
- Les grands domaines de l'informatique, les fournisseurs de technologie
- L'émergence d'un nouveau standard logiciel et recomposition du paysage
- Évolution du marché de l'informatique mondial
- Stratégie des LL
- La place des LL dans le marché informatique mondial
- Cours 3 (2h) Le marché du LL - suite - '???
- Structure d'un projet libre
- organisation
- environnement juridique,
- internationalisation
- Évolution du marché
- évolution technologique
- environnement concurrentiel
- Structure d'un projet libre
- Cours 4 (3h) Le modèle de Création de valeur autour des services OpenSource - ???
- Structurer le service autour de l'open source
- Mettre en valeur les produit, les diffuser, accompagner les entreprise et les utilisateurs. (Modèle mixte)
- Décomposition de la structure des coûts, dans l'industrie logicielle
- Un panorama sur l'économie des Logiciels libres
- L'environnement concurrentiel
- Les modèles économiques des acteurs du libre.
- Environnement économique des logiciels libres.
TD/TP
- TD 1 (3h) Commencer par définir un plan d'affaires - M. Atallah
- définir une idée (outil brainstorming / affinity diagram)
- évaluer sa viabilité (outil 5-Forces)
- choisir son positionnement (important - exemple industrie aérienne)
- décrire le business et poser des chiffres (décomposer pour expliquer et tableur)
- TD 2 (2h) Construire un projet libre de A à Z - M. Atallah
- un projet
- une technologie
- une équipe
- un business modèle, ...
- TD 3 (3h) Construire un projet libre de A à Z - M. Atallah
- soutenances par groupe de 2 ou 3 étudiants

