[GRASS-QA] GRASS QA: glynn |main.c | 8 clones | 0 monsters |0 warnings
soccerlab.info at gmail.com
soccerlab.info at gmail.com
Tue Feb 24 12:21:22 EST 2009
Hello glynn,
here's a report on your recent GRASS-SVN change :
ANALYSIS
your changes to files/class/methods/functions :
*****************************************************************
File :grass/trunk/raster/r.quantile/main.c
*****************************************************************
Class
bin(Begins at: 19, Ends at:24)
+--------+--------+--------+--------+--------+--------+
| DIT | NOC | WMC | RFC | CBO | LCOM |
+------------+--------+--------+--------+--------+--------+--------|
|NEW Metrics | 1 | 0 | 0 | 0 | 0 | 0 |
+------------+--------+--------+--------+--------+--------+--------|
|OLD Metrics | 1 | 0 | 0 | 0 | 0 | 0 |
+------------+--------+--------+--------+--------+--------+--------+
Function
compare_dcell(Begins at: 162, Ends at:172)
--------------+---------+-------+--------------+-----------+
| New Metrics |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity: | 3 | | OK | 3 |
ParamNBR: | 2 | | OK | 2 |
CalledNBR: | 0 | | OK | 0 |
LOC: | 11 | | OK | 11 |
--------------+---------+-------+--------------+-----------+
Conclusion: | this function is a OK |
-----------------------------------------------------------+
metrics are OK
compute_quantiles(Begins at: 191, Ends at:235)
--------------+---------+-------+--------------+-----------+
| New Metrics |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity: | 8 | * | WARNING | 5 |
ParamNBR: | 1 | | OK | 1 |
CalledNBR: | 6 | | OK | 6 |
LOC: | 45 | * | WARNING | 34 |
--------------+---------+-------+--------------+-----------+
Conclusion: | this function is a WARNING |
-----------------------------------------------------------+
at least 2 values are close to an outlier please consider revising code!
fill_bins(Begins at: 128, Ends at:160)
--------------+---------+-------+--------------+-----------+
| New Metrics |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity: | 5 | | OK | 5 |
ParamNBR: | 1 | | OK | 1 |
CalledNBR: | 9 | | OK | 9 |
LOC: | 33 | | OK | 33 |
--------------+---------+-------+--------------+-----------+
Conclusion: | this function is a OK |
-----------------------------------------------------------+
metrics are OK
get_quantile(Begins at: 52, Ends at:55)
--------------+---------+-------+--------------+-----------+
| New Metrics |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity: | 1 | | OK | 1 |
ParamNBR: | 1 | | OK | 1 |
CalledNBR: | 0 | | OK | 0 |
LOC: | 4 | | OK | 4 |
--------------+---------+-------+--------------+-----------+
Conclusion: | this function is a OK |
-----------------------------------------------------------+
metrics are OK
get_slot(Begins at: 41, Ends at:50)
--------------+---------+-------+--------------+-----------+
| New Metrics |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity: | 3 | | OK | 3 |
ParamNBR: | 1 | | OK | 1 |
CalledNBR: | 1 | | OK | 1 |
LOC: | 10 | | OK | 10 |
--------------+---------+-------+--------------+-----------+
Conclusion: | this function is a OK |
-----------------------------------------------------------+
metrics are OK
get_slot_counts(Begins at: 57, Ends at:86)
--------------+---------+-------+--------------+-----------+
| New Metrics |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity: | 4 | | OK | 4 |
ParamNBR: | 1 | | OK | 1 |
CalledNBR: | 9 | | OK | 9 |
LOC: | 30 | | OK | 30 |
--------------+---------+-------+--------------+-----------+
Conclusion: | this function is a OK |
-----------------------------------------------------------+
metrics are OK
initialize_bins(Begins at: 88, Ends at:126)
--------------+---------+-------+--------------+-----------+
| New Metrics |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity: | 4 | | OK | 4 |
ParamNBR: | 1 | | OK | 1 |
CalledNBR: | 4 | | OK | 4 |
LOC: | 39 | | OK | 39 |
--------------+---------+-------+--------------+-----------+
Conclusion: | this function is a OK |
-----------------------------------------------------------+
metrics are OK
main(Begins at: 237, Ends at:340)
--------------+---------+-------+--------------+-----------+
| New Metrics |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity: | 7 | * | WARNING | 7 |
ParamNBR: | 2 | | OK | 2 |
CalledNBR: | 47 | *** | MONSTER | 47 |
LOC: | 104 | ** | BABY-MONSTER | 104 |
--------------+---------+-------+--------------+-----------+
Conclusion: | this function is a MONSTER |
-----------------------------------------------------------+
metric are OUT OF RANGE!
sort_bins(Begins at: 174, Ends at:189)
--------------+---------+-------+--------------+-----------+
| New Metrics |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity: | 2 | | OK | 2 |
ParamNBR: | 1 | | OK | 1 |
CalledNBR: | 8 | | OK | 8 |
LOC: | 16 | | OK | 16 |
--------------+---------+-------+--------------+-----------+
Conclusion: | this function is a OK |
-----------------------------------------------------------+
metrics are OK
Clone analysis:
This file has 8 potentially cloned functions:
egcmp cmp fcmp dcmp dcmp cmp_along cmp
In /var/project-manager/grass/grassSVN/grass/trunk/raster/r.quantile/main.c clones of compare_dcell are:
/var/project-manager/grass/grassSVN/grass/trunk/lib/db/dbmi_client/select.c cmpcatkey
/var/project-manager/grass/grassSVN/grass/trunk/lib/gmath/la.c egcmp
/var/project-manager/grass/grassSVN/grass/trunk/raster/r.coin/make_coin.c cmp
/var/project-manager/grass/grassSVN/grass/trunk/raster/r.mapcalc/xmedian.c fcmp
/var/project-manager/grass/grassSVN/grass/trunk/raster/r.mapcalc/xmedian.c dcmp
/var/project-manager/grass/grassSVN/grass/trunk/raster/r.mapcalc/xmode.c dcmp
/var/project-manager/grass/grassSVN/grass/trunk/vector/v.lrs/v.lrs.label/main.c cmp_along
/var/project-manager/grass/grassSVN/grass/trunk/vector/v.net.path/path.c cmp
____________________________________________
Threshold grass key metrics values at Tue Feb 24 12:24:59 EST 2009 are:
----------------------+-----------+-----------+-----------+
| warning | middle | extrem |
| limits | limits | limits |
----------------------+-----------+-----------+-----------+
Complexity (Cyclo): | 6 | 13 | 21 |
ParamNBR: | 3 | 6 | 9 |
CalledNBR: | 10 | 23 | 37 |
LOC: | 42 | 91 | 141 |
----------------------+-----------+-----------+-----------+
Measures (see below Web page for details) :
-Complexity (Cyclo): a complexity index
-ParamNBR: number of passed parameters
-CalledNBR: number of called functions
-LOC: Lines Of Code
-Global analysis: based on 21 metrics(the fourth preceding include)
Message interpretation :
OK : Nothing to say at all
* : this is getting close to be out of range, consider revising the code
** : this is a baby monster, you should revise this function
***: this is a monster, definitely you should revise this function
Conclusion interpretation :
CORRECT : if all metrics are situated before warning limits
WARNING : if 1 to more metrics are between warning and middle limits
BABY_MONSTER: if 1 to more metrics are between middle and extreme limits
MONSTERS : if 1 to more metrics are in the extreme limits
_______________________________________________
Brought to you by :
SOftware Cost-effective Change and Evolution Research (SOCCER) laboratory
Please visite our web site on your project at :
http://web.soccerlab.polymtl.ca/project-manager/grass-website/index.html
More information about the grass-qa
mailing list