Vous êtes chargé de travailler en groupe sur un projet de développement de jeux. Les jeux disponibles pour le projet sont :
- Pac-Man
- Space Invaders (ou autre Shoot ‘Em Up)
- Jeu de Dame (ou jeu d'échec)
- Pong
- Morpion
- Puissance 4
- Othello
- Autres petits jeux simples
Chaque groupe, composé de 3 à 4 étudiants, devra choisir l'un de ces jeux, développer le code en respectant les normes de codage, rédiger un cahier des charges, un plan de test et une documentation technique complète, effectuer des tests unitaires avec un framework de test, pousser le code sur GitHub et effectuer une revue de code sur les pull-request.
- Développez le jeu en respectant les normes de codage.
- Commentez le code de manière claire et explicative.
- Rédigez un cahier des charges décrivant les fonctionnalités, les règles du jeu, les objectifs et les spécifications techniques.
- Élaborez un plan de test détaillé, y compris les scénarios de test, les données de test et les critères d'acceptation. (Plan de test simplifié, sans analyses des risques, juste l’ensemble de vos tests, les critère d’acceptations, et la validation du test)
- Créez une documentation technique complète expliquant l'architecture du jeu et la structure du code.
- Implémentez des tests unitaires pour valider le bon fonctionnement du code du jeu.
- Créez un répertoire sur GitHub : https://github.com/TMareIUT/Projects2024/
[Vos Noms de Famille]_Projet Faites en un fork et poussez régulièrement le code source, la documentation, le plan de test et les tests unitaires. N’hésitez pas à faire de multiples Pull-Request.
- Effectuez une revue de code en utilisant les pull-request sur GitHub pour examiner le code de vos collègues et fournir des commentaires constructifs.
- Le code (Coef 2) : La notation dépendra de la lisibilité, de la maintenabilité, de l'efficacité et de la conformité aux normes de codage et des commentaires.
- Les tests (Coef 2) : La notation dépendra de la couverture des tests, de la pertinence de tests et de la détection d'erreurs et du plan de test fournit.
- La documentation (Coef 1) : La notation dépendra de l'exhaustivité, de la clarté et de la précision de la documentation technique et du cahier des charges.
- Assiduité (Coef 0,5) : Comme nous avons plusieurs heures de TP devant nous, l’assiduité sera également notée, j’entends par là, un développement poussé régulièrement sur Github, assurez-vous d’avoir un repo public afin que je puisse vérifier
- Certains jeux sont plus difficiles à coder que d’autre. Choisissez ce qui vous semble le plus appropriez pour votre niveau de développement.
- Commencez par bien comprendre les règles du jeu que vous avez choisi.
- Organisez-vous en groupe de manière efficace, en attribuant des rôles et des tâches.
- Une tâche -> Une branche -> Une pull-request
- Certains iront puiser du code sur le Net. Assurez vous de ne pas rendre le même code qu’un autre groupe, sinon la note pour le code sera de 0.
- Je ne noterai pas en fonctions du jeu / de la difficulté choisie mais sur la qualité de code et les commentaires.
- Le langage de programmation étant au choix, je dois comprendre votre code avec les commentaires et la documentation technique.