Files
sae5/README.md
2025-12-06 09:39:02 +01:00

609 lines
23 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# S5.A.01 Développement avancé
> [!NOTE]
> **Objectif :** La problématique professionnelle est de créer, **en équipe**, une application en suivant une démarche itérative ou incrémentale, avec une intégration continue de l'application.
Le développement de l'application devra utiliser des **technologies avancées** et s'inscrire dans une démarche d'**amélioration continue**.
En partant d'un besoin <ins>décrit de manière imprécise ou incomplète par un client</ins>, l'objectif est de **clarifier** ou compléter, collecter et formaliser le besoin puis de développer une **application communicante** intégrant la **manipulation des données** et respectant les paradigmes de qualité (ergonomie des IHM, qualité logicielle…).
### Descriptif
Cette SAÉ permet, après avoir collecté et formalisé les besoins d'un client, de développer une application complexe, en respectant les paradigmes de qualité et en s'inscrivant dans une démarche d'amélioration continue.
L'application devra utiliser des **API complexes** (framework, ...), interroger une base de données et s'appuyer sur un serveur.
## Compétences ciblées
- Développer — c'est-à-dire concevoir, coder, tester et intégrer — une solution informatique pour un client.
- Proposer des applications informatiques optimisées en fonction de critères spécifiques : temps d'exécution, précision,
consommation de ressources..
- Acquérir, développer et exploiter les aptitudes nécessaires pour travailler efficacement dans une équipe informatique
### Compétence 1 : Adapter des applications sur un ensemble de supports (embarqué, web, mobile, IoT…)
- AC31.01 Choisir et implémenter les architectures adaptées
- AC31.03 Intégrer des solutions dans un environnement de production
### Compétence 2 : Analyser et optimiser des applications
- AC32.01 Anticiper les résultats de diverses métriques (temps d'exécution, occupation mémoire, montée en charge...)
- AC32.03 Choisir et utiliser des bibliothèques et méthodes dédiées au domaine d'application (imagerie, immersion, intelligence artificielle, jeux vidéos, parallélisme, calcul formel...)
### Compétence 6 : Manager une équipe informatique
- AC36.01 Organiser et partager une veille technologique et informationnelle
## Volume horaire
Situation|Parcours|saé dev|saé math
---|---|--:|--:
Formation initiale | Insertion professionnelle | 180 | 20
Formation initiale | Poursuite d'études | 130 | 70
Apprentissage  | Insertion professionnelle | 80 | 10
Apprentissage  | Poursuite d'études | 55 | 35
## Jeu de rôle
### Les acteurs
La Situation d'Apprentissage et d'Évaluation (SAÉ) est un jeu de rôle.
Vous (étudiants) êtes employés par l'entreprise SAÉ (Software Architecture Évolutions). Cest une entreprise spécialisée dans le développement logiciel de 25 personnes située à Saint-Dié des Vosges.
Vous êtes des développeurs juniors avec déjà un an dexpérience.
Ce projet est le premier projet dampleur que lon vous confie.Et vous allez devoir travailler en binôme avec un autre collègue, lui aussi développeur junior.
Un nouveau client (le réseau Cocagne) a demandé à Software Architecture Évolutions de prendre en charge son projet de développement d'une nouvelle application à destination de ses adhérents.
Les différents **enseignants** représentent les bénévoles, employés, consultants ou fournisseurs tiers qui travaillent pour le réseau Cocagne.
Vous devrez régulièrement fournir des **rendus** à ces personnes en suivant scrupuleusement leurs exigences.
## Rendus
### Rendu 1 : Analyse comparative
Faire une analyse comparative et prospective du secteur des Jardins de Cocagne. Rendre un rapport en **anglais* de 6/7 pages présentant les différents acteurs et en conclusion un tableau comparatifs des plus et des moins de chaque acteur.
Contraintes : Répertorier des acteurs locaux non français, anglophones de préférence.
- **Étudiants concernés :** tous
- **Correctrice :** Aline Caspary
- **Compétence :** 6 - Collaborer
- **Coefficients :** 7 / 50 (3.5 / 50 pour l'écrit - 3.5 / 50 pour l'oral)
- **Date de rendu:** [16/09/2025](https://arche.univ-lorraine.fr/mod/assign/view.php?id=1622610)
### Rendu 2 : Communication commerciale
Définir et rédiger une communication commerciale de l'application.
- **Étudiants concernés :** tous
- **Correctrice :** Alexandra Doennlen
- **Compétence :** 6 - Collaborer
- **Coefficients :** 8 / 50
### Rendu 3 : Cahier des charges technique
Établir un document détaillant les solutions techniques que vous avez retenues pour répondre au besoin du client. Quelle architecture ? Base de données ? Support des applications ? Langage de développement ? Cadriciels utilisés ?
Ne pas oublier : la solution pour la carte, l'itinéraire et le calendrier
Contraintes : Présentation sous forme d'un **diaporama visuellement riche** avec des schémas de l'organisation et du fonctionnement.
- **Étudiants concernés :** tous
- **Correcteur :** Emmanuel Medina
- **Compétence :** 6 - Collaborer
- **Coefficients :** 7 / 50
- **Date de rendu:** [15/10/2025](https://arche.univ-lorraine.fr/mod/assign/view.php?id=1720363)
### Rendu 4 : Proposition financière
Établir un **devis chiffré** de la solution. Le devis sera détaillé de telle façon que le client soit en mesure d'évaluer chaque partie : étude, réalisation, modules complémentaires, infrastructure, matériel, installation, prise en main, formation ...
Garder à l'esprit l'hypothèse de fonctionnement de la SAÉ
Contraintes : Mise en place d'outil de gestion de projet permettant de quantifier le temps passé.
- **Étudiants concernés :** tous
- **Correcteur :** Boris Davin
- **Compétence :** 6 - Collaborer
- **Coefficients :** 7 / 50
### Rendu 5 : Gestion de projet
Compte rendu de la réunion de lancement du projet
- **Étudiants concernés :** tous
- **Correcteur :** Marc Minot
- **Compétence :** 6 - Collaborer
- **Coefficients :** 3 / 50
### Rendu 6 : Base de données
Proposer une modélisation de la base de données
- **Étudiants concernés :** tous
- **Correcteur :** Stéphane Dieudonné
- **Compétence :** 2 - Optimiser
- **Coefficients :**
- 9/50 : FI Insertion professionnelle
- 6/50 : FI Poursuite d'études
- 10/50 : App Insertion professionnelle
- 9/50 : App Poursuite d'études
### Rendu 7 : Environnement de développement
Proposer un environnement de développement collaboratif.
- **Étudiants concernés :** tous
- **Correcteur :** Hugo Rositi
- **Compétence :** 6 - Collaborer
- **Coefficients :** 18 / 50
### Rendu 8 : Web Service
Développer un web service permettant d'accéder aux données de manière universelle.
- **Étudiants concernés :** formation initiale et apprentis parcours insertion professionnelle
- **Correcteur :** Émilien Micard
- **Compétence :** 2 - Optimiser
- **Coefficients :**
- 15/50 FI Insertion professionnelle
- 12/50 FI Poursuite d'études
- 17/50 FA Insertion professionnelle
### Rendu 9 : Programmation avancée
Développement d'une application de reconnaissance automatique de fruit en IA par la méthode d'apprentissage profond en python.
- **Étudiants concernés :** tous
- **Correcteur :** Pierre-Frédéric Villard
- **Compétence :** 1 - Réaliser
- **Coefficients :**
- 5/50 FI Insertion professionnelle
- 4/50 FI Poursuite d'études
- 6/50 App Insertion professionnelle
- 2/50 App Poursuite d'études
### Rendu 10 : Programmation multimédia
Développement d'une application de visite virtuelle d'un jardin fruitier avec le logiciel Unity.
L'objectif est de créer ce jardin au milieu d'une île avec modélisation du terrain et de l'environnement.
- **Étudiants concernés :** tous
- **Correcteur :** Pierre-Frédéric Villard
- **Compétence :** 1 - Réaliser
- **Coefficients :**
- 5/50 FI Insertion professionnelle
- 3/50 FI Poursuite d'études
- 6/50 App Insertion professionnelle
- 2/50 App Poursuite d'études
### Rendu 11 : Compléments d'algèbre linéaire et d'analyse
- **Étudiants concernés :** parcours poursuite d'études
- **Correcteur :** Patrick Adelbrecht
- **Compétence :** 1 - Réaliser
- **Coefficients :** 19/50 Formation initiale ; 13/50 Apprentis
### Rendu 12 : Méthodes d'optimisation pour l'aide à la décision
- **Étudiants concernés :** tous
- **Correcteur :** Patrick Adelbrecht
- **Compétence :** 2 - Optimiser
- **Coefficients :**
- 6/50 FI Insertion professionnelle
- 5/50 FI Poursuite d'études
- 3/50 App Insertion professionnelle
- 3/50 App Poursuite d'études
### Rendu 13 : Modélisations mathématiques
- **Étudiants concernés :** tous
- **Correcteur :** Patrick Adelbrecht
- **Compétence :** 2 - Optimiser
- **Coefficients :**
- 9/50 FI Insertion professionnelle
- 10/50 FI Poursuite d'études
- 8/50 FA Insertion professionnelle
- 8/50 FA Poursuite d'études
### Rendu 14 : Compléments de probabilités et statistique
- **Étudiants concernés :** parcours poursuite d'études
- **Correcteur :** Patrick Adelbrecht
- **Compétence :** 2 - Optimiser
- **Coefficients :** 17/50 FI ; 13/50 FA
___
### Rendu 15 : Développement Back-office 1
Concevoir l'interface permettant de créer les tournées de livraison. Sur une carte dessiner l'itinéraire de la tournée en fonction des dépôts sélectionnés pour faire partie de cette livraison.
- **Étudiants concernés :** formation initiale
- **Correcteur :** Emmanuel Medina
- **Compétence :** 1 - Réaliser
- **Coefficients :** 12/50
### Rendu 16 : Développement Back-office 2
#### Sujet A
Concevoir l'interface permettant de spécifier les calendriers de livraison en fonction de la tournée et des fréquences.
- **Étudiants concernés :** formation initiale parcours insertion professionnelle
#### Sujet B
Conception d'un outil permettant de créer la composition des paniers. Il existe plusieurs types de paniers. Chaque mois les jardins possède un stock de légumes. Il faut répartir les légumes dans les paniers de façon à écouler le stock au mieux tout en garantissant la valeur du panier.
- **Étudiants concernés :** formation initiale parcours poursuite d'études
- **Correcteur :** Emmanuel Medina
- **Compétence :** 1 - Réaliser
- **Coefficients :** 12/50
### Rendu 17 : Développement Front Office
Concevoir la partie font office de l'application c'est à dire l'inscription des adhérents et le tunnel de commande permettant à un adhérent de choisir un abonnement et son point de dépôt.
- **Étudiants concernés :** formation initiale parcours insertion professionnelle
- **Correcteur :** Emmanuel Medina
- **Compétence :** 1 - Réaliser
- **Coefficients :** 16/50
___
### Rendu 18 : Tests / Profilage / Mesures
- **Étudiants concernés :** formation initiale parcours insertion professionnelle
- **Correcteur :** Olivier Caspary
- **Compétence :** 2 - Optimiser
- **Coefficients :** 11/50
### Rendu 19 : Apprentissage
- **Étudiants concernés :** apprentis
- **Correcteurs :** jury de stage
- **Compétence :** 1 - Réaliser
- **Coefficients :** Insertion professionnelle 38/50 ; poursuite d'études 33/50
- **Compétence :** 2 - Optimiser
- **Coefficients :** Insertion professionnelle 12/50 ; poursuite d'études 17/50
## Notation
### Coefficients
<table>
<tr>
<td>N°</td><td>Compétences</td>
<td colspan="4" text-align="center">Compétence 1 (50)</td>
<td colspan="4" text-align="center">Compétence 2 (50)</td>
<td colspan="4" text-align="center">Compétence 6 (50)</td>
</tr>
<tr><td></td><td>Situation</td>
<td colspan="2" text-align="center">FI</td><td colspan="2" text-align="center">App</td>
<td colspan="2" text-align="center">FI</td><td colspan="2" text-align="center">App</td>
<td colspan="2" text-align="center">FI</td><td colspan="2" text-align="center">App</td>
</tr>
<tr>
<td>N°</td><td>Rendu</td>
<td>IP</td><td>PE</td><td>IP</td><td>PE</td>
<td>IP</td><td>PE</td><td>IP</td><td>PE</td>
<td>IP</td><td>PE</td><td>IP</td><td>PE</td>
</tr>
<tr><td>1</td><td>Analyse comparative</td>
<td></td><td></td><td></td><td></td>
<td></td><td></td><td></td><td></td>
<td>7</td><td>7</td><td>7</td><td>7</td>
</tr>
<tr><td>2</td><td>Cahier des charges fonctionnels</td>
<td></td><td></td><td></td><td></td>
<td></td><td></td><td></td><td></td>
<td>8</td><td>8</td><td>8</td><td>8</td>
</tr>
<tr><td>3</td><td>Cahier des charges technique</td>
<td></td><td></td><td></td><td></td>
<td></td><td></td><td></td><td></td>
<td>7</td><td>7</td><td>7</td><td>7</td>
</tr>
<tr><td>4</td><td>Proposition financière</td>
<td></td><td></td><td></td><td></td>
<td></td><td></td><td></td><td></td>
<td>7</td><td>7</td><td>7</td><td>7</td>
</tr>
<tr><td>5</td><td>Gestion de projet</td>
<td></td><td></td><td></td><td></td>
<td></td><td></td><td></td><td></td>
<td>3</td><td>3</td><td>3</td><td>3</td>
</tr>
<tr><td>6</td><td>Base de données</td>
<td></td><td></td><td></td><td></td>
<td>9</td><td>6</td><td>10</td><td>9</td>
<td></td><td></td><td></td><td></td>
</tr>
<tr><td>7</td><td>Environnement de développement</td>
<td></td><td></td><td></td><td></td>
<td></td><td></td><td></td><td></td>
<td>18</td><td>18</td><td>18</td><td>18</td>
</tr>
<tr><td>8</td><td>Web Service</td>
<td></td><td></td><td></td><td></td>
<td>15</td><td>12</td><td>17</td><td></td>
<td></td><td></td><td></td><td></td>
</tr>
<tr><td>9</td><td>Programmation avancée</td>
<td>5</td><td>4</td><td>6</td><td>2</td>
<td></td><td></td><td></td><td></td>
<td></td><td></td><td></td><td></td>
</tr>
<tr><td>10</td><td>Programmation multimédia</td>
<td>5</td><td>3</td><td>6</td><td>2</td>
<td></td><td></td><td></td><td></td>
<td></td><td></td><td></td><td></td>
</tr>
<tr><td>11</td><td>Compléments d'algèbre linéaire et d'analyse</td>
<td></td><td>19</td><td></td><td>13</td>
<td></td><td></td><td></td><td></td>
<td></td><td></td><td></td><td></td>
</tr>
<tr><td>12</td><td>Méthodes d'optimisation pour l'aide à la décision</td>
<td></td><td></td><td></td><td></td>
<td>6</td><td>5</td><td>3</td><td>3</td>
<td></td><td></td><td></td><td></td>
</tr>
<tr><td>13</td><td>Modélisations mathématiques</td>
<td></td><td></td><td></td><td></td>
<td>9</td><td>10</td><td>8</td><td>8</td>
<td></td><td></td><td></td><td></td>
</tr>
<tr><td>14</td><td>Compléments de probabilités et statistique</td>
<td></td><td></td><td></td><td></td>
<td></td><td>17</td><td></td><td>13</td>
<td></td><td></td><td></td><td></td>
</tr>
<tr><td>15</td><td> Développement Back-office 1</td>
<td>12</td><td>12</td><td></td><td></td>
<td></td><td></td><td></td><td></td>
<td></td><td></td><td></td><td></td>
</tr>
<tr><td>16</td><td>Développement Back-office 2</td>
<td>12</td><td>12</td><td></td><td></td>
<td></td><td></td><td></td><td></td>
<td></td><td></td><td></td><td></td>
</tr>
<tr><td>17</td><td>Développement Front Office</td>
<td>16</td><td></td><td></td><td></td>
<td></td><td></td><td></td><td></td>
<td></td><td></td><td></td><td></td>
</tr>
<tr><td>18</td><td>Tests</td>
<td></td><td></td><td></td><td></td>
<td>11</td><td></td><td></td><td></td>
<td></td><td></td><td></td><td></td>
</tr>
<tr><td>19</td><td>Apprentissage</td>
<td></td><td></td><td>38</td><td>33</td>
<td></td><td></td><td>12</td><td>17</td>
<td></td><td></td><td></td><td></td>
</tr>
</table>
### Barème
Niveau | Note approx. | Description
:-: |:-: | ---
A | 17-20 | Excellent : dépasse les normes requises et mérite une mention particulière.
B | 13-16 | Bon : dépasse les normes requises.
C | 10-12 | Moyen : correspond aux normes requises.
D | 6-9 | Insuffisant : est en dessous des normes, nécessite une amélioration.
E | 0-5 | Très Insuffisant : ne répond pas de toute évidence aux normes.
### Pénalités
Diverses pénalités pourront être appliquées
**Rendu en retard :** 1pt en moins par tranche de 6 heures de retard entamée.
**Absence des informations didentification sur les rendus** : 1 pt en moins.
Doivent être présents sur la première page : les noms des étudiants, l'année universitaire, le titre du rendu, le logo de l'Université de Lorraine.
**Non respect du format de fichier :** 1 pt en moins.
Par exemple un fichier éditable Microsoft Word (.docx) à la place d'un fichier de présentation portable (.pdf)
**Noms du binôme absents du nom de fichier :** 1 pt en moins.
**Mise en forme de document incorrecte :** 2 pts en moins.
Par exemple rendre un texte rédigé à la place dun diaporama, un script sql à la place dun schéma ER.
## Énoncé
- [Contexte et cadre du projet](Contexte.md)
- [Cahier des charges](Specifications.md)
- [Modifications](Modifications.md) du cahier des charges suite à réunion avec le client
## Environnement Docker
- Utiliser l'attribut _name_ en début du fichier _compose.yaml_ en y mettant vos noms en minuscule : *nom1_nom2*
- Pour le choix des images, ne pas utiliser _latest_, mais spécifier une **version majeure**
(ex. postgres:16, node:20, php:8.3-fpm) afin dassurer la reproductibilité et éviter les régressions liées aux mises à jour non maîtrisées.
- Créer un fichier principal : _compose.yaml_ et un fichier pour le développement local : _compose.override.yaml_
- Les outils d'aministration et de debug comme phpMyAdmin doivent être dans l'override de développement
- Les volumes pour le développement local doivent être montés dans l'override
- Ne jamais inclure les configurations locales dans le fichier principal
- Ne jamais inscrire de mot de passe en clair dans un _Dockerfile_ ou un _compose.yaml_
- Utiliser un **Dockerfile multistage**
- Étape 1 : installation des dépendances (ex. composer install, npm ci).
- Étape 2 : copie du code (sans les caches inutiles). utiliser _.dockerignore_
- Limiter le nombre de couches Docker (fusionner les RUN si possible).
- Nettoyer les caches après installation des dépendances (rm -rf /var/lib/apt/lists/*).
- Pour le développement local ajouter une image _oneshot_ pour effectuer l'installation des dépendances
- Ajouter un fichier _.gitignore_ adapté pour éviter d'inclure les fichiers temporaires ou cache
- Utiliser un réseau interne pour la communication entre services
- Si vous avez différents services à exposer, n'utiliser pas des ports multiples mais un [reverse proxy](https://sources.neotech.fr/Universite/tp/src/branch/main/reverse_proxy.md)
## Groupes
### Insertion Professionnelle (6 groupes)
<table>
<tr>
<th style="vertical-align:top;text-align:start">
PHILIPPON-CHAMPROUX Florentin
<br>RATTI Martin
</th>
<td>https://github.com/flo0s/Cocagne
<br>84 commits (27/11/2025) 63 Philippon / 21 Ratti
<br>
<br>docker : ✅
<br>PostgreSQL (17) - .Net 9.0 - Blazor
<br>
<br>Page d'accueil avec noms : ✅
<br>Liste des dépôts : ✅
<br>CRUD Tournée : ✅
<br>Itinéraire : ✅
<br>Calendriers : ✅
![Commits over time](commits/A.png)
![Philippon-Champroux](commits/A1.png)
![Ratti](commits/A2.png)
</td>
</tr>
<tr>
<th style="vertical-align:top;text-align:start">
MATEJKA Milan
<br>MAURICE Simon
</th>
<td>https://github.com/VoidOma/SAE5_Developpement_avance
<br>18 commits (07/11/2025) (14 Matejka / 4 Maurice)
<br>
<br>docker : ✅
<br>MySQL 8.0 - PHP 8.2 - Symfony 7.3
<br>
<br>Page d'accueil : ✅
<br>Liste des dépôts : Base table or view not found: 1146 Table 'sae5.depot' doesn't exist
<br>Module tournée : Base table or view not found: 1146 Table 'sae5.tournee' doesn't exist
<br>Calendriers : ❌
</td></tr>
<tr>
<th style="vertical-align:top;text-align:start">
ALVARIZA BILLAR Felipe
<br>KANY Thomas</th>
<td>https://github.com/tureisss/Sae5_Jardin_de_Cocagne
<br>30 commits (16/11/2025) 24 Kany / 6 Alvariza
<br>
<br>docker : ✅<br>
<br>MySQL 8 - PHP 8.3 - Symfony 7.3
<br>
<br>Page d'accueil : manque noms
<br>Liste des dépôts : ✅
<br>Module tournée : ✅
<br>Calendriers : ❌
</td></tr>
<tr>
<th style="vertical-align:top;text-align:start">
DUBREUIL Eliot
<br>ERRAES Mehdi
</th>
<td>https://gitlab.univ-lorraine.fr/erraes5u/sae-5
<br>50 commits (03/12/2025) 32 Dubreuil / 18 Erraes
<br>
<br>docker : ❌ (Problème Cloudflare)
<br>PostgreSQL 18.0
<br>
<br>Liste des dépôts : ✅
<br>Itinéraire : ✅
<br>CRUD Tournée : ✅
</td></tr>
<tr>
<th style="vertical-align:top;text-align:start">MEHIAOUI Mohamed
<br>MERIMI Ayat
</th>
<td>https://github.com/MehiaouiMoh/SAE5_JardinCocagne
<br>50 commits (05/12/2025) 46 Mehiaoui / 4 Merimi
<br>docker : ✅
<br>Base de données : PostgreSQL 17.0
<br>NodeJS 20 - Express
</td></tr>
<tr>
<th style="vertical-align:top;text-align:start">HERRY Elwyn<br>HERRY Matteo</th>
<td>https://github.com/MoaKarov/Herry_Matteo_Herry_Elwyn_Sae5
<br>15 commits (11/10/2025) 13 Mattéo / 2 Elwyn
<br>docker : ✅
<br>Base de données : MySQL 8.0
<br>NodeJS 18 - Express
Liste des dépôts : ✅ crud tournée : ✅ ordre par glisser-déposer : ✅
</td></tr>
</table>
### Poursuite d'études (4 groupes)
<table>
<tr>
<th style="vertical-align:top;text-align:start">GAILLIEGUE Ewan <br>VINCENT Teo</th>
<td>https://github.com/EwanGailliegue/Les-Jardins-de-Cocagne
<br>14 commits (04/10/2025) 14 Gaillieugue / 0 Vincent
<br>docker frontend (3000): ✅ backend : ❌ (5000)<br>
Mettre un reverse proxy pour n'avoir qu'une seule entrée
<br>Base de données ?
<br>NodeJS 18 - Express
</td>
</tr>
<tr>
<th style="vertical-align:top;text-align:start">MEHRAZ Chayimaa<br>RIFI ZAYNAB</th>
<td>https://github.com/Chayimaa/SEA5-RIFI-MEHRAZ
<br>43 commits (27/11/2025) 23 Mehraz / 20 Rifi
<br>docker : ❌<br>
<i>file_put_contents(/var/www/html/storage/framework/views/9745f6a6f3fcc1ddd95648c9a006bc71.php): Failed to open stream: Permission denied</i>
<br>Base de données SQLite
<br>PHP 8.2 - Laravel 12
</td></tr>
<tr>
<th style="vertical-align:top;text-align:start">
ALGUL Sefer<br>GRANDGIRARD Louis</th>
<td>https://gitlab.univ-lorraine.fr/algul12u/sae-s5
<br>42 commits (04/12/2025) 30 Algul / 12 Grandgirard
<br>docker : ✅
<br>Base de données : MySQL 8.0
<br>PHP 8.3 - Symfony 7.3
</td>
</tr>
<tr>
<th style="vertical-align:top;text-align:start">COGNET Mattheo<br>BECERRA BARBA Erik <sup>(IP)</sup></th>
<td>https://github.com/MattheoCo/JardinDeCocagne
<br>30 commits (12/10/2025) 26 Cognet / 4 Becerra
<br>docker : ❌<br>
<i>HP Fatal error: Uncaught Error: Failed opening required '/var/www/html/vendor/autoload_runtime.php' (include_path='.:/usr/local/lib/php') in /var/www/html/public/index.php:5\nStack trace:\n#0 {main}\n thrown in /var/www/html/public/index.php on line 5</i>
<br>Base de données : PostgreSQL 16
<br>PHP 8.3 - Symfony 6.1</td></tr>
</table>
### Apprentis Insertion professionnelle (2 groupes)
<table>
<tr>
<td>COLIN Gabin<br>DE RYCKE Leanne</td>
<td>https://gitlab.univ-lorraine.fr/derycke4u/sae-5-colin-derycke</td>
</tr>
<tr>
<td>DESERT Romain<br>NIRRENGARTEN Tom</td><td>https://github.com/Rom444d/SAE-5</td>
</tr>
</table>
### Apprentis Poursuite d'Études (4 groupes)
<table>
<tr>
<td>GIL Jérémie<br>PETRAZOLLER Johan</td>
</tr>
<tr>
<td>NGUYEN Quang-Liem<br>RALLI Clément</td></tr>
<tr>
<td>DUFOUR Louise<br>MARTIN Mathis</td></tr>
<tr>
<td>ROBAIL Alexandre</td>
</tr>
</table>