Comparatif · Reprise

Refonte ou reprise de l'existant : comment décider pour votre logiciel

Reprenez l'existant quand le code se relit, repose sur des technologies encore maintenues et que les données sont saines : on le sécurise, on le documente, puis on le fait évoluer. Engagez une refonte, de préférence progressive, quand l'audit révèle une technologie en fin de vie, un modèle de données qui bloque le métier ou un code que plus personne ne modifie sans casse.

L'essentiel

  • La décision entre refonte et reprise se prend après un audit du code, des données et des accès, jamais sur la seule impression du nouveau prestataire.
  • Une reprise est raisonnable quand les technologies reçoivent encore des correctifs, que le code se relit et que les données sont cohérentes.
  • Une refonte progressive remplace le logiciel module par module pendant que l'ancien continue de servir, ce qui évite le risque d'une bascule unique.
  • Même en cas de refonte, les données sont presque toujours reprises : leur migration, vérifiée champ par champ, fait partie du projet.

Reprise, refonte progressive ou refonte complète : le tableau comparatif

Reprendre un logiciel, c'est garder son code et le remettre en état avant de le faire évoluer. Le refaire, c'est écrire un nouveau logiciel qui remplacera l'ancien, soit d'un bloc, soit par morceaux. Ces trois chemins n'ont ni le même risque ni le même calendrier.

CritèreReprise de l'existantRefonte progressiveRefonte complète
Point de départLe code actuel, sécurisé et documentéLe code actuel, remplacé module par moduleUne page blanche, avec l'ancien logiciel comme référence
Premières améliorations visiblesRapides : corrections et petites évolutionsAu premier module remplacéÀ la mise en service du nouveau logiciel
Investissement de départLe plus faibleÉtalé dans le tempsLe plus élevé, concentré
Dette techniqueRéduite peu à peu, jamais effacéeSupprimée module après moduleRemise à zéro
Interruption pour les utilisateursAucuneChangements limités à un module à la foisUne bascule globale à préparer
DonnéesConservées en placePartagées ou synchronisées pendant la transitionMigrées en une fois, après des répétitions
Risque principalDécouvrir tard une fragilité profondeFaire cohabiter deux systèmes trop longtempsOublier des règles que seul l'ancien logiciel appliquait

Les six critères qui font pencher la balance

CritèreSignal en faveur de la repriseSignal en faveur de la refonte
Qualité du codeStructure lisible, nommage clair, quelques testsFichiers de milliers de lignes, copier-coller partout, aucune correction sans effet de bord
TechnologiesLangage et bibliothèques qui reçoivent encore des correctifsEnvironnement abandonné par son éditeur ou par sa communauté
DocumentationInstallation et déploiement reproductiblesPersonne ne sait reconstruire la version en production
DonnéesModèle cohérent avec le métier actuelModèle qui oblige à détourner des champs pour suivre l'activité
BudgetTrésorerie limitée, besoin d'étaler l'effortCoût de maintenance annuel qui ne cesse de monter
UrgenceUn incident ou une obligation à traiter tout de suiteUn logiciel qui tient encore, laissant le temps de construire

Un seul signal rouge ne suffit pas à justifier une refonte : un code médiocre écrit dans une technologie vivante se reprend souvent très bien. C'est la combinaison de plusieurs signaux qui fait basculer la décision. La notion de dette technique aide à mesurer ce que coûte chaque année le statu quo.

Ce que l'audit préalable doit établir

