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.

DateEtape
19/02Introduction / Géométrie 2D
26/02Dessinateur IFS
05/03Dessinateur Flame
12/03Course d'étude (pas de projet)
19/03Dessinateur Flame couleur
26/03Préparation du rendu intermédiaire
02/04Vacances de Pâques (congé)
09/04Rendu intermédiaire (instructions, horaires de passage, statistiques)
16/04Affichage via Swing
23/04Gestion de la liste des transformations
30/04Bâtisseur Flame observable, interface de modification affine
07/05Application des modifications affines
14/05Interface de modification des poids
21/05Etape libre (bonus)
28/05Rendu 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.

Michel Schinz – 2013-05-31 14:58