DevOps, les impacts de l’IA sur cette approche

5 min
58
0
0
Publié le mis à jour le

L’intelligence artificielle est désormais omniprésente dans l’IT. Son taux de croissance annuel devrait encore atteindre les 17,5 % jusqu’en 2024. Le machine learning (ML), l’automatisation des tests et workflows ont complètement transformé les méthodes et outils de développement avec en premier lieu l’approche DevOps. Les termes DevOps et IA sont d’ailleurs quasiment devenus indissociables aujourd’hui. Pour le meilleur ? Pas si sûr… Ce qui l’est en tout cas, c’est que l’intelligence artificielle a de nombreux impacts sur le DevOps, découvrez-les dans cet article.  


L’IA en renfort des DevOps

Des objectifs communs

Si le DevOps et l’IA sont intrinsèquement liés, c’est parce qu'ils partagent les mêmes objectifs. Le DevOps est une approche axée sur la productivité. Le terme représente l’union des développeurs (dev') et des opérationnels (ops') dans le but de concevoir, de développer, de mettre en production et de modifier plus rapidement les services et logiciels nécessaires à l’entreprise.

L'IA représente un ensemble de technologies qui peut être intégré dans une entreprise pour accélérer et automatiser les cycles de production. Avec l'IA, les équipes DevOps peuvent tester, coder, publier et surveiller les logiciels encore plus vite et efficacement.

L’IA va donc faciliter l’approche DevOps tout au long du cycle de vie d’un logiciel ou d’une application.


Des revues de code et tests automatisés grâce à l’IA


L’apport majeur de l’IA dans l’approche DevOps concerne les phases de développement et de tests. Les technologies « intelligentes » alimentées par l’IA et le machine learning peuvent apprendre des référentiels comportant des millions de lignes de code. Ils sont ensuite capables de comprendre le but d’un programme, d'évaluer les modifications apportées par les développeurs voire de proposer des suggestions. Les outils d’IA peuvent également effectuer des revues de codes automatisées (basées par exemple sur des algorithmes de machine learning). Ces révisions peuvent inclure :

  • une analyse sémantique ;

  • une détection des vulnérabilités ;

  • un audit de qualité du code ;

  • des tests de performance.


En ce qui concerne les tests, l’IA va simplifier le recettage avec  :

  • la génération autonome de jeux de données ;

  • l’optimisation des cas notamment pour les tests de non-régression ;

  • la diminution des temps d'exécution ;

  • la création de modèles prédictifs.


L’apport majeur de l'IA dans ces étapes du workflow est de d’alléger la charge de travail et l’implication du développeur et du testeur pour les tâches courantes.

Ils peuvent ainsi se concentrer sur leur cœur de métier.


Une meilleure gestion des ressources et des performances


En dehors des phases de test, l’intelligence artificielle peut automatiser les tâches routinières et répétitives tout au long du cycle de vie DevOps y compris lors de l’analyse des besoins et de la conception de solutions. Avec le deep learning par exemple, les ordinateurs tentent d'examiner les problèmes sous différents angles, à la manière d’un cerveau humain afin d’identifier des axes de résolution. Ça ressemble à de la science-fiction ? Pas vraiment, les réseaux neuronaux sont déjà bien présents dans l’IT. L’exemple le plus marquant est probablement celui des voitures autonomes...


Pour la programmation, cette capacité de prise de décision de l’IA va surtout être utile pour la gestion des ressources. Un des principes fondamentaux de l’approche DevOps est de tester et de recueillir des résultats à chaque étape du workflow. Les outils de suivi de performance sont souvent utilisés pour collecter ces commentaires. En les liant au ML, ces outils deviennent capables de collecter les informations pour ensuite prévenir l'apparition de problèmes ou effectuer les ajustements nécessaires. Grâce à la puissance de calcul de l’IA, les délais d’accès aux données et les performances sont aussi davantage précis et sont pris en compte lors des cycles d'exécution.


Grâce à tous ses atouts, l'intelligence artificielle est couramment utilisée dans le DevOps. Pourtant, certaines organisations commencent déjà à s'inquiéter des dérives de l’IA et en particulier du risque de sur-automatisation.


L’intelligence artificielle, un danger pour le DevOps ? 

Un risque de sur-automatisation des process


Les systèmes automatisés pilotés par des ordinateurs puissants, des données multicanaux et des algorithmes intelligents ont envahi le secteur IT et bien d’autres domaines. Le monde du travail et la société actuelle évoluent naturellement avec des chatbots, des assistants intelligents, des voitures autonomes, etc.

Cette évolution est supportée par les gains de productivité et d'efficience que l’automatisation engendre. Mais elle comporte aussi des risques.


Selon le journal économique Forbes, dans son rapport « Intelligence artificielle : principaux défis et opportunités », la mise en place de solutions d’IA entraîne :


  • des problèmes de gouvernance et de confidentialité des données ;

  • des limites aux prises de décisions automatisées de l’IA. Pour le DevOps, les tests unitaires générés par l'intelligence artificielle ne peuvent pas encore deviner la fonctionnalité prévue du code, ils peuvent donc casser ou contredire les tests fonctionnels ;

  • des risques pour la sécurité. La puissance de l’IA intéresse également les cybercriminels. Les hackers peuvent tenter de manipuler les algorithmes pour les inciter à prendre de mauvaises décisions ou corrompre les modèles et leurs prédictions avec des empoisonnements de données.



Une disparition des fonctions DevOps avec l’IA


L'IA et le ML progressent continuellement. Certaines technologies sont déjà en mesure de mettre à jour des codes existants avec de nouveaux processus, de résoudre automatiquement les bugs et conflits et d’optimiser les algorithmes.

Selon la dernière enquête de GitLab, 75 % des entreprises utilisent ou ont planifié d'utiliser l'IA, le ML et l’automatisation pour leurs tests et revues de code. 84 % d'entre elles déclarent publier leurs applications plus rapidement qu’avant.


Néanmoins, cette accélération reste également fortement liée aux DevOps puisque 10 % seulement des gains de rapidité seraient liés à l’ajout de tests automatisés. En revanche, 57 % des développeurs IT considèrent qu’ils publient leur code deux fois plus vite d’abord grâce à l’approche DevOps. Le processus de transformation d'une idée et d'une logique métier en algorithme puis code requiert toujours l'ingéniosité humaine.


Il est donc fort peu probable que l’IA et le ML remplacent les DevOps. Ce qui est sûr en revanche, c’est que l'interdépendance entre ces termes va davantage s’accroître. Le DevOps pourra faire progresser l’intelligence artificielle et celle-ci risque encore de complètement remodeler cette approche dans les années futures.

Et vous travaillez avec des technologies d’IA ? Comment l’essor de l'automatisation et du machine learning ont-ils impacté vos missions ? Partagez-nous vos expériences sur le forum IT.

Sources et liens utiles :

Boostez votre carrière

Les meilleures offres d’emploi sont chez Free-Work

Notre CVthèque est la première source de recherche de talents pour + 1 000 entreprises. Déposez votre CV et postulez en un clic !

Continuez votre lecture autour des sujets :
# Métier
# IA

Commentaire

Dans la même catégorie