L'audit répond à des questions fermées, auxquelles on doit pouvoir répondre par oui ou par non avec une preuve.

  1. Avez-vous tous les accès ? Hébergement, base de données, dépôt de code, nom de domaine, comptes des stores, services tiers : qui en est titulaire ?
  2. Le code récupéré produit-il exactement la version en production ? Si personne ne sait la reconstruire, chaque correction devient un pari.
  3. Les dépendances sont-elles à jour et maintenues ? La CNIL consacre une fiche de son guide RGPD pour l'équipe de développement à la maîtrise des bibliothèques et des SDK, et une autre à la qualité du code et à sa documentation : ce sont précisément les points que l'audit vérifie.
  4. Des tests protègent-ils les parcours critiques ? Facturation, calculs de prix, droits d'accès.
  5. Le modèle de données colle-t-il au métier d'aujourd'hui ? Ou des champs détournés trahissent-ils des contournements anciens ?
  6. Quelles failles évidentes existent ? Mots de passe écrits en clair dans le code, comptes administrateurs oubliés, données exposées.

Le contenu et le coût d'un tel examen sont détaillés dans la page combien coûte un audit de code. Quand le prestataire d'origine a disparu, commencez par la page reprendre un logiciel abandonné, qui traite des accès à récupérer en priorité.

Pourquoi une technologie en fin de vie change la décision

Une technologie en fin de vie ne reçoit plus de correctifs de sécurité. Or l'ANSSI, dans ses dix règles d'or de la sécurité numérique, demande d'appliquer les mises à jour dès qu'elles sont proposées : sur un environnement abandonné, il n'y a plus rien à appliquer. Le RGPD, de son côté, impose à l'article 32 des mesures garantissant la confidentialité, l'intégrité et la disponibilité des données, et une évaluation régulière de leur efficacité. Un logiciel bâti sur des composants figés rend ces obligations de plus en plus difficiles à tenir.

Le second effet est humain. Une technologie de niche ou vieillissante attire peu de développeurs : chaque intervention coûte plus cher, et le jour où la seule personne qui la maîtrise s'en va, le logiciel devient intouchable. Dans ce cas, la reprise n'achète que du temps, et ce temps doit servir à préparer la suite.

La refonte progressive : remplacer sans arrêter l'activité

La refonte progressive construit le nouveau logiciel à côté de l'ancien et transfère les usages par étapes. Le principe tient en quatre gestes :

  1. découper l'existant en blocs fonctionnels (planning, interventions, facturation, rapports) ;
  2. construire le premier bloc dans la nouvelle application, branché sur des données communes ou synchronisées ;
  3. basculer les utilisateurs de ce bloc, en gardant l'ancien écran accessible en consultation ;
  4. recommencer avec le bloc suivant, puis éteindre l'ancien logiciel quand plus personne ne s'en sert.

Le projet Cap Vert applique cette prudence aux données. YMHB Web y a remplacé un outil hérité d'un prestataire précédent par un tableau de bord web et une application mobile iOS et Android pour les équipes de nettoyage. Près de 10 000 enregistrements (environ 1 200 clients, 1 380 chantiers, 4 000 interventions, 3 000 rapports) sont passés de l'ancienne base MongoDB vers PostgreSQL, synchronisés pendant toute la transition et contrôlés champ par champ, sans perte. La génération d'un rapport PDF est passée d'environ 2,6 secondes à moins d'une seconde, et les équipes ont basculé sur les nouvelles applications en août 2026.

Notre verdict selon votre situation

Votre situationRecommandation
Code récent, technologies courantes, prestataire partiReprise : sécuriser, documenter, ajouter des tests, puis reprendre les évolutions
Une partie saine, une partie fragileRefonte progressive, en commençant par le module qui casse le plus
Technologie abandonnée, données sainesRefonte progressive ou complète, avec reprise intégrale des données
Projet jamais terminé, aucune version utilisableRefonte complète, en se servant de l'existant comme cahier des charges
Incident ou obligation à traiter cette semaineReprise ciblée d'abord, décision de fond ensuite
Logiciel stable, peu modifié, qui fait le travailNi l'un ni l'autre : une maintenance sérieuse suffit

