Modalités
Vous devez vous mettre par groupes de 2 selon les règles détaillées par la suite. Vous pouvez aussi faire le projet tout(e) seul(e) mais les exigences sont les mêmes que si vous étiez en groupe !
Il y a trois niveaux de projets : *
(facile),
**
(moyen), ***
(difficile). Il n'est pas
possible d'obtenir plus de 18/20 avec un projet de niveau
*
. Le niveau ***
est fait pour vous donner un
défi, si la programmation vous intéresse.
En fonction de votre moyenne actuelle du deuxième trimestre :
- moins de 10 : projet de niveau
*
- entre 10 et 13 : projet de niveau
*
ou**
- plus de 13 : projet de niveau
**
ou***
Si vous prenez un projet de niveau **
ou ***
,
la moyenne actuelle du second trimestre des membres du groupe ne peut
pas avoir une différence de plus de 3 points.
Chaque groupe doit choisir un projet différent. Envoyez-moi un message sur Pronote ou sur l'ENT avec le nom de votre coéquipier/ère et au moins trois codes de projets qui vous intéressent (en indiquant un ordre si vous préférez un projet à un autre). J'essaierai de respecter vos choix au mieux mais je ne peux pas garantir que vous obtiendrez votre projet préféré.
Barème
Le barème décompose en 4 parties :
- Fonctionnalités (8 points)
- Palier 1 (0~2/8) : Le programme correspond à peu près aux spécifications demandées
- Palier 2 (2~4/8) : Le programme correspond aux spécifications demandées
- Palier 3 (4~6/8) : Le programme ne présente aucun bug et correspond aux spécifications demandées
- Palier 4 (6~8/8) : Des fonctionnalités supplémentaires ont été ajoutées (des suggestions sont données sur la fiche de chaque projet)
- Algorithmes et code (6 points)
- Utilisation pertinente de structures conditionnelles, de boucles, de variables, etc.
- Utilisation correcte des différents types de valeurs et des fonctions de conversion quand nécessaire
- Décomposition fonctionnelle pertinente (chaque fonction est suffisamment petite, on évite la répétition de code)
- Style du code (3 points)
- Respect des règles de style vues en cours
- Utilisation de noms pertinents pour les variables et les fonctions
- Documentation pertinente des fonctions grâce à des docstrings
- Utilisation pertinente des commentaires
- Interface utilisateur (3 points)
- Bonne organisation visuelle de l'interface
- Cohérence de l'interface
- Communication d'informations à l'utilisateur efficace et compréhensible
- Adaptation à l'utilisateur et gestion des erreurs de saisie
Projets
Voici la liste des projets. Les projets en rouge ont déjà été pris.