Détails techniques
Suivi de chantier BTP — architecture et choix techniques
Le détail de l'application : les quatre modules, le modèle de valorisation, le workflow de validation versionné, l'architecture applicative et la chaîne de livraison.
Cette page prolonge la fiche Application de suivi de chantier pour le BTP, qui présente le projet sans entrer dans la technique.
Les quatre modules
Rapports journaliers. Un formulaire structuré en six rubriques — personnel interne, personnel intérimaire, matériel propre, matériel en location, sous-traitance, achats de fournitures. Chaque ligne est adossée à un référentiel de prix unitaires qui la valorise au fil de la saisie, avec sous-totaux par rubrique et total général. La saisie de quantités négatives permet de régulariser un rapport déjà clos sans le rouvrir ni casser l'historique.
Workflow de validation versionné. Trois niveaux — chef de chantier, conducteur de travaux, administrateur. Chaque validation crée une nouvelle version chaînée à la précédente : l'historique complet reste consultable, et les champs se verrouillent selon le rôle et l'état d'avancement. Lorsqu'un profil de niveau supérieur saisit lui-même le rapport, des raccourcis évitent les auto-validations sans objet.
Bilans. Consolidation des coûts par chantier sur une période choisie, et relevé d'heures par salarié distinguant jour, nuit, week-end, intempéries et zones de déplacement.
Référentiels et exports. Administration des chantiers, du personnel, du matériel, des fournisseurs, des agences d'intérim et des grilles tarifaires ; huit exports CSV filtrables, destinés aux outils de paie et de facturation.
L'architecture applicative
Un frontend React 18 / TypeScript — Vite, Material UI, RxJS — pensé pour un usage aussi bien bureau que tablette, et un backend Java / Spring Boot exposant une API REST sur une base PostgreSQL.
Le schéma de la base évolue de façon versionnée et automatisée via Flyway : chaque migration est un fichier versionné du dépôt, appliqué au déploiement, ce qui rend l'état de la base reproductible d'un environnement à l'autre.
Authentification et habilitations
L'authentification et la gestion des rôles reposent sur Microsoft Entra ID en OAuth2 / OpenID Connect. Les collaborateurs se connectent avec leur compte d'entreprise, sans mot de passe applicatif dédié à gérer.
Les habilitations sont contrôlées côté client comme côté serveur : l'interface masque ce qui n'est pas accessible, mais c'est l'API qui fait autorité — un appel direct ne contourne rien.
Traçabilité
Les données sensibles ne sont jamais supprimées physiquement mais désactivées. Un chantier clôturé, un salarié parti ou un tarif remplacé restent référençables par les rapports passés, qui conservent ainsi leur sens des années après leur clôture. Combinée au versionnement des validations, cette règle rend l'ensemble auditable.
Industrialisation
L'ensemble est conteneurisé avec Docker et couvert par une suite de tests automatisés côté backend.
Le déploiement passe par un pipeline d'intégration continue GitLab, sur des environnements de test et de production isolés, hébergés en France.