Aller au contenu

Projet personnel (100%)

Mise en contexte

Le projet personnel est la conclusion de votre diplôme. Durant les prochaines 45 heures, vous aurez à réaliser un projet de petite envergure et de le présenter durant les dernières heures du cours.

Le projet doit utiliser une technologie qui a été vue durant votre parcours scolaire, ou une technologie que vous maîtrisez déjà. Comprenez que vous n’avez que deux semaines pour réaliser un produit fonctionnel. De plus, un projet qui utilise un engin de jeu (ex : Unity, Unreal ou Godot) sera refusé.

En plus de l’évaluation des livrables, quelques points seront accordés à l’autonomie au respect.

Utilisation de l'intelligence artificielle générative

Vous pouvez utiliser l'intelligence artificielle générative, tel que GitHub Copilot ou ChatGPT, pour vous aider dans la réalisation de votre projet. Cependant, vous devez être capable de comprendre le code généré et de l'expliquer à l'enseignant.

Livrables

Fiche de projet

Avant de débuter la programmation de votre projet, vous devez remplir la fiche de projet intitulée « F001–Fiche-de-projet.docx ».

Vous devez :

  • Justifier la technologie utilisée et la comparer à une technologie similaire ;
  • Décrire le projet en quelques phrases ;
  • Décrire les deux livrables du projet, un à la fin du jour 4 et un à la fin du jour 7 ;
  • Dresser la liste des fonctionnalités de chaque livrable.

À noter : votre projet final sera évalué selon la fiche de projet. Assurez-vous de pouvoir réussir toutes les fonctionnalités décrites.

La fiche de projet doit être remise à la fin du jour 1.

Journal d’expérimentation

Chaque jour, vous devrez remplir votre journal d’expérimentation. Utilisez le document « F002–Journal.docx » comme journal. Vous devez ajouter deux entrées à chaque jour, contenant les éléments suivants :

  • Quel problème ou enjeu a été rencontré ;
  • Quelle solution ou contournement a été utilisé. S’il n’y a pas eu de solution, expliquer pourquoi.

Une version à jour du journal devra être remis à 16h à chaque jour, sauf au jour 8.

Présentation individuelle de l’environnement de développement

Durant le jour 2, l’enseignant fera un audit de votre environnement de développement. Vous devrez démontrer que vous pouvez compiler et exécuter un programme de base, du style « Hello World! »

Code du projet

Le code de votre projet doit refléter les standards et la qualité qui est exigée durant l’ensemble de votre formation.

Voici les éléments recherchés dans la qualité du code :

  • Respect des normes de programmation
  • Respect de la syntaxe du langage
  • Choix approprié des types de variables et des structures de données
  • Algorithmes efficaces et lisibles (logique claire)
  • Absence de bogues

Le code doit être bien documenté dans un français impeccable.

L’interface utilisateur de votre projet doit être en français.

