Assurance Qualité: Analyse statistique automatisée

Il y a quelques mois, un billet de blogue a été réalisé sur l’historique et le cheminement de Negotium quant au développement de l’intégration continue, de l’agilité, de l’automatisation et de l’assurance qualité chez Negotium.  Bien que ce projet nous a permis d’améliorer le taux de satisfaction de nos clients et les conditions de travail de l’équipe, il a également soulevé quelques questionnements :

  • Quel est le meilleur moyen de s’assurer que la qualité du code soit constante ?
  • Comment faire en sorte qu’un gestionnaire soit au courant du niveau de dette technique d’un projet sans avoir à se plonger les mains dans le code ?
  • Comment s’assurer  que le niveau de compétences des développeurs augmente sans pour autant que les responsables techniques passent leur temps à effectuer des revues de code ?

Analyse statique automatisée

La réponse à ces questions est au fait assez simple.  La solution passe par une analyse statique automatisée.

L’analyse statique automatisée consiste à créer un ensemble de règles qui vérifient la structure du code afin d’y repérer les erreurs. L’analyse statique automatisée fournit à la fois au développeur une liste des erreurs à corriger et des métriques d’analyse rapide sur la qualité du code au gestionnaire. Cette analyse procure au développeur la possibilité d’améliorer la qualité de son travail en apprenant de ses erreurs, le rendant plus efficace et performant dans le temps.

L’hypothèse avancée par la solution d’analyse statique automatisée est que si le code est de bonne qualité et que la partie fonctionnelle a été testée par la suite, il est théoriquement « impossible » de distribuer des solutions qui contiennent des bogues informatiques à nos clients, ou du moins, il est moins probable de leur en transmettre.

Analyse statique automatisée avec SonarQube

Chez Negotium, nous avons choisi d’implémenter « SonarQube », une plateforme de gestion ouverte dédiée à l’analyse et à la mesure de la qualité du code. L’analyse statique automatisée est exécutée sur chaque « build » fait à chaque « commit » sur les « branches master » et « develop ».

Voici la vue que le gestionnaire obtient:

  • Notations globales de la qualité du code
  • Indice du temps de résolution

Analyse statique automatisée

Voici la vue que les développeurs obtiennent:

  • Détails des problèmes détectés

Analyse statique automatisée

Pour obtenir de plus amples informations sur comment bâtir et exécuter une analyse statique automatisée, n’hésitez pas à suivre la série de billets à cet effet sur mon blogue. Veuillez noter que la série de billets qui suite est par contre beaucoup plus technique.

Nos services

logo analytique avancée

Analytique avancée

logo intelligence artificelle

Intelligence Artificielle

logo infrastructure

Infrastructure

Nos partenaires

Nos services

Microsoft Dynamics 365 Business Central

Microsoft Dynamics 365 Finance & Operations​

Microsoft Dynamics GP

Microsoft Dynamics 365 Customer Engagement

Unit4 solution de gestion de projet

Nos produits complémentaires