« Plus on arrive à faire d’itérations d’une application, plus vite on parvient à construire le code et plus on améliore la qualité des releases », a exposé ce matin Jérôme Labat, CTO de HP Software au niveau mondial, sur la conférence DevOps Innovation organisée par le fournisseur à Paris. Or, il y a souvent collision entre les équipes opérationnelles qui mettent en production les applications et les développeurs qui les ont conçues. « Il faut donc changer cela », a pointé le CTO, venu expliquer les bénéfices de l’approche DevOps qu’il présente comme « complémentaire à ce qui se fait aujourd’hui ».
La pression des projets de transformation numérique, qui impose de réduire les délais de livraison des applications, a logiquement mis au premier plan le concept DevOps. Celui-ci promeut une collaboration rapprochée entre les développeurs et les opérationnels. « Nous sommes entrés dans l’ère du software defined qui définit tout ou partie de la fonctionnalité d’un produit et crée une culture d’expérimentation permanente. S’il n’y a pas d’appétence pour les fonctionnalités proposées au marché, il faut passer à autre chose. On démarre avec des versions basiques que l’on enrichit au fur et à mesure », rappelait ce matin Luc Dammann, directeur général de HP Software France, en introduction de la conférence. A sa suite, Karim Bahloul, directeur études et recherche d’IDC France, exposait les résultats d’une enquête tout juste menée auprès d’équipes de développement et d’exploitation dans 200 entreprises de plus de 1000 salariés. Il apparaît que, quel que soit leur niveau de déploiement applicatif (plus de 50 applications/an pour certaines entreprises, une dizaine pour les autres), 77% des répondants disent avoir besoin d’accélérer le rythme de déploiement. Mais pour la majorité d’entre eux, la capacité à pouvoir le faire ne suit pas. Dans ce contexte, 38% ont néanmoins déjà adopté une démarche DevOps (mature pour 25%).
Automatisation et portail de services
Jérôme Labat, CTO de HP Software, a rappelé les deux concepts informatiques qui doivent cohabiter, avec en parallèle l’arrivée du cloud. D’un côté le Core IT, qui doit faire tourner les applications de façon sécurisée en assurant la continuité du service. De l’autre le Fluid IT, avec les technologies introduites par les nouvelles applications : gestion du développement agile, sécurité des applications, testing automatisé des apps mobiles, analyse des logs (big data), etc. « Ce qu’il faut retenir pour DevOps, c’est la capacité pour le Core IT d’offrir des services internes aux développeurs sans friction », a indiqué le CTO. « Pour moi, la fondation derrière DevOps, c’est d’adopter les concepts clouds, avec de l’automatisation et un portail de services. »
Dans la foulée, Jérôme Labat a livré quelques questions-clés à se poser pour être en mesure de créer des apps de qualité à la vitesse réclamée par le business. Comment prioritiser les prochaines fonctions à livrer dans les mises à jour ? Comment peut-on déployer les apps plus vite ? Comment décider ce qui doit être testé et le faire en continu ? Comment exploiter 100% des données dont on dispose pour améliorer les applications ? Comment mesurer l’expérience des utilisateurs sur les apps ? Enfin, comment isoler plus rapidement les problèmes ? « Il faut garder ces questions en background quand on transforme les applications », estime Jérôme Labat. « Il y a par exemple énormément d'informations que l'on n'utilise pas aujourd'hui et nous travaillons chez HP pour voir comment s'en servir pour aider le client à être plus efficient en ingénierie, au niveau du management des projets de développement, dans la façon dont le code est construit. Concernant l'expérience applicative, si je ne sais pas comment mes apps mobiles fonctionnent, il y a de fortes chances pour que je perde les clients », a encore souligné le CTO qui rappelle que les utilisateurs abandonnent facilement une app qui ne fonctionne pas pour passer immédiatement sur l'app d'une société concurrente.
Passer de 4 releases par an à 4 par trimestre
Le CTO de HP Software suggère plusieurs pistes, regroupées autour de trois directions, pour trouver les marges de progression qui permettront d’accélérer les cycles de release des applications. « C’est très concret, ce n’est pas vraiment du DevOps, mais ça se passe comme ça dans les entreprises », avertit Jérôme Labat. Premièrement, il faut chercher de quelle façon on peut accroître l’automatisation à tous les niveaux. Deuxièmement, il faut réduire les latences, avec des implémentations en continu au niveau des builds, des intégrations et des tests, et en déployant de nouvelles approches de test (tirées par les API ou virtualisées, notamment). « On peut par exemple se demander comment créer des environnements de test prêts à être utilisés » a donné en exemple le CTO de HP Software. « Si j’arrive à réduire ces temps, j’accélère mes cycles de release. Je regarde où je peux prendre une semaine ici ou là et je parviens à ramener mon cycle à 6 mois ».
Passer au rythme supérieur n'est pas seulement un défi technologique. Cela concerne aussi les processus et l'organisation des équipes, a montré Jérôme Labat. (agrandir l'image)
Enfin, troisièmement, il faut accroître la visibilité avec des mesures à chaque étape -du développement à la production-, des boucles de feedbacks constantes et des plannings de priorités business et développement. Pour étendre cette visibilité entre les équipes, il faut permettre la collaboration et abattre les murs, DevOps nécessitant d’intervenir à la fois sur le plan technologique et sur les aspects d’organisation. Cela contribue à créer des relations de confiance entre l'IT et les développeurs. « DevOps, ce n'est pas seulement un problème technologique : c'est l'intersection entre les gens, les processus et la technologie. L'idée, c'est d'introduire de nouvelles approches de travail. Ce sont des choses concrètes que je vois aujourd’hui chez des clients qui sont ainsi passés de 3 à 4 releases à l’année à 3 à 4 releases au trimestre », a conclu Jérôme Labat, sans cacher que le passage à DevOps ne se faisait pas sans d'importants efforts de gestion du changement, « douloureux et soutenus ».
Au cours de différents ateliers, HP a ensuite présenté ses solutions pour aider à la mise en oeuvre de ces directives. Parmi celles-ci, AppPulse Mobile permet de mesurer l’expérience utilisateurs sur les applications mobiles. Elle identifie quelles sont les actions des utilisateurs qui ont fait planter les apps, mesure les temps de réponse par type d’OS, montre à quel endroit l’utilisateur a rencontré un problème et abandonné l’app. Cela permet aussi de donner davantage de contexte au développeur qui va travailler sur l’anomalie en cas de plantage.