Faut-il créer une nouvelle application ou refondre un outil métier existant ?
Le choix dépend de l’adéquation de l’outil aux besoins actuels, de son état technique et des possibilités d’évolution. Un outil encore utile peut être conservé et amélioré. Une refonte mérite d’être étudiée lorsque ses limites deviennent importantes. Une nouvelle application peut être pertinente si le besoin change profondément ou si l’existant ne constitue plus une base adaptée.
Commencez par examiner les usages et les difficultés réelles : fonctions satisfaisantes, opérations devenues complexes, lenteurs, problèmes récurrents, composants à maintenir et connexions avec les autres logiciels.
Plusieurs scénarios peuvent alors être comparés :
| Scénario |
Situation dans laquelle l’étudier |
| Améliorer l’existant |
Des difficultés ciblées peuvent être traitées sans modifier profondément le fonctionnement de l’application. |
| Moderniser le socle technique |
Les usages restent pertinents, mais les technologies, les composants ou les conditions d’exploitation doivent évoluer. |
| Refondre une partie de l’application |
Les limites concernent des fonctions ou des composants identifiables. Les autres parties restent utiles et maintenables, et leurs dépendances permettent de délimiter les travaux sans reconstruire l’ensemble. |
| Refondre l’ensemble de l’application |
Les limites touchent largement le socle ou l’architecture, et une succession de modifications locales ne constitue plus une réponse adaptée. Une reconstruction d’ensemble mérite alors d’être étudiée, en identifiant les règles métier, les données et les fonctions utiles à préserver. |
| Créer un nouvel outil |
Le périmètre ou l’organisation cible s’éloigne fortement du fonctionnement actuel, ou la réutilisation de l’existant présente trop de contraintes. |
Une refonte d’application métier peut comprendre une réécriture importante du code tout en préservant les règles métier, les données et les fonctions utiles. Une migration technique peut, quant à elle, changer les technologies ou l’environnement sans redéfinir les usages.
Une refonte partielle et une réalisation par étapes désignent deux choix différents. La première concerne l’étendue des éléments reconstruits ; la seconde concerne l’organisation des travaux. Une refonte d’ensemble peut aussi être envisagée progressivement lorsque les dépendances techniques le permettent.
Comparez les scénarios sur un même périmètre : travaux initiaux, reprise des données, connexions, accompagnement des utilisateurs et maintenance future. L’âge du logiciel ne suffit pas à décider.
Si vous envisagez de remplacer l’outil, comparez également les options application sur mesure ou logiciel standard.
Les objectifs possibles d’une refonte
- Maintenabilité : L’application devenue obsolète retrouve une jeunesse grâce à l’utilisation des dernières versions des outils utilisés. Cette nouvelle version peut aussi permettre de diminuer le nombre de personnes dédié à sa maintenance et donc par conséquent le coût lié à celle-ci
- Vélocité : Des technologies plus récentes permettent non seulement de gagner en rapidité d’exécution, mais aussi de « pluger » des briques qui optimisent la plateforme (comme elastic search par exemple)
- Evolutivité : Réécrire le code permet de le nettoyer des différents ajouts qui ont pu avoir lieu avec le temps et permet d’en optimiser l’ensemble. Cela permet l’utilisation d’un outil plus souple et sur lequel l’ajout de nouvelles fonctionnalités peut se faire de façon aisée et fluide. Il existe en effet des situations dans lesquelles il est compliqué d’ajouter une fonctionnalité à une plateforme si celle-ci n’a pas été pensée dès le départ
- Ergonomie et interface utilisateur : La refonte permet de mieux dissocier les différentes parties back, front et Base De Données. Cela permet également de laisser ainsi plus de souplesse permettant de favoriser l’interface utilisateur
- Continuité d’activité : un découpage par lots ou une coexistence temporaire des versions peuvent permettre de maintenir certains usages pendant la refonte. Les conditions de transition dépendent des données, des connexions et des contraintes d’exploitation. Les opérations de bascule et les interruptions éventuellement nécessaires doivent être préparées.
- Connaissance : La connaissance technique de cette plateforme risque de se perdre et il est nécessaire d’avoir un outil revu de façon globale et avec des technologies suffisamment récentes pour pouvoir être repris aisément
- Ecologie : Ces optimisations et le gain de performance permet une moindre consommation de ressources énergétiques. C’est aussi la possibilité de repenser l’outil en vue d’une simplification.
Une refonte offre de nombreux avantages qu’il est important de connaître pour faire les meilleurs choix !
Pour choisir une trajectoire adaptée, partez des fonctions à préserver et des limites à résoudre. Un diagnostic métier et technique permet de comparer les scénarios et de définir les priorités avant d’engager les développements.
Découvrez notre démarche pour
faire diagnostiquer votre application.