Projet 2025 - éléments d'administration


Contenu

  1. Échéancier
  2. Barème
  3. Gestion des équipes (inscriptions, changements, etc.)
  4. Composition des équipes (responsable, membres, salle, etc.)
  5. Travailler en groupe

Échéancier

Pour que vous puissiez jugez de votre état d'avancement dans la réalisation du projet, et savoir ce qui vous attend pour la suite, vous trouverez ci-après un échéancier, rappelant la date des événements importants (inscription, rendu, ...), et indiquant en regard de chaque semaine les tâches que vous devriez normalement avoir terminées et les descriptifs plus précis de celles-ci.

Naturellement, c'est à vous de gérer le temps que vous consacrez à la réalisation du projet. Pour éviter une surcharge de travail en fin de semestre, tâchez cependant de respecter au mieux cet échéancier, et évitez surtout d'accumuler du retard.

Pour vous aider à vous organiser, chaque exercice du projet possède (voir le barème plus bas) un niveau de difficulté de 1 à 3 (comme pour les séries), suivi parfois du signe * indiquant que l'exercice est nécessaire pour la suite. Cela ne veut pas dire que les exercices sans * sont optionnels (tous les exercices comptent !), mais simplement que si vous ne faites pas un «exercice *» vous risquez d'avoir des problèmes pour continuer le projet. Fondamentalement, tous les exercices de P1 à P8, sauf P2, sont «*» et tous les exercices de P9 à P12 (et P2) ne sont pas bloquants pour la suite et vous permettent de vous organiser plus librement.

Par exemple un exercice indiqué [2*] est un exercice niveau 2 qu'il est conseillé de faire avant de passer à la suite.
Note : il n'y a aucun exercice [3*].

Date de finalisation Tâche(s) à réaliser Descriptifs détaillés
1 20/02/2025
  • Prise de connaissance du projet
  • Mise en place de l'environnement de travail (répertoire, fichier JOURNAL)
Présentation du projet
2 27/02/2025 Descriptif des tâches à réaliser
3 06/03/2025
  • Mise en place de la modularisation (Makefile)
  • Mise à jour du journal
Descriptif des tâches à réaliser
4 13/03/2025 Descriptif des tâches à réaliser
5 20/03/2025 pause pour respirer
[profitez en peut être pour rattraper un éventuel retard si nécessaire, ou, pour l'un des deux, regarder le graphisme, si vous avez décidé d'en mettre dans votre projet]
6 27/03/2025
  • Intégrateurs
  • Objets, champs de forces et contraintes
  • Mise à jour du journal, des réponses et de la conception
Descriptif des tâches à réaliser
7 03/04/2025
  • Développement du système complet
  • Simulation (première version, en mode texte)
  • Mise à jour du journal, des réponses et de la conception
Descriptif des tâches à réaliser
8 10/04/2025
  • Version graphique de la simulation
  • Mise à jour du journal, des réponses et de la conception
Descriptif des tâches à réaliser
9 17/04/2025 rien (midterm)
[profitez en peut être pour rattraper un éventuel retard pendant le temps libre du reste de la semaine]
10 01/05/2025
  • Simulations plus complexes
  • Mise à jour du journal, des réponses et de la conception
Descriptif des tâches à réaliser
11 08/05/2025
  • Autres intégrateurs
  • Mise à jour du journal, des réponses et de la conception
Descriptif des tâches à réaliser
12 15/05/2025
  • Extensions (optionnelles)
  • Finalisation.
  • Mise à jour du journal, des réponses et de la conception
Descriptif des tâches à réaliser
13 22/05/2025 Finalisation (et rendu ?) r
14 (*) 01/06/2025 23:59

Toutes les équipes doivent avoir rendu leur projet (fichiers sources).

Les modalités du rendu seront décrites ici en temps utile.


Barème

Au sujet de la tricherie

L'échange d'idées entre groupes ou avec des tiers est autorisée (et même recommandée). Par contre, l'échange de code est strictement interdit ! Cela inclut la diffusion de code, en particulier sur le forum (mais aussi sur des sites d'archive publics). Le plagiat de code de quelque façon que de soit et quelle qu'en soit la source sera considéré comme de la tricherie (et peut, en plus, suivant les cas s'avérer illégal et passible de poursuites pénales).

