Toutes les entreprises sont désormais fortement dépendantes du numérique, ne serait-ce que pour interagir avec leurs clients ou leurs collaborateurs. Et, dans le sillage de la crise sanitaire, ce mode d’interaction numérique est devenu plus que jamais primordial, et les attentes utilisateurs largement plus élevées !
Et tout cela repose sur des applications. Sans applications, il n’y a pas d’expérience numérique. Chaque interaction avec une entreprise en ligne, que ce soit via son site web ou son application mobile, repose en définitive sur des applications. Ces codes que les entreprises conçoivent, construisent, achètent ou exploitent sont le visage qu’elles montrent à leurs clients !
Cependant, bien qu’elle soit au cœur de la relation client, l’expérience numérique rendue possible par ces applications peut être fragile : selon l’étude App Attention Index de AppDynamic, près de 80 % des entreprises se sont vues demander des réductions ou des remboursements en raison d’une mauvaise expérience numérique. Et 32 % des clients déclarent qu’ils abandonneraient une marque à laquelle ils étaient auparavant fidèles à cause d’une mauvaise expérience. Une seule mauvaise expérience peut donc faire fuir un client quasiment une fois sur trois !
Il est donc clair que les attentes concernant les applications sont incroyablement élevées et qu’elles ne feront probablement que croître à l’avenir. Car elles sont portées par des innovateurs disposants de moyens importants — Amazon, Apple, Uber, pour n’en citer que quelques-uns — qui trouvent sans cesse de nouvelles façons de se différencier par des expériences numériques inédites, auxquelles leurs clients s’habituent. Et ils en viennent ensuite bien entendu à exiger la même qualité de la part de leurs autres fournisseurs. Hélas, la plupart des entreprises ont du mal à suivre le rythme de ces attentes croissantes !
De nombreuses entreprises disposent pourtant de vastes portefeuilles applicatifs qui leur permettent d’interagir avec leurs clients, leurs employés et leurs partenaires. Mais en raison de facteurs tels que le coût, le risque et la conformité, ces applications sont trop souvent un mélange compliqué de services et de fonctionnalités historiques et modernes qui s’empilent sans grande cohérence, ce qui rend difficile la création d’expériences utilisateurs vraiment innovantes.
Application moderne, mais back-office âgé
Prenons le cas d’une banque disposant d’une application mobile récente et élégante : celle-ci fournit certes des informations sur les comptes de manière claire et moderne, mais elle fait probablement appel à une logique commerciale provenant d’un système de gestion historique – qui doit être maintenu avec soin pour garantir la fiabilité et la continuité de systèmes complexes qui ne peuvent pas tous être mis à jour en même temps. Autrement dit, l’innovation de l’application mobile sera certainement bridée par les limitations de la couche applicative en backoffice, probablement bien plus âgée.
Les défis en matière de sécurité sont également considérables et semblent s’aggraver. L’une des raisons de cette tendance à la hausse tient à la complexité. Notre dernier rapport sur l’état des services applicatifs, publié en janvier 2020, a notamment mis en évidence les difficultés qu’éprouvent les organisations à gérer la sécurité de leurs applications dans les environnements multi-cloud.
Mais il n’y a pas que ça. Une autre raison est l’évolution rapide du paysage des menaces, où le coût des attaques sophistiquées ne cesse de baisser, mais où le coût de la défense ne cesse d’augmenter (une tendance qui n’est donc pas du tout en faveur du RSSI !). En particulier, le nombre énorme de fuites de données au cours de la dernière décennie a permis à presque tous les cybercriminels du monde de s’emparer de comptes d’applications et d’aller vérifier si les victimes ont réutilisé leurs mots de passe sur d’autres sites web, et compromettre alors également ces comptes-là !
Les études menées par le F5 Labs révèlent ainsi que 86 % des cyberattaques ciblent des applications ou les comptes utilisateurs qui leur sont associés. Et leur nombre augmente chaque année. Pire : dans le contexte de la pandémie mondiale, nous avons assisté à une hausse sans précédent.
Le défi de la visibilité
Et puis, il y a le défi de la visibilité. Pour offrir une expérience numérique convaincante, il faut notamment être capable d’optimiser les performances de chaque application. Et pour bien comprendre le trafic applicatif — et où et comment l’ajuster — il faut disposer d’une visibilité granulaire de bout en bout.
Toutefois, l’infrastructure et les services qui prennent en charge ces applications sont complexes et cloisonnés, de sorte que très peu d’entreprises ont développé cette capacité, même pour leurs applications les plus critiques.
Tous ces problèmes sont encore aggravés par l’échelle même des applications. À l’ère des micro-services et de l’informatique distribuée, qui peuvent agréger des centaines de composants et des dizaines d’API, il n’est ainsi pas possible de rester à la pointe d’un portefeuille d’applications en expansion sans une automatisation de plus en plus sophistiquée.
F5 estime qu’un élément important de cette automatisation plus sophistiquée est de permettre aux applications de s’adapter. Tout comme un organisme vivant, les applications adaptatives se développent, rétrécissent, se défendent et se soignent en fonction de l’environnement dans lequel elles se trouvent et de la manière dont elles sont utilisées. Cela s’applique autant aux organisations nées dans le nuage (les fameuses « Cloud natives », ces entreprises natives du numérique) qu’aux entreprises établies qui exploient un mélange complexe d’architectures traditionnelles et modernes.
Des applications qui s’adaptent aux conditions externes
Concrètement, à quoi ressemble une telle capacité d’adaptation ? Il s’agit avant tout de la maîtrise du chemin de données — le chemin par lequel le trafic applicatif circule pour atteindre l’utilisateur final — et du contrôle des services support : l’ensemble des capacités qui se trouvent tout au long du chemin de données pour fournir aux utilisateurs finaux un accès sûr et fiable à la logique commerciale des applications.
Parmi ces capacités, les services applicatifs reposent notamment sur des fonctions essentielles, comme les serveurs d’application, les serveurs web, les équilibreurs de charge, le DNS et/ou les réseaux de distribution de contenu (CDN).
En complément, d’autres services facilitent la sécurité des applications, dont notamment les pare-feu applicatifs web (WAF), l’accès sécurisé aux applications, les technologies anti-DDoS, anti-bot et les défenses contre la fraude et les abus.
Pris ensemble, tous ces services représentent la base de l’expérience numérique des clients. D’ailleurs, le terme « code to customer » (du code au consommateur) désigne parfaitement cet ensemble de capacités placées sur le chemin des données.
Mais chacun de ces services applicatifs génère lui aussi des données précieuses telles que la latence ou le pilotage et l’application des politiques. L’exploitation de cette télémétrie crée alors toute la visibilité nécessaire pour pouvoir ensuite modifier les contrôles et les configurations afin d’optimiser les performances et la sécurité le long du chemin des données de l’application.
Nombre de ces capacités sont déjà en place, mais pour franchir la prochaine étape importante vers des applications vraiment adaptatives, il en manque encore quelques-unes, dont une couche d’analyse et d’automatisation qui prendra en compte la télémétrie provenant des services applicatifs et leur transmettra les bons éléments de configuration.
L’application adaptable suit le soleil
L’apprentissage machine et d’autres techniques issues de l’Intelligence Artificielle peuvent permettre au système de modéliser le trafic historique ou similaire, d’en tirer des enseignements par rapport au trafic actuel et de fournir un aperçu de ce qui se passe exactement, ainsi que de proposer la meilleure stratégie d’optimisation.
Une application adaptative peut alors agir sur cette télémétrie pour croître, se contracter et ajuster son comportement en fonction de la demande.
Par exemple, imaginons une marque de coffee shops avec des boutiques à travers le monde, dotée d’une application mobile qui permette aux clients de trouver le magasin le plus proche, de passer commande depuis leur téléphone, puis de payer directement à partir d’un porte-monnaie électronique et de gagner au passage des points de fidélité.
Nous l’avons vu, toutes ces interactions ont besoin de capacités annexes pour rester performantes et sécurisées. Mais la consommation de café n’est pas linéaire dans la journée, et ces capacités n’ont donc pas besoin d’être dimensionnées de la même manière vingt-quatre heures sur vingt-quatre partout dans le monde. Comme la consommation de café atteint des sommets le matin, ces ressources vont changer en fonction des fuseaux horaires. Avec des applications adaptatives, il est alors possible d’augmenter les performances, la sécurité et les ressources pour répondre à la ruée matinale à Paris, puis les redéployer dans des centres de données ou des points de présence (PoP) sur la côte est des États-Unis pour prendre en charge les pics de caféination à New York… et continuer à suivre ainsi le soleil vers l’ouest !
Les applications se défendent et se soignent
Mieux : les applications adaptatives peuvent également se défendre et se soigner. Ainsi, si un acteur malveillant tente d’attaquer ou de frauder l’application pour voler des données, de l’argent ou des récompenses, l’application peut, grâce à l’Intelligence Artificielle, apprendre et appliquer ces connaissances à travers le réseau pour bloquer toute nouvelle tentative de cet acteur ou toute activité similaire de la part d’autres acteurs.
Grâce aux techniques d’IA, il est ainsi possible de faire la différence entre le trafic automatisé (robots) et celui des humains, ainsi qu’entre le trafic malveillant et le trafic légitime. Sur cette base, il est alors possible de prédéfinir des politiques pour bloquer automatiquement le trafic malveillant ou de faciliter l’accès des clients humains.
En s’appuyant sur des systèmes d’intelligence artificielle, une telle solution est capable d’analyser la télémétrie provenant d’un vaste portefeuille de technologies de chemin de données, allant des équilibreurs de charge aux solutions WAF en passant par les serveurs web ou les passerelles API et les services dans le nuage.
En exploitant la télémétrie de ces composants, il devient possible d’obtenir une visibilité granulaire de la circulation des applications. Des modèles peuvent être déduits au fil du temps et des seuils établis pour détecter les anomalies et signaler quand une intervention est nécessaire. En plus de signaler une application ou un service d’application spécifique pour une intervention, il devient possible d’effectuer une partie du dépannage pour suggérer les causes profondes probables du problème.
Armés de toutes ces informations et d’une telle capacité d’alerte, les opérateurs humains peuvent alors établir des règles sur la manière dont des problèmes similaires doivent être traités. De cette façon, l’application adaptative ne se contente pas d’être évolutive et sécurisée, elle apprend et s’améliore au fil du temps.
Apporter de l’automatisation au multi-cloud
Actuellement, rien de tout cela n’est automatisé dans les environnements hybrides ou multi-cloud. Il faut beaucoup de politiques et de scripts manuels pour mettre en œuvre ce qui se résume concrètement des réponses figées, car codées en dur et incapables de réellement s’adapter en temps réel.
La plupart des entreprises opèrent aujourd’hui dans un monde où, si l’expérience d’un client est mauvaise, elles en entendent d’abord parler par Twitter et doivent ensuite se démener pour chercher suffisamment de détails afin proposer une solution.
Cette méthode de gestion des applications, ce processus statique où l’organisation gère ses ressources de manière manuelle, ne permet plus désormais de répondre aux attentes élevées des clients auxquelles les entreprises sont confrontées.
Dans un monde d’applications adaptables, les services applicatifs s’adaptent d’eux-mêmes en fonction de la demande. Ils se défendent et alertent l’ensemble du système s’ils rencontrent des difficultés. Ils se fondent en une expérience utilisateur finale aussi adaptable que possible, avec la possibilité de configurer et d’orchestrer différents types d’expériences. Le résultat final est une expérience numérique extraordinaire pour l’utilisateur final de l’application.
C’est, pour le meilleur ou le pire, devenu désormais le niveau d’exigence des clients et des collaborateurs des entreprises !