AP3-2 - Stages APIREST
Contexte
Afin de valider leur BTS, les étudiants doivent effectuer deux stages obligatoires de 5 à 6 semaines par année en entreprise. Pour faciliter la mise en contact des étudiants avec des organisations connaissant la formation (BTS SIO) et ayant déjà eu l’occasion d’accueillir des stagiaires, les données liées aux stages sont conservées dans une base de données stages avec des mises à jour de l’existence ou non des organisations, et de la présence ou non des contacts dans une organisation donnée.
Un service d’API REST et une application Android ont été développés pour permettre aux étudiants et enseignants de consulter cette base de données et d’y ajouter, modifier ou en supprimer des éléments.
Il s’agit dans cet atelier AP32 de faire évoluer la base de données et le service d’API REST selon les besoins exprimés dans un cahier des charges fourni pour le projet.
L’évolution de l’application Android fera l’objet d’un autre atelier (AP41).
Environnement technologique
Ressources et outils (fournies ou à installer)
Microsoft Visual Studio Code
Plateforme GitLab (suivi du projet)
Talend API Tester (extension navigateur)
Package XAMPP et phpMyAdmin (SGBDR)
Ferme de serveurs VMWare
- serveur US22_WEB (Ubuntu v. 22.04)
Scripts SQL (BDD)
Cahier des charges
Registre de traitement
WinDesign (DDC, MCD, MLD)
Programmation (langages/formats utilisés)
Langage PHP
Format JSON
Gestionnaire de dépendances Composer
Framework CodeIgniter
Description
1 – Évolutions de la base de données
Dans un premier temps, nous avons effectué une rétro conception/documentation de la base de données après une première évolution.
Modèles de conception de la base de donnée sur WinDesign (cliquez pour agrandir l’image) :
Structure de la base de donnée en local après importation des scripts sur phpMyAdmin :
2 – Mise en œuvre des environnements de développement et de production
Ensuite, nous avons chacun cloné en local le répertoire de l’API depuis le projet ap32-stages-apirest sur GitLab et avons vérifié le bon fonctionnement des requêtes à l’API sur Talend API Tester pour l’environnement de développement (poste physique).
Nous avons ensuite déployé notre propre serveur Ubuntu sur la ferme VMWare depuis l’image US_22WEB, importé les scripts de la base de données et cloné le répertoire du projet ap32-stages-apirest sur le serveur puis effectué les tests sur Talend pour l’environnement de production (serveur).
3 – Correction d’anomalies et évolutions mineures – Sprint 0
Maintenant que les deux environnements de travail étaient installés et configurés (base de données, répertoire du projet d’API) nous avons entamé l’évolution du code de l’API selon les attendus du cahier des charges. Il s’agissait dans un premier temps de corriger certains oublis (exceptions, propriétés) pour trois catégories : organisations, stages et contacts. Je me suis occupé des contacts.
4 – Évolutions – Sprint 1
Une deuxième demande d’évolution de l’API concernait la possibilité de modifier ou ajouter de nouveaux contacts.
5 – Évolutions – Sprint 2
Durant cette dernière étape, j’ai effectué sur Talend tous les tests pour vérifier le bon fonctionnement de l’API REST après évolution, dans l’environnement de production comme celui de développement (recette). Les tests ainsi que les résultats sont disponibles dans les productions.
Compétences mobilisées
B1.1 – Gérer le patrimoine informatique
B1.2 – Répondre aux incidents et aux demandes d’assistance et d’évolution
B1.4 – Travailler en mode projet
B1.5 – Mettre à disposition des utilisateurs un service informatique
Productions
Code source de l’API – Contacts (ZIP – PHP)
Scripts SQL (ZIP – SQL)
Compte-rendu de l’étape 4 (PDF)
Compte-rendu de l’étape 5 (PDF)
Tests Talend (JSON)