En cas de tricherie, vous recevrez la note «NA», soit pour le projet, soit même pour l'entièreté du cours. Vous serez de plus dénoncé(e) et puni(e) suivant l'ordonnance sur la discipline.
(je me permets également de vous rappeler le code d'honneur et le code de déontologie dont vous avez pris connaissance au début de vos études).

Dans tous les cas, il est fortement conseillé de pouvoir expliquer toutes les lignes de code de son projet.

Le projet se fait par groupes de deux. Chaque groupe ne rend qu'une «copie», et les deux étudiants reçoivent, sauf cas exceptionnels, la même note.

Le projet est noté sur 36 points en tout répartis comme indiqué ci-dessous. Pour chacun des aspects codage (c.-à-d. tout sauf les premiers 6 points ci-dessous), les points correspondants seront répartis en environ 2/3 pour le codage lui-même (1/3 pour la compilation, 1/3 pour l'exécution correcte), 1/6 pour la conception et 1/6 pour le style et les commentaires.
Un malus de 0.1 sur la fraction pourra être appliqué en cas de mauvaise programmation manifeste (p. ex. variables globales abusives, new sans delete, pas de POO, etc.).

Il est impératif que le projet compile et s'exécute correctement sur les VMs de l'Ecole (VM IC-CO-IN-SC), seules machines officielles de ce cours.

Un projet sans polymorphisme ne pourra pas avoir plus que 0.65 (c.-à-d. pas plus que 24 points, ce qui correspond à une note maximale de 4.5).

Un malus de 0.2 sur la fraction pourra être appliqué en cas de non contact avec son assistant responsable.

Je rappelle également que la note fractionnaire obtenue sur le projet

Grille des points

semaine description niveau points frac. max.
possible
note max.
possible
- Général Rendu, présentation, commentaires
(JOURNAL, README, ...)
- 1.5 6 0.17 2.0
Réponse aux questions (REPONSES) - 2
Conception (CONCEPTION) - 2.5
2 Vecteurs (dim. qcq) P1 1* 2 0.22 2.25
3 Moduralisation P3 (Makefile, ...) 2* 3 0.31 2.75
4 Révision des vecteurs P4 (testVecteur.cc) 1* 2 5 0.44 3.25
Point matériel et gravité P5 (testPointMateriel.cc) 2* 3
6 Objets et Intégrateurs P6 (testIntegrateur[123].cc) 2* 2 5 0.58 4.0
Forces et contraintes P7 (testPointMateriel.cc, testPomme.cc) 2* 3
7 Système P8 2* 3 5 0.72 4.75
Première simulation (mode texte) P9 (exerciceP9.cc) 2 2
8 Graphisme (P2,) P10 (exerciceP10.cc) 2 5 0.86 5.5
10 Simulations plus complexes P11 3 3 0.94 5.75
11 Autres intégrateurs P12 2 2 1.0 6.0
TOTAL 36  
 
- Extensions par extension : (mais maximum 4 points) 2 1.00 6.0

Administration des équipes

Inscription

Si vous n'êtes pas dans la liste ci-dessous, inscrivez votre équipe (binôme) au moyen du formulaire ci dessous.

PENSEZ A VOUS INSCRIRE : vous n'avez que jusqu'au 13 mars pour le faire ! Après c'est moi qui décide...

Membre 1 : pas dans la liste ?
Membre 2 : pas dans la liste ?
Salle souhaitée :

Changements

Si vous désirez changer la composition de votre équipe, envoyer un mail en cliquant ici en indiquant dans le corps du mail tous les renseignements nécessaires (personnes concernées, nouvelles équipes formées, etc.).

Composition des équipes

Pour trouver votre équipe, cherchez votre nom à l'aide du navigateur (Ctrl+f)

[Attention ! La validation des inscriptions étant manuelle, votre nom n'apparaîtra dans cette liste qu'un certain temps après l'inscription.]

Équipe no
Équipier(e)s Assistant responsable Salle
1 Askerov Samir Büll Nolan Ghalia+Laurena CO-020
2 Ammari Amin Valentini Martina Pauline CO-120
3 Weber Stéphane Häfliger Nina Rachel Rached CO-020
4 Cid Vlàdulescu Kevin Czáka Guillaume Arthur CO-021
5 Marrero Castro Mayté Gueissaz Flamelios Blanche CO-021
6 Huart Maéva Jade Justine Eveno Nils Pierre Kamiel Cedric CO-021
7 Badertscher Camille Cécile Janine Piaser Margot Lila Doris Maud CO-021
8 Jenne Annika Thürler Valentine Mohamed CO-021
9 Costa Padilla Marco Darwiche Nael Mathurin+Takuma CO-023
10 Pichonnaz Eloi Fabrice Recio Valcarce Inés De Asís Mathieu CO-023
11 Andriessen Jacobine Panthea R. Morel Margaux Noémie Ghalia+Laurena CO-020
12 Trifu Ioan-Adrian Rilliet Elisa Simone Rached CO-020
13 Calatroni Matthias Lekimpe Valentino Arthur CO-021
14 Abbas Ahmed Hisham Abbas Hassan Lachat Ayrton Jean-Noël André Blanche CO-021
15 Cremel Martin Merifield-Bégin Mathieu Stéphane Cedric CO-021
16 Fernandez-Sampedro Hugo Mangin Jules Robert Patrick Maud CO-021
17 Daval Oscar Antoine Trommsdorff Luca Pierre Volkmar Félicien CO-120
18 Erle Theo Willi Guerrouaz Kynan Mohamed CO-021
19 Allard-Couluon Constant Louis Marie Asvazadourian Matthieu Iannis Mathurin+Takuma CO-023
20 Aboussoror Delia Hiba Betea Roxana-Maria Mathieu CO-023
21 Gates Benjamin Alan Sean Emery Téo Ghalia+Laurena CO-020
22 Bedouelle Geoffroy Remilson Alain Malchirand Gabriel Rémy Edouard Rached CO-020
23 Brocas Clovis Trouvat Maya Arthur CO-021
24 Tchamkerten Lorelei Naz--Hyppolite Ella Marie Anne Blanche CO-021
25 Belloir Louis Arthur Olivier Glendinning Maximilien David Jean Pauline CO-120
26 Bardy Ariane Miranda Laurence Mbarek Iyed Cedric CO-021
27 Katz Marie Victoria Miauton Silas Maud CO-021
28 Flieller Clément Claude Mattéo Meunier Louise Éléonore Philippine Mohamed CO-021
29 Kerivin Eliott William Marie Pokorny Matyas Mathurin+Takuma CO-023
30 Ogé Victor Joro Claude Grosjean Victor Albert Paul Mathieu CO-023
31 Urwyler Arnaud David Sineau Martin Pierre Benoit Félicien CO-120
32 Abdelghafar Marwan Amir Imbiky Nathan Mandresy Pauline CO-120
33 Otero Berges Pablo Leblond Alban Ghalia+Laurena CO-020
34 Cullen Julian Sean Rébois Élouan Serge Rached CO-020
35 Garcia Elias Serillon Gregory Adrian Félicien CO-120
36 Reimerdes Killian Johannes Leuba Jules Henri Pauline CO-120
37 Suard Unger Luka Paulo Macholt Cleophee Marie Arthur CO-021
38 Olivier Virgile Jean Adrien Cohendet Mattéo Yves Antonio Félicien CO-120
39 Hegedic Ivan Balan Andreea-Monica Blanche CO-021
40 Snow Jonathan Samuel Dufour Ruth Rebecca Pauline CO-120
41 Bernardini Antonio Citraro Ian Leo Cedric CO-021
42 Soudovtsev Daniel Mathey Florian Maud CO-021
43 Sierro Shayna Léanne Henry Nathan Mohamed CO-021
44 Bokhari Khomsi Ilyas Matencio Montana Yamato Mathurin+Takuma CO-023
45 Fahrni Ilona Kambara Mei Violaine Mathieu CO-023
46 Eliezer Mathys Keemann Baptist Weimar Auriane Romane Félicien CO-120
47 Fiore Enzo Raphael Michel Chanex Eliott Pauline CO-120
48 Romieux Nathan Louis Robert Decostaire Eliott Ghalia+Laurena CO-020
49 Chavaillaz Loïc Michel Krümel Thomas Rached CO-020
50 Coquillard Clara Marie Lescure Candice Marie Félicien CO-120
51 Talbi Salem Rayan Lacroix-Thiery Lou-Anne Pauline CO-120
52 Michel Tristan Vincent Etienne Floure Edouard Raphaël Grégoire Arthur CO-021
53 Guillaume Samuel Ardevol Arnó Pierre Félicien CO-120
54 Juillerat Elias Delatour Jérôme Jean-Pierre Paul Blanche CO-021
55 Mimoun Julie Aiko Rosillo Pablo Carlos Joseph Cedric CO-021
56 Balducchi Paul-Emile Philippe Marie De Lentdecker Gaëtan Louis J Pauline CO-120
57 Mac Giolla Phádraig Ruadhán Michael Kaabi Skander Maud CO-021
58 Meinrad Zoé Segaud Abigaïl Yiyi Marie Roselyne Félicien CO-120
59 Prieto Marcos Carron Fabio Mohamed CO-021
60 Blondel Romain Jabri Mathieu Naël Mathurin+Takuma CO-023
61 Joujou Leen Pellier Eléna Romane Mathieu CO-023
62 Thomas Cyriel Loïs Schweizer Tobias Johannes Ghalia+Laurena CO-020
(Dernière mise à jour : jeu 27 fév 14:00:43 2025)

Travailler en groupe

L'architecture en place (machines virtuelles) limite malheureument fortement les moyens de collaborer facilement sur un même répertoire (pas de partage de fichiers). Il vous faudra donc malheusement procéder par échange/copie de fichiers comme indiqué par exemple dans le le wiki des utilisateurs des salles CO.

Note :

Les plus avancé(e)s d'entre vous peuvent ignorer la suite et utiliser un gestionnaire de versions (GIT, Mercurial, ...). Voir si nécessaire ici pour une première introduction et/ou ici la référence officielle (mais bon !... ne vous lancez pas là dedans si vous n'y connaissez rien !).

Pour votre organisation, je propose que l'un d'entre vous garde de façon séparée de son propre répertoire de travail, une version d'archive «officielle» et à jour. En clair, un des deux aura (au moins) deux répertoires : un de travail personnel et un d'archive du groupe. L'autre membre du binôme n'aura que son répertoire de travail personnel. Les échanges se faisant par copie entre ces différents répertoires (attention de ne pas écraser la version qui fonctionne, laquelle est conservée dans le répertertoire d'archive «officielle»).

Le point important (concept de base) de cette organisation est de séparer clairement endroit de travail et endroit de référence/d'archivage.

Peut être pour compléter, au niveau méthodologie :
si vous vous êtes bien réparti le travail (et avez bien compris le cours sur la compilation séparée) :

  1. vous commencez par écrire le .h (du module dont vous êtes responsable) ;
  2. une fois ceci fait, vous le proposez à votre binôme ; vous le discutez ensemble et soit vous êtes d'accord et passez au point 3 ; soit vous retournez au point 1 ;
  3. vous écrivez un .cc correspondant, mais « vide » : chaque méthode ne fait rien ou juste un cout ou retourne un truc bidon, tout simple ;
  4. vous donnez le .h et le .cc à votre binôme qui peut du coup travailler sur sa partie indépendamment (et aura d'ailleurs déjà commencé à le faire ; au point 1 pour sa partie ) et surtout compiler avec la vôtre ;
  5. vous écrivez, de votre coté, le vrai .cc correspondant, méthode par méthode et vous le testez (je conseille d'écrire un test-MACHIN.cc avec MACHIN le nom de la classe sur laquelle vous travaillez) ;
  6. quand vous êtes convaincu(e) que c'est tout bon vous donnez le .cc (et le test-MACHIN.cc) à votre binôme.

Je conseille aussi d'avoir (au moins) deux répertoires séparés :

Lorsque vous copiez des choses de votre « brouillon » au propre et les codes « propres » reçus de votre binôme, je conseille de le faire à deux sur la même machine et regarder que tout va bien (compilation, exécution, bons résultats).

Je conseille même de faire des copies pour archive des « propres » à des étapes importantes (et ne plus y toucher). Cela permet d'éviter les catastrophes (surtout en fin de semestre (« Mais Monsieur la semaine passée tout marchait bien et j'ai juste changé un truc et là j'ai plus une version qui marche »)).


Dernière mise à jour le 7 février 2025
Last modified: Fri Feb 7, 2025