Tout récemment, j'ai découvert une idée appelée Modèle d'étrangleur d'applications . D'après ce que j'ai compris, il s'agit d'une solution au problème des grands systèmes hérités. L'idée est de créer une nouvelle application autour de l'ancienne application. Le coût et le risque de cette démarche seront bien moindres que ceux d'une réécriture complète du système. Lentement, au fil du temps, la nouvelle application fera de plus en plus de travail et finira par étouffer l'ancienne application. Pendant ce temps, les développeurs travaillent dans un nouveau système propre, plus efficace et, espérons-le, produisant un bien meilleur code.
Là où je travaille actuellement, nous sommes arrivés à un point où les nouvelles fonctionnalités, même les choses apparemment insignifiantes, prennent beaucoup de temps à développer, avec un risque élevé de casser quelque chose. Nous avons environ un million de lignes de code, avec une couverture des tests unitaires de 1 à 2 %. Le système est un système SOA utilisant des services web (aucun n'est vraiment nécessaire) et est plus procédural dans son style qu'orienté objet. Le système est à la fois web et win, tout est écrit dans les langages de programmation .net.
Enfin la question : En envisageant cette nouvelle idée/ce nouveau modèle, j'aimerais savoir si quelqu'un a eu une expérience de l'utilisation de ce modèle qu'il aimerait partager. Par exemple, quelle serait une bonne façon de le mettre en œuvre (en se connectant aux événements de l'ancienne application, par exemple) ? De même, si quelqu'un a des idées sur le sujet, pourquoi ce serait une bonne ou une mauvaise idée, ce serait également apprécié.
Références :