Projet de technologie de l'information
Introduction
Le but du projet de technologie de l'information est de vous permettre de mettre en pratique les connaissances acquises dans le cadre des cours de programmation, à savoir Introduction à la programmation objet et Théorie et pratique de la programmation.
Le projet de cette année, nommé Flame Maker, consiste à réaliser un programme de conception et de visualisation d'images fractales de type Flame. Le projet est présenté rapidement dans le document d'introduction et plus en détails dans les descriptions des étapes hebdomadaires.
Calendrier
Le calendrier ci-dessous présente le découpage en étapes du projet. On accède à la description d'une étape en cliquant sur son lien. Les descriptions des étapes sont mises à disposition au cours du semestre, généralement une semaine avant l'échéance de l'étape.
Vous êtes libres de travailler à votre rythme, mais il est néanmoins fortement conseillé d'avoir toujours terminé les étapes aux dates données, afin de ne pas prendre de retard. De plus, pour chacun des deux rendus, vous devez absolument fournir les fichiers demandés à la date du rendu.
Date | Etape |
---|---|
19/02 | Introduction / Géométrie 2D |
26/02 | Dessinateur IFS |
05/03 | Dessinateur Flame |
12/03 | Course d'étude (pas de projet) |
19/03 | Dessinateur Flame couleur |
26/03 | Préparation du rendu intermédiaire |
02/04 | Vacances de Pâques (congé) |
09/04 | Rendu intermédiaire (instructions, horaires de passage, statistiques) |
16/04 | Affichage via Swing |
23/04 | Gestion de la liste des transformations |
30/04 | Bâtisseur Flame observable, interface de modification affine |
07/05 | Application des modifications affines |
14/05 | Interface de modification des poids |
21/05 | Etape libre (bonus) |
28/05 | Rendu final (instructions) et examen (10h-12h, CO1 et SG1) |
Evaluation
Le projet est évalué durant le semestre. La note est calculée en combinant les résultats obtenus au rendu intermédiaire (comptant pour 40%), au rendu final (40%) et à l'examen (20%). Le projet se fait par groupes de deux personnes, mais l'examen (écrit) est individuel.
Questions et réponses
Si vous avez des questions relatives au projet, vous êtes priés de les poser en premier lieu aux assistants présents durant les heures du projet. En dehors de ces heures, commencez par poser votre question sur le forum, qui se trouve sur la page Moodle du cours. Si vous voyez une question sur ce forum dont vous connaissez la réponse, n'hésitez surtout pas à répondre, il est très important que les étudiants s'entre-aident.
Les assistants garantissent également leur présence dans leur bureau à certaines heures de la semaine, durant lesquelles vous pouvez passer et leur poser des questions liées au projet. Ces heures de présence sont données à côté de leur nom, dans la liste ci-dessous.
Organisation
Formation des groupes
Le projet se fait obligatoirement par groupe de deux. Pour former les groupes, vous êtes priés d'utiliser le formulaire que nous mettons à votre disposition. Notez que vous devez également vous inscrire au cours sur Moodle afin que les groupes puissent être créés sur ce dernier. N'oubliez pas de le faire !
Le délai pour l'inscription des groupes est le dimanche 24 février 2013 à 23h59. Passé ce délai, les étudiants encore seuls seront aléatoirement placés dans un groupe, sans aucune possibilité de changement.
Redoublants
Les redoublants ont la possibilité de ne pas faire la seconde partie du projet (celle qui suit le rendu intermédiaire) et de reprendre leur note finale de l'an dernier pour cette partie. Ils sont néanmoins tenus de faire la première partie du projet et l'examen final.
Les personnes intéressées par cette option sont obligées de travailler seules, et doivent nous faire part de leur décision avant le délai de formation des groupes. Celui-ci passé, elles seront affectées aléatoirement à un groupe comme tout le reste des étudiants.
Gestion de version
Pour faciliter l'organisation du travail et la collaboration au sein d'un groupe, il peut être intéressant d'utiliser un logiciel de gestion de version (version control system ou VCS en anglais). Un tel logiciel permet à plusieurs développeurs de gérer l'ensemble des fichiers composant un projet, de stocker leurs versions successives, les comparer entre-elles, revenir à une version antérieure, etc.
Apprendre à utiliser un tel logiciel demande un investissement en temps assez important. Cet investissement est toutefois justifié dans votre cas, car vous pourrez l'amortir sur la totalité de vos études et probablement de votre carrière.
Les logiciels de gestion de version sont légion, mais il vous est conseillé de porter votre choix soit sur git soit sur Subversion. Ces systèmes sont parmi les plus populaires à l'heure actuelle, et il est donc plus facile de trouver de l'information à leur sujet, des interfaces graphiques, etc. De plus, l'EPFL n'offre un hébérgement de dépôts que pour ces deux systèmes.
De ces deux systèmes, git est le plus puissant et le plus populaire actuellement, mais également le plus complexe à utiliser. Subversion a pour lui l'avantage de la simplicité.
git
Git est un logiciel de gestion de version distribué très utilisé dans le monde du logiciel libre.
Pour vous familiariser avec git, vous pouvez lire les deux premiers chapitres du livre Pro Git, disponible gratuitement en version française à l'adresse http://git-scm.com/book/fr. Un article au sujet de git a également été publié dans le Flash Informatique.
L'EPFL met à disposition un hébérgement de dépôts git à l'adresse http://git.epfl.ch. La documentation concernant cet hébérgement est disponible sur http://wiki.epfl.ch/help-git-fr.
Subversion
Subversion est un logiciel de gestion de version centralisé.
Pour vous familiariser avec Subversion, vous pouvez lire la section 1.1 (Démarrage rapide) du livre Pro Git. Même s'il s'agit d'un livre sur git, il donne une bonne introduction aux concepts de base de la gestion de version, et expose clairement les différences entre un système centralisé (comme Subversion) et un système distribué (comme git).
L'EPFL met à disposition un hébérgement de dépôts Subversion à l'adresse http://svn.epfl.ch. La documentation concernant cet hébérgement est disponible sur http://wiki.epfl.ch/svn-fr.
Equipe
Enseignant
Assistants-doctorants
Les assistants-doctorants sont disponibles dans leur bureau, dont le numéro est disponible en cliquant sur leur nom, aux heures mentionnées. Merci de ne leur rendre visite que durant ces heures. Certains assistants sont indiqués comme non francophones et vous devrez donc dialoguer avec eux en anglais.
- Michele Catasta (non francophone, disponible le vendredi de 12h à 13h)
- Mohammad Dashti (non francophone, disponible le mercredi de 15h30 à 16h30)
- Julien Eberle (disponible le mercredi de 14h à 15h)
- Jean-Eudes Ranvier (disponible le jeudi de 13h à 14h)
- Mehdi Riahi (non francophone, disponible le jeudi de 14h à 15h)
Assistants-étudiants
- Bengiamin Barblan
- Antoine Bastien
- Jocelyn Boullier
- Raffaele Canale
- Jonathan Cheseaux
- Kévin Decoster
- Pierre Gabioud
- Aymeric Genet
- Arthur Giroux
- Jeremy Gotteland
- Bernard Gütermann
- Khalil Hajji
- Manon Henrioux
- Florian Junker
- Raffaele Lauro
- Valentin Matter
- Christian Mouchet
- Matthieu Rudelle
- Nicolas Sanglard