Last time on Cigar Czar Radio

Modèle legs graduel

Les approches de modernisation héritées et les techniques qu`ils utilisent, classées en fonction de leur complexité en investissant dans le support et la maintenance de logiciels hérités, vous laissez moins de place aux innovations. Au lieu d`adopter de nouvelles technologies et modèles d`affaires, vous êtes coincé avec votre ancien logiciel, laissant de nouvelles opportunités dans votre industrie passer inaperçue. Cela laisse vos concurrents plus d`ouvertures pour surperformer et de prendre en charge votre part de marché. Les systèmes hérités ne parviennent souvent pas à fonctionner selon les besoins en raison de leur structure trop complexe. En modernisant votre système, moins est plus en termes d`architecture et de fonctionnalité. Commencez par implémenter uniquement les fonctionnalités les plus importantes. Considérez une approche d`architecture de microservices pour rendre votre produit évolutif. En outre, assurez-vous que l`application nouvellement publiée fonctionnera bien avec le reste des outils utilisés dans votre entreprise par défaut. Si vous envisagez de modifier l`un des outils prochainement, envisagez plusieurs options possibles et conservez leurs besoins à l`esprit lors de la création de votre application. Les logiciels hérités ne relèvent pas toujours des définitions «anciennes» ou «obsolètes».

Il y a plus d`aspects à évaluer lors de l`identification de l`héritage. C`est pourquoi vous devez évaluer tous les systèmes en place pour découvrir les problèmes actuels et potentiels qu`il peut apporter dans un avenir proche. L`évaluation doit être systématique et détaillée: étudiez tous les aspects de votre technologie, du code et de l`architecture à l`aspect visuel et à la sensation, en tenant compte de vos futurs plans d`affaires pour la croissance des produits. Tout d`abord, la réponse de manuel incontestée sur la façon de traiter avec le code hérité fonctionne efficacement avec Legacy code par Michael Feathers. Il faut une approche pragmatique pour nettoyer votre codebase grâce à l`utilisation de test et de refactorisation incrémentielle, et contient de nombreuses techniques et des exemples. Je recommande vivement de le lire. Infrastructure. Tout comme le logiciel lui-même, l`infrastructure sous-jacente devient plus difficile et plus coûteux à entretenir à mesure qu`il vieillit. Les systèmes hérités requièrent souvent un environnement technique spécifique, y compris le matériel. Ainsi, les dépenses de maintenance de l`infrastructure demeurent élevées, par rapport aux solutions modernes basées sur le Cloud.

Les données héritées représentent un autre problème d`infrastructure significatif. Étant dispersés sur plusieurs bases de données et ressources de stockage, il est difficile de réorganiser pour l`optimisation de l`espace de stockage accrue. Rassembler et systématiser les données héritées manuellement pour les transférer vers une nouvelle base de donnée est une tâche coûteuse en temps et en coûts. Mises à jour et modifications. Les systèmes hérités sont généralement assez volumineux en termes de base de code et de fonctionnalité. En tenant compte de leur nature monolithique, vous ne pouvez pas simplement changer ou remplacer un seul module système. Une petite mise à jour peut entraîner plusieurs conflits dans le système. Ainsi, tout changement ou mise à jour du système hérité nécessite du temps et des efforts, aucun d`entre eux ne sont pas chers. En outre, les systèmes hérités ont généralement de vastes quantités de documentation, ainsi qu`un certain nombre de fonctionnalités non documentées. Ainsi, il y a toujours un certain risque impliqué en interférant avec le code source. Cognizant donne une description détaillée du processus de réingénierie séparant le remplacement progressif et la transformation totale. Le remplacement progressif suit le modèle évolutif tout en modernisant l`ensemble du système une pièce à la fois.

À l`inverse, la transformation totale est une reconstruction complète à partir de zéro en utilisant la nouvelle technologie ou un paquet de tiers comme couche de Fondation.