Les tests fonctionnels sont clairement notés dans un fichier placé dans le dossier dev et ils sont pertinents et complets (note : en bas de 30 cas d'essai, il est impossible que les tests fonctionnels soient complets)

Le projet doit contenir 100% des fonctionnalités décrites dans la fiche de projet.

Le projet doit être remis à 16 :00 le jour 7.

Présentation finale

Au jours 7 et 8, chaque élève présente son projet personnel en entrevue avec l’enseignant.

La présentation est une démonstration de toutes les fonctionnalités développées et une explication du code par une série de question de l’enseignant.

L’entrevue se fait dans une salle isolée des autres élèves et a une durée de 20 à 30 minutes.

Grille de correction

Élément Excellent Satisfaisant Minimal Faible Insuffisant
Fiche de projet
Justification de la technologie La technologie utilisée est adéquatement justifiée et comparée à une technologie similaire

6 points
La technologie utilisée est adéquatement justifiée

3 points
La technologie n'est pas justifiée

0 point
Description du projet Le projet personnel est décrit clairement avec les termes appropriés du domaine ciblé

5 points
Le projet personnel est décrit clairement

2 points
Le projet personnel n'est pas bien décrit

0 point
Liste des fonctionnalités La liste des fonctionnalités est complète et indique l'effort de chaque implémentation en heures

3 points
La liste des fonctionnalités est complète mais n’indique par le nombre d’heures par fonctionnalité

1 point
La liste des fonctionnalités est incomplète ou inexistante

0 point
Liste des livrables Le projet a deux livrables distincts

3 points
Le projet n'a qu'un seul livrable

1 point
La fiche de projet ne mentionne pas les livrables

0 point
Environnement de travail L'environnement de travail est fonctionnel pour le projet et l'élève peut compiler un "Hello World"

3 points
L'environnement de travail n'est pas fonctionnel pour le projet ou l'élève ne peut pas compiler un "Hello World"

0 point
Journal d'expérimentation
Jour 1 Au moins deux entrées valides ont été faites à temps

2 points
Au moins une entrée valide a été faite à temps

1 point
L'entrée a été faite en retard ou pas du tout

0 point
Jour 2 Au moins deux entrées valides ont été faites à temps

2 points
Au moins une entrée valide a été faite à temps

1 point
L'entrée a été faite en retard ou pas du tout

0 point
Jour 3 Au moins deux entrées valides ont été faites à temps

2 points
Au moins une entrée valide a été faite à temps

1 point
L'entrée a été faite en retard ou pas du tout

0 point
Jour 4 Au moins deux entrées valides ont été faites à temps

2 points
Au moins une entrée valide a été faite à temps

1 point
L'entrée a été faite en retard ou pas du tout

0 point
Jour 5 Au moins deux entrées valides ont été faites à temps

2 points
Au moins une entrée valide a été faite à temps

1 point
L'entrée a été faite en retard ou pas du tout

0 point
Jour 6 Au moins deux entrées valides ont été faites à temps

2 points
Au moins une entrée valide a été faite à temps

1 point
L'entrée a été faite en retard ou pas du tout

0 point
Jour 7 Au moins deux entrées valides ont été faites à temps

2 points
Au moins une entrée valide a été faite à temps

1 point
L'entrée a été faite en retard ou pas du tout

0 point
Livrable
Le projet est fonctionnel Le projet s'exécute sans erreur

10 points
Le projet s'exécute

5 points
Le projet ne s'exécute pas

0 point
Contenu du livrable 100% des fonctionnalités sont exécutées avec succès

10 points
80% des fonctionnalités sont exécutées avec succès

8 points
60% des fonctionnalités sont exécutées avec succès

6 points
40% des fonctionnalités sont exécutées avec succès

4 points
Moins de 40% des fonctionnalités sont exécutées avec succès

0 point
Explications du code (en entrevue) L’élève comprend complètement le code écrit et l’explique clairement

20 points
L’élève comprend le code écrit mais éprouve des difficultés à l'expliquer

16 points
L’élève comprend partiellement le code écrit

12 points
L’élève ne comprend pas le code écrit

0 point
Documentation du code Le code est parfaitement documenté

10 points
Le code est partiellement documenté

5 points
Le code n'est pas documenté adéquatement

0 point
Tests fonctionnels Les tests fonctionnels sont clairement notés dans un fichier placé dans le dossier dev et ils sont pertinents et complets (note : en bas de 30 cas d'essai, il est impossible que les tests fonctionnels soient complets)

10 points
Les tests fonctionnels notés sont incomplets

5 points
Il n'y a pas de fichier de tests fonctionnels ou les tests fonctionnels sont insatisfaisants

0 point
La qualité générale de l’application démontre une rigueur dans l’application des procédures d’assurance qualité.
(Correction négative, -1 par bogue identifié)
Attitude
Autonomie L'élève démontre de l'autonomie

3 points
L'élève démontre un manque d'autonomie

0 point
Respect L'élève démontre du respect des règles et de ses collègues

3 points
L'élève n'a pas respecté les règles ou ses collègues

0 point