Cloud – Rénover ou construire à neuf – Telle est la question !! Cette question est souvent sur les lèvres des propriétaires de maison qui désirent améliorer ou adapter leur milieu de vie. Il existe, bien sûr, plusieurs points de vue sur le sujet. Je vais cependant laisser à des experts en immobilier le soin de débattre cette épineuse question. En technologies de l’information, cette question est prédominante depuis aussi longtemps que le PC a remplacé l’ordinateur central comme outil de travail dans l’entreprise : que faire avec nos applications patrimoniales (legacy systems) ? Les migrer (rénover) ou recommencer son développement (construire à neuf) ? Dernièrement, l’informatique dématérialisée (nuagique – cloud) est au goût du jour. Les plateformes connues (Amazon, Azure, etc.) offrent des services qui doivent être étudiés lorsqu’on se penche sur des questions d’architecture applicative. La question est cependant toujours la même. Quelques faits Les plateformes nuagiques ne sont pas des environnements d’hébergement traditionnels puisque la couche matérielle est virtuellement (un jeu de mot ici) cachée de l’application. Cette virtualisation implique une diminution du contrôle sur les ressources disponibles à votre application. Ceci veut donc dire que certaines de vos exigences opérationnelles (performance, sécurité, résilience) ne seront peut-être pas atteintes sur une plateforme nuagique. Quelques pistes d’expérimentation Une architecture « nuagique » requiert une décomposition maximale et un couplage minimal. Il faut aussi minimiser les échanges entre les composantes. Une application « nuagique » doit être en mesure de s’auto diagnostiquer pour réagir correctement aux erreurs et être en mesure d’utiliser plus de ressources (qui sont disponibles puisqu’elles sont « virtuelles ») au moment opportun. De nouvelles architectures de programmation, langages et techniques doivent être conçus pour utiliser ces ressources efficacement. Les résultats potentiels Le potentiel est immense si l’on est en mesure de penser différemment. Par exemple, une indépendance face à l’infrastructure offre une grande latitude aux architectes logiciels : (1) extensibilité presque infinie et (2) résilience à coût modique. Donc… on rénove ou on construit à neuf? Les applications nuagiques doivent s’adapter à la plateforme et non le contraire. Rénover exige de modifier des technologies existantes pour les adapter aux contraintes. Les risques technologiques sont donc évidents. Recommencer à neuf une application est peut-être cependant trop ambitieux. Au lieu de cela, vous devriez penser à comment votre entreprise peut se servir du « nuage » pour innover auprès de vos clients en leur proposant des fonctionnalités nouvelles qui s’ajoutent à vos applications existantes. Crédit photo : Tumisu via Pixabay.