News

Modernisation d’applications: la clé de la réussite de sa transformation digitale

Image
Tandis que les entreprises progressent dans leur transformation digitale, la modernisation des applications devient un enjeu majeur dans la réussite de cette transformation. Yann Dagorn, Head of Managed Application Services, nous partage la vision de Fujitsu en la matière.

Pourriez-vous nous expliquer ce qu’est la modernisation d’applications et quand l’envisager?

Il s’agit d’un processus de transformation d’une application existante pour mettre à niveau son infrastructure technique, son architecture logicielle et/ou faire évoluer ses fonctionnalités.

Le constat actuel démontre que les sociétés possèdent des applications hébergées sur des infrastructures techniques dépassées, des infrastructures logicielles monolithiques, avec des risques inhérents à celles-ci de plus en plus élevés et utilisent fréquemment une méthodologie de suivi de projet basée sur une approche en cascade (‘Waterfall’).

Dans ces circonstances et compte tenu de la pression du métier imposant des délais de mise sur le marché de plus en plus courts et une nécessité d’agilité accrue, la modernisation devient incontournable.

 

Quels bénéfices peut-on attendre de la modernisation?

La modernisation d’applications apporte de nombreux bénéfices dont les plus évidents sont l’accélération de la transformation digitale de l’entreprise, l’évolution des expériences et responsabilités des équipes de développement, un cycle de livraison optimisé et un portage facilité des applications dans des environnements cloud.

Le besoin de transformation du métier est un véritable accélérateur de la modernisation dont les facilitateurs sont les solutions techniques comme la «containerisation» et les solutions organisationnelles. Nous pouvons notamment citer les pratiques DevOps permettant d’établir une passerelle entre les équipes de développement et les équipes de gestion opérationnelle.

 

Comment identifier si une modernisation est envisageable, souhaitable ou nécessaire?

Une modernisation réussie est fortement dépendante de l’état des lieux de l’existant et de la vision digitale de la société.

L’identification de modernisation nécessite alors une phase d’analyse appelée «Profilage des applications», qui permet d’établir une topologie des applications sur base de deux critères principaux, à savoir, la valeur technologique et la valeur métier.

Sur base de ces critères, il est alors possible de déduire l’avenir d’une application existante parmi les options suivantes: retirer l’application du service, la conserver, la réécrire ou la moderniser.

Par exemple, une application à faible valeur ajoutée pour le métier dont le socle technologique est dépassé ne présente pas d’intérêt pour être conservée. En revanche, une application critique pour le métier et hébergée sur une plateforme vieillissante doit être considérée comme une application à migrer.

 

Quelle serait, pour vous, l’approche optimale pour la modernisation d’applications?

Dans le parcours de modernisation d’une application, deux principaux axes se dégagent, l’implémentation d’architecture «microservices» et l’utilisation de «containers».

L’architecture microservices est un mode d’architecture qui structure une application en un ensemble de services de petite taille, faiblement couplés, centrés sur des fonctions métier et pouvant être déployés indépendamment les uns des autres. Les principaux bénéfices sous-jacents à ce découpage étant par conception: la flexibilité, le passage à l’échelle, la productivité, l’isolement, l’évolutivité et la réduction des temps de développement.

La containerisation, quant à elle, contribue à augmenter le niveau d’abstraction entres les couches logicielles et systèmes d’exploitation par la création de containers autonomes contenant l’ensemble d’une application ou de microservices ainsi que leurs dépendances. Cette notion est très importante car elle permet, en premier lieu, de challenger les équipes de développement pour fournir des containers éprouvés mais également d’obtenir un véhicule fiable pour les applications pouvant être déployé facilement dans des environnements de productions internes ou dans le cloud.

La combinaison de ces deux piliers permet une transition efficace vers une modernisation de l’architecture et des applications tout en garantissant un passage vers le monde du cloud en douceur.

 

Quels sont les changements majeurs en termes de gestion des développements et de la production?

Dans un premier temps et comme abordé précédemment dans cet article, la modernisation doit répondre à un besoin de réduction des délais de livraison. La méthodologie Agile prend alors tout son sens avec ce qu’elle apporte en termes de livraisons fréquentes mais aussi de variations de périmètre. Elle permet également la prise en charge dans des délais très courts de changements ou de nouvelles fonctionnalités devant être intégrés.

Dans un second temps, l’adoption de principe de containerisation favorise la mise en place des bonnes pratiques ‘DevOps’ qui permet de faire évoluer rapidement et significativement les rôles et responsabilités des équipes de développement et des opérations. Cette évolution génère alors une meilleure collaboration des équipes, une diminution notable des risques et une facilité de déploiement et de gestion opérationnelle des applications.

 

Pour conclure, la modernisation: écueil et complexité?

Bien au contraire, la clé de la réussite découle d’une parfaite compréhension de l’architecture système et de l’architecture logicielle des applications informatiques. En suivant un cadre rigoureux d’analyse de l’existant, d’étude des solutions technologiques adaptées et d’implémentation dans les règles de l’art, la modernisation d’applications devient une étape enrichissante et stratégique dans la vie de l’entreprise.

Article rédigé par LG en mars 2020, retrouvez-le en cliquant ici