Migrer une application Symfony : risques, méthode et coût

Votre logiciel métier ou votre plateforme tourne sur une ancienne version de Symfony. Il fonctionne, vos équipes l'utilisent tous les jours, et la mise à jour ne semble pas urgente. Pourtant, chaque mois qui passe la rend plus chère et plus risquée. Voici ce que vous risquez à attendre, comment se déroule une migration sans interrompre votre activité, et comment en estimer le coût.

1. Votre application est-elle concernée ?

Symfony est le socle technique sur lequel votre application est construite. Comme un système d'exploitation, chaque version est maintenue pendant une durée limitée, puis abandonnée : plus aucun correctif, y compris de sécurité. Voici où en sont les versions :

Version Situation
Symfony 2, 3 et 4 Abandonnées depuis plusieurs années
Symfony 5 Plus de correctifs publiés par la communauté
Symfony 6.4 Correctifs jusqu'en novembre 2026, sécurité seule jusqu'en novembre 2027 : migration à planifier
Symfony 7.4 Maintenue jusqu'en 2029 : la cible recommandée

Vous ne savez pas quelle version utilise votre application ? Votre développeur peut vous répondre en quelques secondes. Si personne ne le peut, c'est un signal en soi.

2. Ce que vous risquez à attendre

Une faille de sécurité qui ne sera jamais corrigée

Sur une version abandonnée, une faille découverte demain reste ouverte. Si votre application contient des données clients, des paiements ou des informations sensibles, c'est un risque juridique (RGPD) autant que commercial.

Une migration imposée dans l'urgence

Les anciennes versions de Symfony fonctionnent avec d'anciennes versions de PHP, le langage qui fait tourner votre application. Les hébergeurs finissent par les retirer. Ce jour-là, la migration n'est plus un projet planifié : c'est une urgence, avec des délais imposés et un coût plus élevé.

Des évolutions de plus en plus chères

Sur une base vieillissante, chaque nouvelle fonctionnalité demande plus de temps : les outils modernes ne sont plus compatibles, il faut contourner, bricoler. Le coût de l'attente se paie sur chaque évolution.

Des développeurs plus difficiles à trouver

Peu de développeurs veulent, ou savent encore, intervenir sur des versions très anciennes. Le jour où votre prestataire actuel n'est plus disponible, le remplacer devient compliqué.

À retenir : chaque version non franchie s'ajoute à la facture finale. Passer de Symfony 6 à 7 est un chantier raisonnable ; passer de Symfony 3 à 7 en une fois est un projet à part entière.

3. Comment se déroule une migration

Une migration bien menée ne se fait pas en un grand saut, mais par étapes, une version après l'autre. À chaque version, Symfony indique précisément ce qui devra changer pour la suivante : en avançant pas à pas, on ne découvre pas de mauvaise surprise en fin de projet.

  1. L'audit : on mesure l'écart entre votre application et la version visée, on repère les modules externes devenus incompatibles, et on chiffre chaque étape.
  2. La sécurisation : on met en place des vérifications automatiques sur les parcours qui rapportent de l'argent (connexion, commande, paiement, exports). Ce sont eux qui ne doivent jamais casser.
  3. Les étapes de mise à jour : chaque version est franchie, testée sur un environnement identique à la production, puis mise en ligne.
  4. La reprise des évolutions : entre deux étapes, l'application reste pleinement utilisable et les évolutions métier peuvent continuer.

Pour vos équipes, la migration doit être invisible : pas d'interruption de service, pas de changement d'interface imposé. Elles constatent simplement, à la fin, une application plus rapide et plus facile à faire évoluer.

Le vrai point de vigilance : les modules externes. Votre application utilise sans doute des briques développées par d'autres (gestion des utilisateurs, génération de PDF, connexion à un service tiers). Certaines ont été abandonnées par leurs auteurs et doivent être remplacées. C'est ce que l'audit doit identifier en premier, car c'est souvent là que se cache l'essentiel du coût.

4. Le cas des applications très anciennes

