May 15, 2024

PDFS

C'est en forgeant qu'on devient forgeron

Rendre l’entreprise composable

8 min read

Il y a une dizaine d’années, le PDG de Red Hat, Jim Whitehurst (aujourd’hui président d’IBM) utilisait le terme « composabilité » comme accroche pour son discours d’ouverture. « Je veux vous parler de l’ère de la technologie composable et de la façon dont vous [as developers] vont tous aider à le construire », a déclaré Whitehurst.

Du point de vue des applications, développer des logiciels de manière composable, à l’aide de composants logiciels, est beaucoup plus flexible et plus facile que de créer des applications en tant qu’applications monolithiques intégrées verticalement.

« Si vous êtes capable d’écrire du code dans de petites sections qui peuvent être testées et déployées indépendamment, simplifiez l’intégration de nouveaux composants de l’application et fournissez ces mises à jour beaucoup plus rapidement, cela peut constituer un avantage concurrentiel important », déclare Antony Bourne, vice-président senior pour les industries chez IFS.

En pratique, cela signifie qu’il est beaucoup plus facile d’exploiter et d’appliquer des outils tels que l’automatisation des processus robotiques, l’intelligence artificielle ou la pléthore de capacités d’hyperautomatisation disponibles aujourd’hui, visant à simplifier les flux de travail et à optimiser les processus métier.

Ariel Assaraf, PDG de la plateforme d’analyse de streaming dynamique Coralogix, estime que la pensée composable est le premier élément constitutif d’une entreprise composable. « Notre façon de penser influence tout ce que nous faisons – elle nous guide non seulement pour décider quoi composer, mais aussi quand et comment », dit-il. « En nous basant sur un état d’esprit de composabilité, nous pouvons commencer à la mettre en œuvre dans l’ensemble de l’organisation ou, plus précisément, dans l’architecture commerciale et les piles technologiques.

« Comment modulariser l’entreprise et le produit de manière à ce que chaque partie puisse fonctionner plus ou moins indépendamment des autres ?

L’abstraction a un rôle clé. Dans la vision d’Assaraf d’une entreprise composable, chaque composant modulaire, de la pile technologique de l’organisation à l’architecture métier, se voit attribuer un certain niveau d’abstraction pour permettre plus d’agilité.

Mais il ajoute : « Il y a un point de rendement décroissant sur l’abstraction. Si nous allons trop loin et que nous décomposons tout au niveau «atomique», tout ralentit parce que cela se fait à partir de zéro. »

Pour Assaraf, chaque partie nécessite une autonomie totale, mais faire fonctionner les parties ensemble est le plus grand défi. « Nous devons trouver un équilibre entre autonomie et abstraction », dit-il.

Réutiliser du code standard

Rod Cope, directeur technique de Perforce, estime qu’au lieu de travailler au niveau des widgets, les développeurs de logiciels parlent de bases de données réutilisables, de clouds et de machines virtuelles. De plus, l’open source – dont l’adoption se développe rapidement dans les organisations de toutes sortes – est en soi une forme de développement composable.

Dans un monde idéal, rien ne doit être construit à partir de zéro. Mais pour le moment, la demande de développement plus rapide et à grande échelle signifie que rassembler des composants éphémères pour livrer des projets rapidement force le rythme du changement.

Comme le souligne Cope, certains composants d’infrastructure sécurisés et contrôlés, tels qu’Ansible, Chef et Puppet, peuvent aider les équipes de développement de logiciels à accélérer le développement d’applications simplement en saisissant un composant standard et en le personnalisant pour leurs besoins particuliers, en utilisant une approche automatisée d’infrastructure en tant que code.

Le résultat net, dit-il, est que les développeurs peuvent composer des éléments bien testés dans un flux de travail DevOps existant, offrant une meilleure agilité et qualité, à la vitesse et à l’échelle. « La bonne nouvelle pour les développeurs est qu’ils passent moins de temps à créer des blocs de construction de base, qu’ils peuvent fournir plus de code plus rapidement, libérant, espérons-le, du temps à consacrer à une réflexion innovante plus prête à l’emploi, ou à tout le moins, à ajouter à une application quelle que soit leur contribution unique », dit-il.

API pour la composabilité

Dans le monde de l’entreprise composable, les équipes de produits doivent être en mesure de fournir rapidement des logiciels sur mesure pour répondre aux nouvelles opportunités de marché qui émergent, déclare Guy Sayar, CTO pour la région EMEA chez HashiCorp. « Les applications et l’infrastructure évolueront invariablement de manière imprévisible », dit-il. « Cette fluidité ne peut être obtenue que dans un système défini par une API [application programming interface]. “

Sayar recommande que les API soient utilisées non seulement pour fournir l’infrastructure logicielle qui stimule l’innovation numérique, mais qu’elles soient également utilisées dans les processus de création et de maintenance de cette infrastructure. Il s’agit d’un modèle centré sur les API, poussé par une maturité croissante des décideurs et des utilisateurs du cloud.

« Les équipes informatiques et commerciales sont de plus en plus disposées à intégrer des tiers de confiance à leurs infrastructures nouvelles et étendues – pour exécuter leurs applications sur des environnements d’exécution innovants et fournir des services de valeur via ces API », dit-il.

