GLO-4002 - Site du cours 2023

Le projet de session 2023

Le projet en bref

  • Se déroule pendant la majeure partie de la session
  • En équipe
  • 4 livraisons/mise en production (MeP) (voir évaluation plus bas)
  • 2 revues de code (voir évaluation plus bas)
  • Le projet évalue :
    • votre capacité à produire du code de qualité et facile à maintenir/modifier donc testable et testé,
    • votre capacité à respecter une spécification (API),
    • votre capacité à comprendre et implémenter des requis déjà donnés.
  • Nous n’évaluons pas à ce stade du programme votre capacité à recueillir des besoins ou interagir avec le client (ce qui est important mais qui sera couvert dans un autre cours). Nous vous fournirons donc les spécifications et les détails des fonctionnalités à implanter.
  • Demande du temps, de la collaboration et d’adopter un rythme continu mais soutenable.
  • Un(e) auxiliaire d’enseignement sera attitré(e) à chaque équipe (« votre auxiliaire »).

Votre auxiliaire

  • Votre auxiliaire vous accompagnera et sera présent(e) environ 1 h par semaine lors de la séance de travail du cours (typiquement les lundis).
  • La vaste majorité des auxiliaires du cours sont des professionnel(le)s d’expérience dans l’industrie qui veulent aider et redonner.
  • Conseil : profiter de leur présence pour poser des questions et discuter (même sans lien avec le projet). Restez ouverts! Le but primaire du cours est… d’apprendre!
  • Profitez des séances de travail pour montrer votre code à votre auxiliaire. Il(elle) a le droit de commenter informellement votre code et de vous guider – mais sans vous donner les réponses 😉.

Règles

  • Il n’est pas possible de changer d’équipe en cours de session.
  • La contribution active et soutenue est attendue et obligatoire de la part de tous les membres (voir les pénalités).
  • Un réajustement de la note peut être effectué afin de refléter le niveau et l’atteinte des objectifs individuels par rapport à ceux du groupes.
  • Votre présence et votre participation aux rencontres d’équipe et avec votre auxiliaire (séances généralement en direct) sont obligatoires.
  • L’ouverture des caméras est obligatoire lors des rencontres en direct.
  • Tous les membres de l’équipe doivent être en mesure de faire toutes les tâches : gestion des sources, écrire ses propres tests unitaires, développer, réusiner, tester, déployer, etc.
  • Il n’y a pas de remise tardive possible. Nous prélèverons le code de la branche indiquée au plan de cours et dans les instructions plus bas à la date et à l’heure donnée. Si elle n’existe pas ou n’est pas accessible, une note de zéro (0) sera accordée.
  • Nous ne corrigeons pas du code :
    • qui ne compile pas,
    • qui n’a pas ou trop peu de tests unitaires,
    • dont les tests unitaires ne passent pas,
    • qui visiblement n’a pas été écrit avec le soucis professionnel attendu.

Conseils

  • Travaillez chaque semaine à un rythme soutenable. Ce projet ne pardonne pas le travail à la dernière minute.
  • Considérez que vous aurez régulièrement du réusinage à faire, encore plus après la revue de code.
  • Les fonctionnalités sont volontairement trop grosses pour être réalisée par une seule personne. C’est à vous de découper le travail en conséquence…

🤓 Astuces

  • Découper fonctionnellement : INVEST et tranche (slicing)
  • Faire de la programmation en binôme (plusieurs binôme) et/ou de la programmation en groupe (mob programming).

Quelques autres conseils laissés par les étudiant(e)s des dernières années

Comme vous nous aviez dit: travailler régulièrement tout au long de la session, ce que j'ai fait chaque semaine et qui a été payant je pense!

Mettre des efforts constants, autant dans le projet que dans le cours, plutôt que de faire un "blitz" avant les remises

Ça vaut la peine de s'investir! Prenez des notes en écoutant les capsules, faites les exercices, investissez-vous dans le projet, posez pleins de questions aux revues de code. C'est un gros investissement de temps et vous n'aurez peut-être pas les notes que vous espérez, mais c'est le cours le plus important que vous ayez eu à date!

Dans votre projet, la solution la plus simple est très souvent la meilleure à faire. À trop penser à l'architecture de notre code, on l'a rendu trop complexe et on a du faire beaucoup de refactor. Aussi essayer de comprendre pourquoi utiliser les principes et pas seulement le comment les utiliser.

Le projet est vraiment lié aux concepts du cours, voir les capsules au fur et à mesure permet de les mettre en pratique au plus vite !

Rester à jour et commencer rapidement les livrables. Nous n'avons jamais été à la course car nous donnions un effort constant.

Ne pas perdre de temps, mais réfléchir de manière intelligente au chemin à emprunter.