{iframe:src=http://update.sonarsource.org/plugins/abacus.html|width=700|height=250|frameborder=0}
Your browser does not support iframes.
{iframe} |
This plug-in estimates the complexity of each file in order to help you use the "abacus methodology" ("méthode des abaques" in French).
This is a methodology widely used in France to estimate the effort of changes. Customers and providers agree on the abacus at the beginning of the maintenance process.
| Complexity of the Change | |||||
| Simple | Medium | Complex | Very complex | ||
Complexity of the File | Simple | 0.1 | 0.3 | 0.8 | 1.5 |
| Medium | 0.3 | 0.6 | 1.8 | 3.0 | |
| Complex | 0.6 | 1.2 | 3.0 | 5.0 | |
| Very complex | 1.0 | 2.0 | 5.0 | 8.0 | |
Values are in man days.
Interpretation:
The complexity of a file is computed according to its cyclomatic complexity.
The default values are (estimation for a Java project):
| Abacus Complexity | Cyclomatic Complexity |
|---|---|
| Simple | <= 20 |
| Medium | 20 < X <= 50 |
| Complex | 50 < X <= 100 |
| Very complex | > 100 |
See the Configuration section to set your own thresholds.
At file level, you can either use the Abacus tab or create a filter to display the abacus complexity measure.

At module or project level, a widget is available to display the average abacus complexity and the abacus complexity distribution.
The abacus complexity distribution can be displayed either in number of files or percentage.
See screenshots below.
| Property | Default value | Description |
|---|---|---|
| sonar.abacus.complexityThresholds | Simple:20;Medium:50;Complex:100;Very Complex | To set your own thresholds to compute the abacus complexity. Usage: ThresholdName1:ThresholdComplexity1;ThresholdName2:ThresholdComplexity2;...;ThresholdNameN |
Widget Parameters
| Parameter | Default value | Description |
|---|---|---|
| defaultColors | 33cc33,ffff33,ff9900,ff0033,000000 | Coma-separated list of colors (hexadecimal format) for the pie chart display. Make sure to have at least as many colors as levels of complexity in your abacus. Default value is green, yellow, orange, red and black. |
| defaultDisplay | files | To set the default display: number of files distribution or percentage distribution. Possible values:
|