Alors que les API aident les équipes internes et les partenaires externes à se connecter aux applications back-end, Kelly Goetsch, chef de produit chez Commercetools, dit que du point de vue de l’utilisateur final, les gens peuvent avoir des besoins très différents en termes de données dont ils ont besoin, de puissance de traitement et de connectivité Internet.

Par exemple, regardez le nombre d’appels d’API requis pour créer la chronologie Facebook d’un utilisateur, explique Goetsch. “Maintenant, imaginez effectuer toutes ces requêtes à partir d’une ancienne Apple Watch sur une mauvaise connexion Internet.”

Facebook a construit une spécification sur la façon de rechercher des données appelée GraphQL. La fondation GraphQL, la maison de GraphQL, définit GraphQL comme « un langage de requête pour vos API ».

Facebook l’utilise en interne depuis 2012 et a rendu publique la spécification en 2015. Depuis lors, elle s’est rapidement propagée et est maintenant utilisée par Twitter, Microsoft, Amazon, Google et le New York Times, entre autres.

Goetsch déclare : « Avec GraphQL, vous n’effectuez qu’une seule requête, en spécifiant exactement les données que vous souhaitez récupérer. La couche GraphQL envoie ensuite des requêtes aux API individuelles (du côté serveur) pour répondre à la requête. En tant que développeur, vous obtenez une réponse unique contenant tout ce dont vous avez besoin pour afficher la page détaillée de votre nouveau produit. Pensez à GraphQL comme à SQL, où vous pouvez récupérer des données à partir de plusieurs tables de bases de données à l’aide d’une seule requête.

Selon Goetsch, GraphQL résout la sur-extraction, la sous-extraction, la découvrabilité, l’autorisation/l’authentification et plus encore. Il dit qu’il est conçu explicitement pour que les développeurs côté client puissent facilement récupérer les données des API et qu’il est devenu la norme et la «colle» de la composabilité.

prolifération des API

Sayar de HashiCorp affirme que l’infrastructure composable nécessite une culture API indépendante. Mais il prévient : « Il y a une fine frontière entre indépendant et chaotique. Dans les grandes pratiques DevOps, les équipes créent et exécutent des milliers d’API. Le résultat par défaut sera « l’extension de l’API ». La dette technique entravera le succès à long terme.

D’après son expérience, un autre défi est la diversité des frameworks de développement utilisés dans une organisation, tels que Java, .Net, Node et Python. « Le défi ici est de traduire la composabilité à travers toutes ces technologies disparates, dit Sayer.

Simplifier l’étalement des API et gérer plusieurs frameworks est possible à l’aide d’une plate-forme offrant des modèles d’architecture communs, un catalogue de services de fonctionnalités complémentaires et une série de contrats technologiques entre les équipes de développement et d’exploitation, ajoute-t-il.

La plus grande image

Bien qu’il y ait des avantages évidents pour les développeurs de logiciels à disposer de bibliothèques de composants logiciels pré-construits qui peuvent être intégrés pour créer de nouvelles fonctionnalités avec très peu d’efforts, la composabilité a des ramifications dans toute l’entreprise.

Dans un article récent, Ram Chandel, responsable principal de l’offre du marché du commerce numérique chez Deloitte Consulting, et Paul do Forno, responsable éminent du commerce numérique, directeur général de Deloitte Consulting, ont discuté des tendances du commerce numérique. Dans l’article, la paire a examiné pourquoi une plate-forme de commerce électronique modulaire et composable permet aux entreprises d’étendre leur investissement en achetant ou en remplaçant uniquement les fonctionnalités ou fonctions dont elles ont besoin pour créer exactement l’expérience que leur marque souhaite offrir.

« Cela vous donne accès aux fonctionnalités les plus performantes d’un éventail de fournisseurs de technologies, plutôt que de vous tourner vers un seul fournisseur pour tout », ont-ils écrit. « Un fabricant d’équipement industriel peut avoir besoin d’outils de recherche et de recommandation sophistiqués pour mettre en évidence des détails ou des spécifications techniques. Une entreprise d’articles ménagers, d’autre part, a besoin de moyens de montrer des canapés ou des tables de manière cool, y compris en 3D.

L’essentiel est que ces fonctionnalités « personnalisées » soient plug-and-play, aidant l’entreprise à atteindre ses objectifs commerciaux.

Dans le contexte du paysage commercial plus large, les évolutions du marché sont éphémères et, comme l’ont montré les dernières décennies, de nouvelles offres qui exploitent avec succès une niche de marché peuvent rapidement supplanter les processus commerciaux établis de longue date.

Bien que toutes les entreprises ne soient pas susceptibles de devenir une entreprise de logiciels, les entreprises les plus compétitives sont tenues d’utiliser les logiciels de manière stratégique d’une manière qui les rend agiles et leur permet de saisir rapidement de nouvelles opportunités de marché. Une architecture informatique d’entreprise globale fondée sur la composabilité sera essentielle à la réussite d’une stratégie de développement commercial basée sur des logiciels.

Leave a Reply

Your email address will not be published. Required fields are marked *