TL Transports publics lausannois
Application Caltar
Les Transports Lausannois (TL) nous ont mandatés afin de moderniser Caltar, une application métier stratégique développée par nos soins en 2011 sous Silex & Symfony 2.
Design
- Accessibilité web
- Architecture de l'information
Développement Web
- Accessibilité web (dev)
- API : design & implémentation
- Architecture technique
- Audit de code et de performance
Direction de projet
- Change management
- Priorisation et planification
Design
- Accessibilité web
- Architecture de l'information
Développement Web
- Accessibilité web (dev)
- API : design & implémentation
- Architecture technique
- Audit de code et de performance
Direction de projet
- Change management
- Priorisation et planification
Caltar est un outil interne essentiel à l'administration des TL pour la coordination des relations avec le réseau mobility notamment pour les Calculs Tarifaires. Cette plateforme permet aux coordinateurs de visualiser l'ensemble des relations du réseau de transport lausannois, d'ajouter de nouvelles relations et de créer de nouveaux parcours. Véritable colonne vertébrale de la planification du réseau, Caltar gère des données critiques pour le bon fonctionnement des transports publics lausannois.
L'enjeu était de taille : moderniser une application métier complexe sans perdre une seule fonctionnalité tout en améliorant significativement ses performances et sa maintenabilité.
Cette modernisation représentait un défi technique majeur nécessitant une expertise approfondie de l'écosystème Symfony. Pour garantir une mise à niveau sans faille, nous avons adopté une approche méthodique et rigoureuse : développer en parallèle de la codebase existante une nouvelle version complète sous
Symfony 7.
Chaque composant, chaque fonctionnalité, chaque règle métier a été minutieusement analysée, reprise et modernisée. Ce travail d'orfèvre a nécessité une connaissance fine des différences architecturales entre Symfony 2 et Symfony 7, ainsi qu'une maîtrise des patterns pour transformer un code legacy en application moderne tout en préservant la logique métier complexe.
Cette approche nous a permis de restructurer entièrement l'architecture applicative, d'optimiser les performances et d'améliorer la maintenabilité du code, tout en conservant l'intégralité des fonctionnalités existantes.
Tests automatisés : sécurité et fiabilité
L'un des piliers de cette modernisation a été la mise en place et l'enrichissement d'une batterie complète de tests automatisés. Pour chaque système migré vers Symfony 7, nous avons développé son équivalent en tests, nous assurant ainsi continuité fonctionnelle et fiabilité technique.
Cette approche test-driven nous a non seulement permis de valider chaque étape de la migration, mais aussi de créer une base solide pour les futures évolutions de l'application. Les tests automatisés agissent comme un filet de sécurité, garantissant que chaque modification apportée ne compromet pas l'intégrité du système existant.
Cette couverture de tests représente un investissement précieux pour les TL, simplifiant grandement la maintenance future et réduisant considérablement les risques de régression lors des mises à jour.
Un travail de collaboration intelligente
Tout au long du projet, les équipes des TL et d’Antistatique ont travaillé en collaboration étroite, avec un noyau de 3 développeur·euses dédiés et des points d’avancement réguliers permettant d’ajuster en continu les priorités et les choix techniques. Cette relation de confiance s’inscrit dans la durée : c’est déjà cette même équipe, pilotée par notre directeur technique
Gilles, qui avait accompagné l’évolution de la première version de Caltar vers un framework PHP moderne en 2012. Si le déploiement et l’exploitation de l’application sont entièrement réalisés au sein de l’infrastructure interne des TL, nous soutenons leurs équipes par un accompagnement sur mesure, en apportant support, expertise et conseils ciblés pour garantir la pérennité et l’évolution sereine de la plateforme.
Dompter Oracle avec Docker
Ce projet présentait une particularité technique de taille : il est propulsé par une base de données Oracle. Oracle n'étant pas un moteur de base de données standard pour les applications web, faire fonctionner ce type de système sur des environnements de développement peut s'avérer particulièrement complexe et chronophage.
La configuration d'un environnement Oracle local peut facilement prendre du temps, sans compter les problématiques de licences. C'est ici que Docker nous a littéralement sauvés.
Grâce à la containerisation, nous avons pu reproduire un environnement Oracle fonctionnel, portable et reproductible. Cette approche nous a permis non seulement de gagner un temps précieux, mais aussi d'utiliser les données de production (anonymisées) pour valider le fonctionnement à l'identique de la modernisation.
Refonte visuel tout en douceur
La modernisation technique s'accompagnait d'un rafraîchissement visuel bienvenu. Grâce à Symfony UX et Tailwind UI, nous avons insufflé un vent de fraîcheur à l'interface de Caltar, transformant une application fonctionnelle mais vieillissante en un outil moderne et agréable à utiliser.
Symfony UX nous a permis d'intégrer de façon native des composants interactifs modernes. L'adoption de Tailwind UI nous a fourni un catalogue de composants pré-construits et éprouvés, nous permettant de gagner un temps précieux tout en garantissant une cohérence visuelle exemplaire.
Cette approche n'était pas qu'esthétique : en modernisant l'interface, nous avons amélioré l'expérience utilisateur des coordinateurs qui utilisent quotidiennement Caltar. Une interface plus intuitive et plus responsive contribue directement à l'efficacité opérationnelle des équipes.
Cartographie : cœur névralgique du système
Le système de cartographie constitue l'un des enjeux les plus critiques du projet. Caltar permet aux coordinateurs de visualiser géographiquement l'ensemble du réseau de transport lausannois, d'identifier les arrêts, de tracer de nouveaux parcours et d'optimiser les relations entre les différents points du réseau.
L'ancienne implémentation, basée sur jQuery et des plugins désormais obsolètes, nécessitait une refonte complète. Nous avons opté pour une approche moderne en vanilla JavaScript, garantissant compatibilité sur le long terme, performances optimisées et maintenabilité accrue.
Ce projet de modernisation illustre parfaitement notre expertise Symfony et notre capacité à gérer des migrations techniques complexes. En préservant intégralement les fonctionnalités métier tout en modernisant radicalement l'infrastructure technique, nous avons offert aux TL une application sécurisée, pérenne, performante et évolutive.
Cette réussite technique ouvre la voie à de futures améliorations fonctionnelles, désormais facilitées par une architecture moderne et une base de code maintenable.
Caltar est prêt à accompagner les TL dans leurs défis futurs de planification et d'optimisation du réseau de transport lausannois.
project.teaser.a11y.servicesRefonte de site internet
project.teaser.a11y.servicesDirection artistique AI