Rejoignez-nous le 30 avril : dévoilement de Parasoft C/C++test CT pour l'excellence en matière de tests continus et de conformité | En savoir plus

Comment l'analyse statique vous aide à démarrer avec DevOps

Logo cube Parasoft 300x300
2 octobre 2014
3 min lire

Aucun outil « DevOps » ne vous permettra de commencer à utiliser DevOps du jour au lendemain. Cependant, certaines procédures doivent être respectées pour adopter une approche DevOps. Cet article explique comment vous pouvez commencer à utiliser DevOps par analyse de code statique.

DevOps nous oblige à dépasser la simple recherche de bogues avec une analyse statique. Nous devons être plus proactifs et réévaluer les techniques d'analyse utilisées dans le SDLC. DevOps est un ensemble de pratiques qui facilitent la collaboration et la communication interservices nécessaires pour aider les organisations à optimiser et accélérer leurs processus de développement. Ses racines peuvent être attribuées à la montée en puissance des méthodologies de développement itératives qui nécessitaient un mode de fonctionnement différent qui allie développement logiciel, informatique et assurance qualité. DevOps a le potentiel de supprimer les obstacles qui empêchent les organisations de relever les défis commerciaux modernes.

Pour être clair, il n'y a pas d '«outils DevOps» que vous pouvez acheter et déployer qui vous permettront soudainement de commencer à «faire du DevOps», mais il existe des mécanismes nécessaires pour mettre en œuvre une stratégie DevOps. Dans ce blog, nous discuterons de la manière dont les tests de développement, et plus particulièrement l'analyse de code statique, permettent aux organisations de commencer à faire du DevOps.

Boucle de rétroaction automatisée

Le mouvement DevOps facilite un partenariat entre les départements qui ont un impact sur la mise en œuvre des exigences. En partageant les connaissances et les tâches entre les départements, les organisations créent un processus efficace pour accélérer le SDLC tout en améliorant les processus de qualité. Cependant, pour que DevOps soit efficace, une boucle de rétroaction automatisée doit être mise en œuvre pour permettre l'application cohérente des politiques de qualité à mesure que les exigences progressent de la création à la production.

La plupart des organisations ont mis en place une boucle de rétroaction pour la mise en œuvre des exigences. Au niveau le plus élémentaire, la boucle de rétroaction commence par la politique et progresse par la mise en œuvre, la mesure, le post-mortem, l'ajustement de la politique et la remise en œuvre. Mais dans une entreprise opérant traditionnellement, la boucle est un processus fastidieux exécuté par des services cloisonnés qui manquent souvent de connaissances adéquates sur le fonctionnement des équipes en amont ou en aval.

L'automatisation est essentielle. Il est beaucoup trop coûteux du point de vue des ressources pour les gens d'arrêter leurs tâches normales de développement et de test pour collecter des données liées au processus de rétroaction. La production manuelle de la boucle de rétroaction risque également d'introduire des analyses incohérentes et inexactes qui entravent la capacité d'une organisation à améliorer les processus de développement et, en fin de compte, la qualité des logiciels. Les organisations peuvent automatiser la boucle de rétroaction en mettant en œuvre un point central d'intégration pour tous les composants associés à l'infrastructure de développement et de test. Une plate-forme centralisée permet aux BTS, aux RMS, au contrôle de source, aux outils d'analyse et à d'autres composants de collecter des artefacts afin que les équipes DevOps aient accès à des informations fiables et cohérentes qui les aident non seulement à prévenir les défauts, mais aussi à accélérer l'ensemble du SDLC.

Test de développement

Au fur et à mesure que la mise en œuvre d'une exigence progresse, la boucle de rétroaction aide les développeurs à éviter les erreurs et à comprendre l'impact du changement à mesure que l'exigence mûrit. En termes de DevOps, la boucle de rétroaction permet le flux bidirectionnel d'analyses du développement au déploiement et vice versa. Les opérations contribuent au processus de collaboration en façonnant certains aspects de la politique de développement, tandis que le développement permet à la politique de prévenir les défauts qui affectent les opérations. Cette phase préventive du SDLC est le processus lourd que la plupart des organisations connaissent en termes d'analyse de code statique:

  1. Déterminez les règles d'analyse statique à exécuter en fonction de la politique de développement de l'organisation en fonction des commentaires des opérations.
  2. Exécutez l’analyse et corrigez les défauts, toujours conformément à la politique.
  3. Répétez jusqu'à ce que l'analyse renvoie un nombre acceptable de violations.

Ce qui est particulièrement important dans cette phase du point de vue DevOps, c'est qu'elle implique la capacité de capturer, mesurer et analyser l'opportunité des activités effectuées. Les organisations doivent comprendre quelles fonctions de leurs processus qualité aident l'organisation à atteindre ses objectifs et quelles fonctions ne font que faire du bruit. Cela conduit à la deuxième phase des tests de développement pour DevOps: l'application d'une analyse post-analyse à la politique de développement.

Les résultats exposés pendant la phase préventive doivent être mesurés, classés par ordre de priorité et réinjectés dans le processus de développement sous la forme d'une politique itérative. Cela aide les équipes en aval en termes de mise en œuvre des exigences, telles que l'assurance qualité et l'informatique, non seulement à faire leur travail, mais contribuent à un processus continu qui se traduit par un code sûr, fiable et réactif.

Comment choisir un outil d'analyse statique moderne