Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 37 Next »

Description / Features

Overview

The Quality Index plugin combines a global measure (quality index) of quality with a measure of the method complexity (complexity factor).

The Quality Index measures 4 weighted axes of quality and combines them to give a global note between 0 and 10 to the project, 10 being the best.

Axes of quality

Coding

Coding violations: a PMD compliance index

Coding = (Blocker * 10 + Critical * 5 + Major * 3 + Minor + Info) / ValidLines

Where:

  • ValidLines = Lines of Code - Duplicated Lines
  • Blocker = number of PMD blocker violations
  • Critical = number of PMD critical violations
  • Major = number of PMD major violations
  • Minor = number of PMD minor violations
  • Info = number of PMD info violations

Complexity

Complexity = (Complexity>30 * 10 + Complexity>20 * 5 + Complexity>10 * 3 + Complexity>1) / ValidLines

Where:

Coverage

Code coverage

Style

Style violations: a Checkstyle compliance index

Style = (Errors * 10 + Warnings) / ValidLines * 10

Where:

  • ValidLinesLines of Code - Duplicated Lines
  • Errors = number of Checkstyle blocker violations + number of Checkstyle critical violations
  • Warnings = number of Checkstyle major violations + number of Checkstyle minor violations + number of Checkstyle info violations

Quality Index

Quality Index = 10 - 4.5 * Coding - 2 * Complexity - 2 * Coverage - 1.5 * Style

Complexity Factor

The Complexity Factor measures the complexity density.

Complexity Factor = (5 * Complexity>30) * 100 / (Complexity>1 + Complexity>10 + Complexity>20 + Complexity>30)

Where:

  • Complexity>X = number of methods whose Complexity is greater than X

Usage & Installation

1. Copy the jar into /extensions/plugins/ directory
2. Restart Sonar Web server
3. Launch a new quality analysis and the metrics will be fed

Changelog

Loading

QI 1.1.3 (1 issues)

Type Key Summary Priority Status Resolution
Improvement SONARPLUGINS-972 Remove usage of SquidSearch Major Closed Fixed

 

Loading

QI 1.1.2 (1 issues)

Type Key Summary Priority Status Resolution
Task SONARPLUGINS-766 Use sonar-plugin packaging Major Closed Fixed

 

Loading

QI 1.1.1 (1 issues)

Type Key Summary Priority Status Resolution
Bug SONARPLUGINS-420 Metrics do not get consolidated in Views anymore Critical Closed Fixed

 

Loading

QI 1.1 (1 issues)

Type Key Summary Priority Status Resolution
Improvement SONARPLUGINS-370 Squidutils does not exist anymore Major Closed Fixed

 

Loading

QI 1.0 (4 issues)

  • No labels