lun, 29/10/2018 - 15:22
Le Cloud est devenu un élément clef dans la réussite de la Transformation Numérique (DX) des entreprises, leur permettant d’y installer leurs applications et services. Au final, elles bénéficient de nombreux avantages : réductions de CAPEC/OPEX, économies de temps, etc.
Néanmoins, cette migration vers le Cloud constitue la première marche dans le processus transformationnel, pouvant en devenir un pilier de l’innovation et alimenter de nouveaux modèles commerciaux et user cases considérés impossibles jusque-là.
À ce niveau, alors que les services informatiques sont en charge de la migration réelle des applications créées dans le Cloud, ce sont les équipes DevOps qui en contrôlent la maintenance et le développement continu, détenant ainsi un rôle crucial dans tout le processus de DX.
Agile, efficace, capable de produire une qualité supérieure à très courts délais et de collaborer au sein d’équipe de développement/assurance qualité et services informatiques, l’équipe DevOps est aux commandes de la DX.
Mais à quoi sert le DevOps?
Son rôle est de produire de nouveaux logiciels basés sur les besoins de son entreprise, de façon très rapide et à excellente qualité en fonction des deadlines imposées, offrant ainsi un service très réactif, fiable, avec une notion de livraison continue primodiale, pour sublimer l’expérience client.
Le principal défi du DevOps est son niveau de maturité au sein de l’entreprise. En effet, semblables aux principes du modèle de maturité des capacités logicielles (SW-CMM) et du modèle IDEAL introduit par le Software Engineering Institute (SEI) de l'université Carnegie Mellon, la maturité du DevOps résulte de deux attributs clés impactant sa fonctionnalité même :
- Le besoin de collaborer efficacement comme un ‘tout’ au sein de l’organisation, tendant vers des objectifs globaux, et non spécifiques à chaque service.
- La nécessité d’un certain niveau de visibilité et de connaissance de la situation par rapport à la technologie utilisée. Et c’est à ce niveau que le défi reside.
Avant maturité de la technologie, chaque équipe était concentrée sur son domaine d’expertise : les développeurs sur le nombre de versions à produire par jour, l’assurance qualité sur ses user cases et tests, et le service informatique sur l’environnement de production.
Ainsi, le DevOps avait tendance à focaliser sur l’accélération et l’optimisation de ses propres domaines, via des technologies comme la gestion de contrôle des versions, l’intégration continue, les tests automatisés, le déploiement et la gestion de la configuration.
Ce n’est qu’une fois mature, que les éléments tels qu’une boucle d’informations efficace, une visibilité de bout-en-bout et une connaissance globale de la situation sont identifiés comme cruciaux pour les équipes DevOps.
La visibilité avant tout!
Hors DevOps, le processus de développement est le suivant : le développeur construit le code, qui est testé par l’assurance qualité, et intégré et déployé par les services IT. Si un problème logiciel se manifeste alors, les équipes de développement doivent rapidement identifier le problème pour développer un nouveau code pouvant fonctionner dans l’environnement de production.
À ce niveau, la visibilité devient cruciale pour offrir une connaissance globale de la situation. Les équipes DevOps peuvent indépendamment identifier les problèmes, et les résoudre, sans avoir à faire appel aux équipes tiers.
Les Smart Data sont les éléments Sine Qua Non pour obtenir une telle visibilité. En effet, ces dernières analysent en temps réel chaque paquet IP traversant le réseau, pendant un cycle de développement, pour en fournir des informations pertinentes et exploitables pour toutes les équipes réunies.
Bien que convenables, les données de journal nécessitent d’être rassemblées, analysées et mises en oeuvre, contrairement à la praticité même de la formation et l’amélioration continues du DevOps.
En fournissant des ensembles de Smart Data condensés, exploitables et intelligents lorsque cette dernière est créée, toutes les équipes, de l’assurance de la qualité à l’IT en passant par le développement, peuvent travailler ensemble pour faire évoluer les paramètres sans risques d’engorgement.
La visibilité tient une place encore plus importante en matière de sécurité, notamment dans une structure DevSecOps. Dans ce cas, les équipes sécurité travaillent conjointement avec celles du développement, pour garantir la sécurité des applications. Analyser les données pour résoudre un problème après violation, est une solution en soi. Toutefois, identifier les applications endommagées en temps réel est considérablement une meilleure option, puisque l’information y est remontée de l’IT vers les services déloppement et sécurité, permettant de gérer efficacement les problèmes de sécurité à la source. Automatisé, ce processus permet de créer des applications plus sécurisées, et évite les dépenses coûteuses de la mise en place d’une War Room et l’impact potentiellement négatif sur la réputation de l’entreprise.
La DX, et le Cloud en particulier, sont parties intégrantes de l’innovation et de la transformation de l’entreprise ; mais apportent de nombreux nouveaux défis en contre-partie. Toutefois, en éliminant les obstacles, en offrant une visibilité commune et une culture de collaboration et des communications continues, la DX peut être un succès, permettant aux organisations de conserver un avantage concurrentiel sur un marché disruptif. Pour les équipes DevSecOps, il s'agira de produire rapidement un code de qualité, tout en continuant à faire évoluer la maturité organisationnelle via les Smart Data qui offrent une télémétrie et une bonne connaissance globale de la situation.
A propos de l'auteur