PHP/Symfony

Reprise de site Symfony : faire évoluer l’existant avec méthode

Reprise du code existant, montée de version PHP/Symfony ou migration legacy : notre équipe senior prépare une trajectoire par lots avec vos métiers et votre DSI. Données, intégrations, recette et production sont cadrées ensemble.

Un premier échange sur vos versions, vos usages et les difficultés à lever.

Technologies et socles que nos applications savent exploiter
Conception, intégration et maintenance
01 Diagnostic de l’existant
02 Trajectoire par étapes
03 Livraison testée
04 Exploitation documentée

Trois points de départ

Conserver, mettre à jour
ou migrer vers Symfony.

La reprise d’un site Symfony, la montée de framework et le remplacement d’un socle ancien répondent à des problèmes différents. Nous les distinguons avant d’engager le chantier.

VOTRE APPLICATION EST DÉJÀ EN SYMFONY

Reprendre le code et la connaissance.

Le prestataire change ou l’équipe interne a besoin d’un relais. Nous rapprochons le dépôt de la version déployée, reconstituons les parcours critiques et rendons les corrections reproductibles. Les composants utiles sont conservés.

Voir le cadre de reprise d’application →
LES VERSIONS FREINENT LES ÉVOLUTIONS

Mettre PHP et Symfony à niveau.

Nous inventorions les bundles, les bibliothèques et les dépréciations, puis organisons les étapes de compatibilité. Les changements fonctionnels sont arbitrés à part pour pouvoir attribuer les régressions.

Lire la méthode de montée de version →
LE SOCLE ACTUEL ATTEINT SES LIMITES

Migrer un legacy vers Symfony.

PHP ancien, framework maison ou scripts dispersés : nous évaluons les zones à conserver et celles à remplacer. Une coexistence par domaine ou flux peut éviter une bascule globale, si l’architecture et les données le permettent.

Si le métier doit aussi être repensé →

Audit de trajectoire

Une décision étayée.
Un premier lot défini.

La première mission transforme les inconnues du legacy en étapes, responsabilités et conditions de livraison.

Ce que le cadrage doit produire

Un plan adapté à votre socle.

01 État initial et criticité
Versions, dépendances, architecture, environnements et parcours métier. Les constats vérifiés sont séparés des points encore à explorer.
02 Matrice de compatibilité
Cible PHP/Symfony, bundles bloquants, recettes de configuration, adaptations applicatives et étapes intermédiaires justifiées.
03 Trajectoire et estimation par lots
Ordre des travaux, périmètre du pilote, hypothèses, exclusions, dépendances et jalons de validation avec les métiers et la DSI.
04 Dossier de recette et de bascule
Scénarios de non-régression, contrôles des données, procédure de déploiement, critères d’arrêt et limites du retour arrière.

Nous demandons le code accessible, les versions déployées, les configurations, les incidents et les informations d’exploitation. Une base de test autorisée et les journaux utiles aident à reproduire les comportements ; les accès manquants sont traités comme des dépendances du planning.

Les utilisateurs donnent le contexte que le code ne raconte pas : l’export utilisé à la clôture, la règle propre à un client, le document corrigé à la main. Ces usages orientent le périmètre de recette et le choix du premier lot.

Vous cherchez d’abord un état des lieux indépendant ? L’audit technique d’application web peut précéder la trajectoire de modernisation. Si un audit existe déjà, nous partons de ses conclusions et vérifions les points devenus incertains.

Préparer mon audit de trajectoire

Périmètre, budget et livrables de l’audit sont convenus avant démarrage. La réalisation est décidée ensuite à partir du plan proposé.

Des étapes techniques, validées sur le métier

Chaque version doit prouver
ce qu’elle préserve.

Le planning organise les travaux de code, les accès au SI, les démonstrations et les recettes. Un référent senior rend visibles les décisions, les charges et les points qui bloquent la suite.

Code et dépendances

Nous stabilisons la source, rendons les dépréciations visibles et traitons les incompatibilités par étapes. Les changements sont relus ; les tests couvrent les règles sensibles et les intégrations. Les fonctions nouvelles suivent un arbitrage explicite.

Sortie attendue : des modifications isolées, testées et expliquées.

Sandbox et CI/CD

La chaîne de livraison construit une version identifiée et exécute les contrôles convenus. Une recette isolée permet de vérifier les écrans, droits, documents, imports et effets dans les systèmes tiers sans utiliser la production comme terrain d’essai.

Sortie attendue : les scénarios critiques et leurs résultats.

Production et suivi

La décision de bascule rapproche recette, contrôles techniques et disponibilité des intervenants. Le plan nomme la personne qui décide, celle qui déploie et celle qui surveille les premiers cycles métier. Les anomalies observées sont attribuées et traitées.

Sortie attendue : une mise en service dont le suivi est organisé.

Les données et traitements vivent au-delà du déploiement.

Une nouvelle version peut devoir relire d’anciennes sessions, consommer des messages en attente ou partager un schéma de base avec la version précédente. Nous vérifions ces compatibilités, les caches, les verrous de tâches planifiées et les reprises de flux.

Pour les APIs et webhooks, les essais couvrent le contrat, les erreurs et les effets déjà exécutés. L’ERP ou le CRM conserve son rôle de référence lorsqu’il doit le garder. Les interventions nécessaires sont préparées avec votre DSI et les responsables des systèmes reliés.

Découvrir notre expertise des intégrations SI →

L’application peut rester dans votre cloud, sur votre serveur ou on-premise. Un hébergement Dawap peut aussi être proposé. Environnements, accès, supervision, sauvegardes et responsabilités sont définis avant le déploiement.

Expérience de modernisation · BranchAssist