Quand aucune des deux options ne convient

  • Un logiciel du marché fait désormais le travail : migrer les données vers cet outil coûte souvent moins cher que reprendre ou refaire un code spécifique.
  • Le logiciel n'a presque plus d'utilisateurs : archiver les données et l'arrêter proprement est parfois la décision la plus saine.
  • Le problème vient du processus : réécrire un outil qui reproduit une organisation confuse ne la rend pas plus claire. On clarifie d'abord qui fait quoi.
  • Le différend avec l'ancien prestataire est juridique : si le code est retenu en contrepartie d'une facture contestée, le sujet relève d'un avocat avant d'être technique.

Ce que YMHB Web livre à l'issue de l'audit

YMHB Web conclut l'audit par une recommandation écrite et argumentée : reprise, refonte progressive ou refonte complète. En cas de reprise, le travail commence par la sécurisation, la documentation et des tests sur les parcours critiques, comme le décrit l'offre de reprise d'un logiciel existant. En cas de refonte, la préférence va au remplacement progressif et à une migration des données vérifiée avant chaque bascule. Dans les deux cas, le code et les accès sont remis au nom du client, et le code lui appartient au paiement intégral. Les facteurs qui font varier le budget sont présentés dans la page combien coûte la refonte d'un logiciel.

Questions fréquentes

Une refonte coûte-t-elle toujours plus cher qu'une reprise ?

Une refonte coûte plus cher au départ qu'une reprise, mais pas forcément sur la durée de vie du logiciel. Quand le code est fragile ou repose sur une technologie qui ne reçoit plus de correctifs, chaque évolution d'un logiciel repris coûte davantage année après année. La comparaison doit porter sur plusieurs années : investissement initial, maintenance annuelle et coût des incidents dans les deux scénarios.

Qu'est-ce qu'une refonte progressive d'un logiciel ?

Une refonte progressive consiste à remplacer un logiciel module par module, en construisant le nouveau à côté de l'ancien. Les deux partagent ou synchronisent leurs données pendant la transition, les utilisateurs basculent bloc par bloc, et l'ancien logiciel reste consultable jusqu'à son arrêt. Cette approche évite une bascule unique risquée et permet de corriger la trajectoire après chaque étape.

Les données sont-elles perdues lors d'une refonte ?

Les données ne sont pas perdues lors d'une refonte bien menée : elles sont migrées de l'ancienne base vers la nouvelle, après des répétitions et des contrôles. Une bonne pratique consiste à vérifier les enregistrements champ par champ, à synchroniser les deux bases pendant la transition et à ne jamais supprimer l'ancienne avant que le nouveau logiciel ait fait ses preuves auprès des utilisateurs.

Faut-il refaire son logiciel quand on change de prestataire ?

Changer de prestataire ne justifie pas à lui seul de refaire un logiciel. Un nouveau prestataire peut préférer réécrire ce qu'il ne connaît pas, mais la décision doit reposer sur un audit écrit : accès, qualité du code, technologies, données et documentation. Si le code se relit et que ses technologies sont maintenues, la reprise est généralement la voie la plus économique et la moins risquée.

Que faire si le code récupéré ne correspond pas à la version en production ?

Si le code récupéré ne correspond pas à la version en production, il faut d'abord sauvegarder la production telle qu'elle tourne, puis mesurer l'écart : fonctions absentes, fichiers modifiés directement sur le serveur, configuration manquante. Selon l'ampleur de l'écart, on reconstitue le code à partir de la production ou l'on s'oriente vers une refonte, en se servant de l'application existante comme référence fonctionnelle.

À lire aussi

Sources

  1. CNIL, La CNIL publie une nouvelle version de son guide RGPD pour l'équipe de développement (13 décembre 2021 : fiches code source, bibliothèques et SDK, qualité du code et documentation)
  2. ANSSI, Les 10 règles d'or de la sécurité numérique
  3. CNIL, texte du RGPD, chapitre IV (article 32, sécurité du traitement)

Prêt à démarrer ?

Décrivez-nous votre situation, pas une liste de fonctionnalités.

Réponse sous un jour ouvré, en général par téléphone. Si un outil du marché suffit, nous vous le dirons.

Premier échange sans engagementCadrage avant chiffrage

AppelerDécrire mon problème