GestTravaux

Plateforme de gestion des travaux immobiliers

Application développée pour piloter les chantiers immobiliers, orchestrer les rôles métier (entrepreneur, inspecteur, gestionnaire, propriétaire), suivre les inspections terrain et centraliser les données chantier en temps réel.

Entreprise / Contexte BTS SIO SLAM – Projet pédagogique GestTravaux Pro
Rôle Développeur Full Stack
Durée Année 2026
Stack PHP 8.2, Symfony 7.3, Java, PostgreSQL, Twig, Docker
gesttravaux.js
const gestTravaux = {
    tech: [
        "PHP 8.2",
        "Symfony 7.3",
        "Java",
        "PostgreSQL",
        "Twig",
        "Docker"
    ],
    profils: [
        "Entrepreneur",
        "Inspecteur",
        "Gestionnaire",
        "Proprietaire"
    ]
};

Objectifs, contraintes et réponses

Plateforme métier conçue pour centraliser les chantiers, sécuriser les rôles et fluidifier les inspections terrain.

Objectifs

  • Développer une application structurée en architecture MVC avec Symfony.
  • Concevoir une base de données relationnelle fiable et optimisée sous PostgreSQL.
  • Mettre en place une gestion des utilisateurs avec rôles et permissions.
  • Assurer l'échange de données entre une application web et une application Java Desktop.

Problématiques

  • Complexité liée à l'intégration de plusieurs technologies différentes (Symfony et Java).
  • Gestion sécurisée des utilisateurs et des accès selon les rôles.
  • Organisation et structuration des données pour garantir cohérence et évolutivité.
  • Synchronisation et cohérence des données entre plusieurs interfaces.

Solutions

  • Mettre en place un système d'échange de données commun entre les applications.
  • Sécuriser l'accès avec un système de connexion et des rôles utilisateurs.
  • Organiser correctement la base de données pour éviter les erreurs et doublons.
  • Gérer les mises à jour des données pour assurer leur cohérence entre les applications.

Web et Java

Chaque profil dispose d'une courte description à gauche et d'une capture d'écran à droite.

Profils Web

Trois interfaces sont accessibles côté application web.

Propriétaire

Le propriétaire suit l'avancement de ses chantiers en fonction de ses différents biens, et l'historique de ceux-ci.

1 Profil propriétaire GestTravaux

Inspecteur

L'inspecteur consulte les chantiers qu'il a à inspecter, il peut regarder des informations sur ceux-ci notamment une map. Il renseigne les observations terrain, ajoute les preuves photo et peut ajouter une observation.

3 Profil inspecteur GestTravaux

Entrepreneur

L'entrepreneur consulte les appels d'offres qui lui sont proposés, il peut l'accepter, faire un devis modifié ou le refuser. Il a ensuite un suivi de ces devis pour voir s'ils ont été acceptés ou non.

3 Profil entrepreneur GestTravaux
Profil Java

Un profil dédié à l'application Java de gestion interne.

Gestionnaire

Le gestionnaire pilote les opérations globales, il peut créer des biens, des chantiers, ajouter des entrepreneurs, leurs envoyer des appels d'offres.

1 Profil gestionnaire Java GestTravaux

Échanges Java / Symfony

Captures du code des endpoints et de la consommation API entre l'application Java et le backend Symfony.

Code API côté Java

Client Java pour appeler les endpoints et synchroniser les données métier.

2 Code API Java GestTravaux

Code API côté Symfony

Contrôleurs et logique Symfony exposant les routes consommées par l'application Java.

2 Code API Symfony GestTravaux

Points clés GestTravaux

Vue d'ensemble du projet avec la stack, les difficultés principales et les axes d'amélioration.

principalale stack utilisée
  • PHP 8.2
  • Symfony 7.3
  • Java
  • PostgreSQL
  • Twig
  • Docker
Difficultés rencontrées
  • Centralisation de la base de données
  • Hashage des mots de passe via Java pour Symfony
Point à améliorer
  • Design de l'application Java à moderniser
  • Trop grand nombre de pages (multi-page)
  • Manque d'UX dans les parcours utilisateurs