Atelier Professionnel PHP XML MySQL MVC DAO PHPUnit

Journée d'intégration

Développement d'une application web PHP MVC pour la gestion des ateliers de la journée d'intégration PICNIC du BTS SIO — puis refactoring complet vers le patron de conception DAO avec tests unitaires PHPUnit et documentation phpDocumentor.

Outils & Technologies

PHP — MVC, PDO, SimpleXML
MySQL / MariaDB
XML — SimpleXML
Pattern MVC + DAO
PHPUnit — tests unitaires
phpDocumentor
GitHub Codespace + Docker
HTML / CSS — vues
VS Code + XDebug

Contexte

Le BTS SIO du lycée Saint-John Perse de Pau organise chaque année une journée d'intégration PICNIC pour les nouveaux étudiants. L'objectif est de les accueillir et de leur permettre de se retrouver autour d'activités communes : théâtre, algorithmes déconnectés, entretiens d'embauche simulés, escape game.

Dans ce cadre, l'atelier consistait à développer une application web PHP pour afficher et gérer les ateliers proposés lors de cette journée, en suivant une architecture MVC claire, puis en faisant évoluer le code vers un patron DAO plus robuste et maintenable.

Mission & Objectifs

Concevoir une application PHP en architecture MVC permettant d'afficher les ateliers de la journée d'intégration à partir d'un fichier XML, puis refactorer cette application en appliquant le patron de conception DAO pour séparer l'accès aux données de la logique métier — avec mise en place de tests unitaires PHPUnit et génération automatique de la documentation via phpDocumentor.

Tickets GLPI traités

Les demandes et incidents ont été soumis via GLPI par des utilisateurs fictifs et attribués à un étudiant de SIO2. Chaque ticket constituait une mission à implémenter.

Application MVC PHP

  • Architecture Modèle-Vue-Contrôleur, routage par paramètre GET (?controleur=gestionAteliers&action=consultation)
  • Classe FichierXML — lecture des 4 ateliers PICNIC via SimpleXML depuis ateliers.xml
  • Classe FichierJSON — liste des salles depuis exempleInfosSalles.json
  • Classe Base — connexion PDO avec gestion des erreurs, table Developpeur (id, nom, prénom)
Schéma d'architecture MVC
Schéma architecture MVC
Routage par paramètre GET — séparation Modèle / Vue / Contrôleur
Modèles
Contrôleurs
Vues PHP
Résultat — Vue utilisateur

Compétences BTS SIO validées

B2.1 Concevoir et développer une solution applicative
B2.2 Réaliser les tests de validation d'une solution
B2.3 Rédiger la documentation technique
B1.4 Travailler en mode projet
B1.1 Gérer le patrimoine informatique
 
Premier atelier
Voir les compétences
Atelier suivant
Android Visiteur DAO