Une application en Symfony 2 ou 3 a été construite selon une organisation très différente des versions actuelles. Deux approches sont alors possibles :

  • La mise à jour par étapes, comme décrite plus haut, mais avec davantage d'étapes. Adaptée si le cœur de l'application est sain.
  • Le remplacement progressif : on construit une nouvelle application à côté de l'ancienne, et on y transfère les fonctionnalités une par une. Plus long à démarrer, mais sans grand basculement risqué et sans geler les évolutions.

Dans les deux cas, ce qui a le plus de valeur est conservé : vos données et vos règles métier. Le choix entre les deux approches se fait après l'audit, en comparant les chiffrages.

5. Combien de temps et combien ça coûte

Étape Ordre de grandeur
Audit et chiffrage de la migration 1 à 2 jours, à partir de 1 500 €
Migration d'une application moyenne depuis Symfony 4 ou 5 quelques semaines au total, en plusieurs étapes
Application très ancienne (Symfony 2 ou 3) à chiffrer au cas par cas après l'audit

Trois facteurs font le plus varier le budget : la taille de l'application, le nombre de modules externes à remplacer, et l'existence ou non de vérifications automatiques. C'est pour cela qu'un chiffrage sérieux passe toujours par un audit, et qu'il faut se méfier d'un prix annoncé sans avoir vu le code.

6. Quelle version viser ?

Pour une application métier, la cible recommandée est Symfony 7.4, une version dite « à support long » : elle reçoit des correctifs jusqu'en novembre 2028 et des correctifs de sécurité jusqu'en novembre 2029. Vous êtes tranquille pour plusieurs années.

Symfony 8 existe, mais impose une mise à jour tous les six mois. Il convient aux produits suivis en continu par une équipe dédiée, moins à un outil métier qu'on veut faire tourner sereinement. Pour le détail des versions, voir le point sur les versions de Symfony.

7. Les questions à poser à votre prestataire

  1. Mon application sera-t-elle interrompue pendant la migration ? La réponse doit être non.
  2. En combien d'étapes, et avec quelle mise en ligne à chaque étape ? Méfiez-vous d'une migration livrée en une seule fois après des semaines de silence.
  3. Quels modules externes devront être remplacés, et combien cela coûte-t-il ?
  4. Comment vérifiez-vous que rien n'a cassé ? Des vérifications automatiques sur les parcours critiques sont le minimum.
  5. Quelle version visez-vous, et jusqu'à quand sera-t-elle maintenue ?
  6. Que recevrai-je à la fin ? Une documentation à jour et un code hébergé à votre nom, pour ne dépendre de personne.

Questions fréquentes

Comment savoir quelle version de Symfony utilise mon application ?

Demandez-le à votre développeur ou à votre prestataire actuel : l'information se trouve en quelques secondes dans le code. Si personne ne peut vous répondre, c'est en soi un signal qu'un audit est nécessaire.

Combien de temps prend une migration Symfony ?

Pour une application de taille moyenne en Symfony 4 ou 5, comptez quelques semaines au total, réparties en plusieurs étapes. Le délai dépend surtout de la taille de l'application, de son état et des modules externes qu'elle utilise.

Mon activité sera-t-elle interrompue pendant la migration ?

Non. La migration se fait par étapes, chacune mise en ligne séparément après vérification. L'application reste en service pendant toute l'opération, et les évolutions peuvent reprendre entre deux étapes.

Combien coûte une migration Symfony ?

Le seul moyen d'obtenir un chiffrage fiable est un audit du code, réalisé en 1 à 2 jours à partir de 1 500 €. Il identifie ce qui doit être modifié et donne une estimation pour chaque étape, avant tout engagement sur la suite.

Vaut-il mieux tout refaire ?

Rarement. Votre application contient des années de règles métier, souvent non documentées. Les réécrire fait courir le risque d'en oublier et bloque les évolutions pendant des mois. Une migration par étapes conserve tout ce qui fonctionne.

Votre application tourne sur une ancienne version de Symfony ? Je commence par un audit qui chiffre chaque étape, puis je mène la migration sans interrompre votre activité. Voir ma prestation de reprise et migration Symfony.

Une migration Symfony à planifier ?

Faisons le point sur votre application lors d'un premier échange. Sans engagement, réponse sous 24h.

Prendre rendez-vous