L’objectif de cette ressource est de renforcer les techniques de développement pour assurer la maintenance des applications.
Le projet a comporté plusieurs étapes :
Pour pouvoir tester et maintenir l'application dans un bon état de fonctionnement, il a d'abord fallu concevoir l'application. L'énoncé du projet nous détaillait les différentes classes et fonctionnalités de l'application à développer.
En même temps de développer l'application, j'ai conçu les tests unitaires pour chaque fonctionnalité de l'application et m'assurer que l'application fonctionne comme voulu.
J'ai rédigé un guide pour expliquer comment utiliser l'application, lancer les tests unitaires et comment recréer l'environnement de développement de 0.
Énoncé
Il contient l'énoncé du projet avec les consignes à suivre.
Dépôt GitHub
Il contient le code source de l'application et des tests.
Cette ressource a permis de mettre en œuvre les compétences suivantes :
AC31.01 : Choisir et implémenter les architectures adaptées
et
AC31.02 : Faire évoluer une application existante
et
AC31.03 : Intégrer des solutions dans un environnement de production
et
AC32.02 : Profiler, analyser et justifier le comportement d'un code existant.
J'estime que ce TP prouve ma réussite dans cette ressource puisque j'ai su réaliser les tests unitaires au fur et à mesure du développement de l'application au lieu de pas du tout les réaliser ou à la fin du développement seulement.
J'ai appris à concevoir une application et des tests unitaires, concevoir un guide pour le projet et utiliser différentes librairies de tests. J'ai également appris à utiliser le moteur de production Gradle pour lancer les tests unitaires.
En terme d'acquisition de la compétence AC31.01, je pense que j'ai su choisir et implémenter les architectures adaptées pour l'application et les tests unitaires. En effet, j'ai su organiser mon projet en packages et utiliser des librairies de tests comme AssertJ pour concevoir des tests plus lisibles et maintenables.
En terme d'acquisition de la compétence AC31.02, je pense que j'ai su faire évoluer une application existante. En effet, grâce aux tests unitaires j'ai pu ajuster mes fonctions pour qu'elles passent les tests unitaires et ainsi maintenir l'application dans un bon état de fonctionnement.
En terme d'acquisition de la compétence AC31.03, je pense que j'ai su intégrer des solutions dans un environnement de production. En effet, j'ai utilisé Gradle pour lancer les tests unitaires.
En terme d'acquisition de la compétence AC32.02, je pense que j'ai su profiler, analyser et justifier le comportement d'un code existant. En effet, j'ai utilisé Jacoco pour analyser le taux de couverture des tests unitaires. J'ai également ajouté de la Javadoc pour expliquer le comportement des fonctions.