Construire

Migration et reprise de legacy

Une application que plus personne n'ose toucher, remise en état sans arrêter l'activité.

Toutes les entreprises que nous accompagnons ont, quelque part, une application dont le prestataire est parti, dont la technologie n'est plus maintenue, ou dont personne ne comprend plus une partie du code. La réécriture complète en un bloc est le réflexe — et la façon la plus fiable d'échouer : pendant dix-huit mois, plus rien n'avance côté métier, et le jour de la bascule on découvre les règles qu'on avait oubliées. Nous migrons écran par écran, avec l'ancienne et la nouvelle version qui coexistent, jusqu'à ce qu'il ne reste plus rien à migrer.

La méthode

Comment nous procédons

  1. 01

    On reprend l'existant, on le fait tourner

    Avant de juger, on installe et on exécute. Beaucoup de codes réputés incompréhensibles sont surtout non documentés — ce n'est pas la même chose, ni le même prix.

  2. 02

    On établit l'oracle : le comportement actuel fait foi

    L'ancienne version est la spécification, y compris dans ses bizarreries — souvent une règle métier oubliée. On compare écran par écran, on ne réinvente pas en passant.

  3. 03

    On migre par morceaux, jamais d'un bloc

    Les deux versions cohabitent derrière la même adresse, les utilisateurs basculent écran par écran. À chaque étape, le retour arrière est possible en quelques minutes.

  4. 04

    On garde les adresses et les données

    Redirections, identifiants stables, historique préservé. Une migration qui perd les anciens liens ou renumérote les dossiers fait plus de dégâts qu'elle n'en répare.

  5. 05

    On coupe franchement à la fin

    Quand tout est migré, l'ancien est supprimé. Laisser les deux en place « au cas où » crée deux vérités et double la maintenance, indéfiniment.

Ce que vous recevez

Les livrables

  • check_circleL'inventaire de l'existant : ce qui sert, ce qui ne sert plus, ce qui est risqué
  • check_circleLe plan de migration par lots, avec l'ordre et le retour arrière de chacun
  • check_circleL'application migrée, à comportement identique et vérifié écran par écran
  • check_circleL'ancienne version coupée, et sa documentation archivée

Questions fréquentes

Il faut arrêter l'activité pendant la migration ?
Non, c'est tout l'intérêt de migrer par morceaux. Vos équipes continuent de travailler, et basculent écran par écran. Nous menons actuellement plusieurs migrations de ce type, sur des applications utilisées tous les jours.
Vous reprenez du code écrit par quelqu'un d'autre ?
C'est une grande partie de notre travail. PHP, Symfony, WordPress, Node ancien : nous reprenons, nous stabilisons, puis nous décidons ensemble ce qui vaut la peine d'être migré et ce qui peut rester tel quel.
Combien de temps ça prend ?
Une migration sérieuse se compte en mois, parfois en années sur une grosse application. Mais l'activité n'attend pas la fin : dès le premier lot, vous récupérez des écrans plus rapides et plus faciles à faire évoluer.

Parlons de votre projet

Un échange de trente minutes suffit à savoir si nous sommes le bon prestataire. Nous répondons sous 48 heures, et nous disons non quand ce n'est pas pour nous.