Faire évoluer Symfony
dans un SI métier sensible.

Pour Branchet, BranchAssist organise les dossiers, rôles, tâches et documents autour des données Oracle et de l’accès SSO.

Le suivi du logiciel a compris une migration Symfony, un passage PHP 8.1, la refactorisation, l’ajustement des workers et l’évolution du monitoring. Les fonctionnalités et l’exploitation ont avancé par lots, avec des environnements distincts et une chaîne de livraison GitLab/Docker.

Cette référence illustre la modernisation d’une application connectée et son évolution dans la durée. Votre trajectoire sera établie sur votre code, vos dépendances et vos usages.

Lire le cas BranchAssist →

Maison Jean : préparer la relève d’un site et de son CMS Symfony. Le projet fait cohabiter le site historique sous Symfony 2.8 et une nouvelle application Symfony 8, avec reprise des contenus et préparation de la bascule. Voir la trajectoire et les choix de migration →

Vos questions

Les décisions à prendre avant une reprise Symfony.

Pouvez-vous reprendre un site Symfony développé par une autre équipe ?

Oui, sous réserve de l’évaluation du code, des accès et des droits de modification. Nous vérifions les versions PHP/Symfony, les bundles, la base, les intégrations et les procédures de livraison. La reprise peut conserver le framework et les fonctions existantes ; une migration complète n’est pas systématique.

Quelle différence entre reprise, montée de version et migration legacy ?

La reprise organise le relais technique sur l’application existante. La montée de version traite la compatibilité de PHP, Symfony, des bibliothèques et de la configuration. La migration legacy transfère progressivement un autre socle vers Symfony. Ces travaux peuvent se suivre, avec un périmètre et des critères propres à chaque étape.

Comment choisissez-vous la version Symfony cible ?

Nous contrôlons le calendrier officiel de maintenance, la compatibilité PHP et les dépendances réellement utilisées. La trajectoire peut comporter des versions intermédiaires pour traiter les dépréciations et les ruptures. La version cible et son horizon de maintenance sont justifiés dans le cadrage.

Faut-il interrompre l’application pendant la migration ?

Cela dépend des données, des intégrations et de l’architecture. Une coexistence ou une bascule par périmètre est parfois possible ; une maintenance planifiée peut être plus adaptée dans d’autres cas. Nous précisons la fenêtre acceptable avec vos métiers et préparons les contrôles et la décision de bascule.

Comment gérez-vous les règles métier non documentées ?

Nous croisons le code accessible, les données autorisées, les écrans, les incidents, les exports et les échanges avec les utilisateurs. Les règles sensibles deviennent des scénarios de recette. Les zones encore inconnues restent identifiées et influencent le périmètre et l’estimation.

La migration couvre-t-elle les données, workers et tâches planifiées ?

Le cadrage les inclut lorsqu’ils appartiennent au périmètre. Nous étudions les migrations de schéma et de données, les sessions, le cache, les messages en attente, les workers et les crons. Les tests doivent vérifier les formats et les effets métier pendant la transition entre les versions.

Le retour arrière est-il toujours possible ?

Il faut le vérifier. Redéployer le code précédent ne suffit pas si les données ont changé ou si une action a déjà été exécutée dans un système tiers. Le plan distingue le repli possible, les rapprochements nécessaires et les transformations irréversibles. Ces limites participent à la décision de mise en production.

Pouvez-vous travailler dans notre SI et garder notre hébergement ?

Oui, selon votre environnement et les accès convenus. Nous préparons le déploiement avec votre DSI et vos équipes d’exploitation. L’application peut rester dans votre cloud, sur votre serveur ou on-premise ; un hébergement Dawap peut aussi être étudié. Les responsabilités de sécurité, de sauvegarde et de supervision sont clarifiées.

Comment estimez-vous le budget et le planning ?

L’estimation suit l’analyse des versions, dépendances bloquantes, parcours critiques, données et interfaces. Elle distingue les lots techniques, la recette, le pilotage et la bascule, avec hypothèses et exclusions. Le calendrier intègre les validations métier, les accès et les interventions des partenaires du SI.

Une trajectoire pour votre application

Partons de votre Symfony actuel. Décidons la prochaine étape.

Versions, incidents, dépendances, utilisateurs et échéances : réunissons les éléments disponibles pour cadrer une reprise ou une migration dont les étapes et les livrables sont compréhensibles.

Cadrer ma reprise Symfony Premier échange avec un expert senior. Le périmètre de la mission est défini avec vous.

Les profils derrière votre projet

Les personnes qui cadrent, construisent et font avancer votre application.

Votre sujet : Reprise de site Symfony et migration legacy

Création, reprise ou refonte : les décisions produit doivent rester reliées à la réalité du code et aux usages. Vous gardez des interlocuteurs capables de découper le travail, arbitrer les priorités et préparer la suite après livraison.

Découvrir l’agence
Portrait de Jérémy Chomel

Direction · architecture

Jérémy Chomel

Architecture web, audit de l’existant, développement, performance et industrialisation des déploiements.

  • API
  • Architecture
  • DevOps
Portrait d’Arnault Frier

Direction · produit

Arnault Frier

Compréhension du terrain, conception des parcours et cadrage d’une application utilisable au quotidien.

  • Produit
  • Cadrage
  • Formation
Portrait de Loïc Orue

Product Owner / Scrum Master

Loïc Orue

Product Owner / Scrum Master : backlog, critères de recette, facilitation des sprints et levée des blocages d’équipe.

  • PO
  • Scrum
  • Backlog

Consultant senior mobilisable

La composition de l’équipe et sa disponibilité sont confirmées selon votre périmètre, les accès nécessaires et le niveau de service attendu.