Ce logiciel permet de détecter la duplication de code, de déceler le manque de documentation, les anomalies potentielles, règle de programmation, ce que couvrent les tests unitaires et la complexité du code.
Sonar peut s'intégrer à différents outils d'intégration continue tel que Hudson.
Il intègre sa propre base de données, H2 mais il est recommandé d'utiliser une autre base de données ne serait que pour avoir de meilleure performance.
Pour la présentation du produit, H2 sera utilisé. De plus aucun serveur d'intégration continue n'est utilisé.
Télécharger sonar et décompressé l'archive.
La particularité de ce système est qu'il est très visuel. Il peut aider à mieux identifier où doit être mis du temps afin d'accroître la qualité du projet.
Démarrage
Dans le répertoire bin de sonar, sélectionner le répertoire correspondant à votre environnement.Cliquer sur le fichier sonar.bat si vous utilisez Windows, sinon sur sonar.sh.
Le système est alors accessible via un navigateur web: http://localhost:9000
Projets
Pour chacun des projets que vous désirez importer, si vous utiliser maven lancez la commandemvn sonar:sonar
La liste des projets importés sera alors affichée dans l'écran de démarrage de Sonar.
Treemap
La treemap est une vue 2D. La taille de chaque carrée est une mesure quantitative selon différents critères des catégories: complexité, design, documentation, duplication, test d'intégration, gestion, revue...La couleur représentante une mesure qualitative.
Dashboard
C'est la vue par défaut d'un projet. Les différentes mesures quantitatives présentées plutôt y sont affichées.Hotspot
La vue hotspot présente les éléments à corriger d'un projet.- classes ayant le plus de violations
- règles avec le plus de violations
- classes ayant une forte complexité
- classes ayant le plus de code dupliqué
- classes le moins documentées
Time machine
La vue time machine permet de voir l'évolution du projet. Il est possible de comparer différentes versions du projet. Cette vue est particulièrement importante afin de savoir si le projet s'améliore ou part à la dérive.
Component
La vue component donne des informations similaires au dashboard, cependant elles sont données par module.Violations drilldowns
La vue Violations drilldowns indique les violations du projet en plus d'indiquer leur importance. Il est possible de modifier le degré d'importance des violations. Le nombre d'anomalies par type, le nombre de classes par importance, ainsi que le nombre d'anomalies par classe sont affichés.Cloud
La vue cloud spécifie l'importance à accorder à une classe. La taille du nom de la classe varie en fonction de son importance.
Le cloud Top risk affiche les classes ayant un risque d'erreur. La taille du nom indique la complexité par méthode alors que sa couleur indique le respect des règles.
Design
La vue design indique les dépendances entre les différents modules d'un projet. Certaines dépendances sont jugées inappropriées.Des plugins gratuit et payant avec plus de fonctionnalités aussi disponibles. Le plugin Refactoring Assessment est par exemple disponible sous ces modes.
Dans sa version gratuite, des données sont fournies afin de montrer les possibilités de la version payante. La version payante effectue automatiquement certains traitements.
Autres plugins
La puissance de Sonar est en partie due au nombreux plugins existant. Ils permettent d'étendre les fonctionnalités de l'outil. Voici quelques plugins très intéressants que je vous conseille.SCM Stats Plugin
Technical Debt Plugin
Quality Index Plugin
SIG Maintainability Model Plugin
Useless Code Plugin
Timeline Plugin
Bonjour,
RépondreSupprimerMerci pour votre article qui mentionne le plugin Scertify.
Nous sommes à votre dispo si vous souhaitez écrire un article plus poussé sur Scertify Refactoring Assessment, ou encore Techdebt.
N'hésitez pas à nous contacter.
contact@tocea.com