[GRASS-QA] GRASS QA: |resamp.c crosscorr.c bspline.h main.c | 19
clones | 2 monsters |5 warnings
soccerlab.info at gmail.com
soccerlab.info at gmail.com
Thu May 20 16:08:10 EDT 2010
Hello ,
here's a report on your recent grass-SVN change for the revision : 42318
ANALYSIS
your changes to files/class/methods/functions :
*****************************************************************
File :/raster/r.resamp.bspline/resamp.c
*****************************************************************
Function
P_Read_Raster_Region_Nulls(Begins at: 25, Ends at:110)
--------------+---------+-------+--------------+-----------+
| New Metrics |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity: | 14 | * | WARNING | 14 |
ParamNBR: | 7 | ** | BABY-MONSTER | 7 |
CalledNBR: | 8 | | OK | 8 |
LOC: | 86 | * | WARNING | 86 |
--------------+---------+-------+--------------+-----------+
Conclusion: | this function is a BABY-MONSTER |
-----------------------------------------------------------+
metric are OUT OF RANGE!
P_Sparse_Raster_Points(Begins at: 112, Ends at:231)
--------------+---------+-------+--------------+-----------+
| New Metrics |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity: | 18 | * | WARNING | 18 |
ParamNBR: | 15 | *** | MONSTER | 15 |
CalledNBR: | 11 | | OK | 11 |
LOC: | 120 | * | WARNING | 120 |
--------------+---------+-------+--------------+-----------+
Conclusion: | this function is a MONSTER |
-----------------------------------------------------------+
metric are OUT OF RANGE!
align_elaboration_box(Begins at: 235, Ends at:280)
--------------+---------+-------+--------------+-----------+
| New Metrics |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity: | 8 | | OK | 8 |
ParamNBR: | 3 | * | WARNING | 3 |
CalledNBR: | 0 | | OK | 0 |
LOC: | 46 | | OK | 46 |
--------------+---------+-------+--------------+-----------+
Conclusion: | this function is a WARNING |
-----------------------------------------------------------+
at least 1 values are close to an outlier please consider revising code!
align_interp_boxes(Begins at: 286, Ends at:405)
--------------+---------+-------+--------------+-----------+
| New Metrics |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity: | 16 | * | WARNING | 16 |
ParamNBR: | 6 | ** | BABY-MONSTER | 6 |
CalledNBR: | 0 | | OK | 0 |
LOC: | 120 | * | WARNING | 120 |
--------------+---------+-------+--------------+-----------+
Conclusion: | this function is a BABY-MONSTER |
-----------------------------------------------------------+
metric are OUT OF RANGE!
Clone analysis:
This file has 4 potentially cloned functions:
P_Sparse_Raster_Points align_elaboration_box align_interp_boxes
In /data/project-manager/grass/grassSVN/grass/trunk/raster/r.resamp.bspline/resamp.c clones of P_Read_Raster_Region_Nulls are:
/data/project-manager/grass/grassSVN/grass/trunk/vector/lidar/r.resamp.bspline/resamp.c P_Read_Raster_Region_Nulls
In /data/project-manager/grass/grassSVN/grass/trunk/raster/r.resamp.bspline/resamp.c clones of P_Sparse_Raster_Points are:
/data/project-manager/grass/grassSVN/grass/trunk/vector/lidar/r.resamp.bspline/resamp.c P_Sparse_Raster_Points
In /data/project-manager/grass/grassSVN/grass/trunk/raster/r.resamp.bspline/resamp.c clones of align_elaboration_box are:
/data/project-manager/grass/grassSVN/grass/trunk/vector/lidar/r.resamp.bspline/resamp.c align_elaboration_box
In /data/project-manager/grass/grassSVN/grass/trunk/raster/r.resamp.bspline/resamp.c clones of align_interp_boxes are:
/data/project-manager/grass/grassSVN/grass/trunk/vector/lidar/r.resamp.bspline/resamp.c align_interp_boxes
*****************************************************************
File :/raster/r.resamp.bspline/crosscorr.c
*****************************************************************
Function
alloc_Stats(Begins at: 77, Ends at:90)
--------------+---------+-------+--------------+-----------+
| New Metrics |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity: | 1 | | OK | 1 |
ParamNBR: | 1 | | OK | 1 |
CalledNBR: | 4 | | OK | 4 |
LOC: | 14 | | OK | 14 |
--------------+---------+-------+--------------+-----------+
Conclusion: | this function is a OK |
-----------------------------------------------------------+
metrics are OK
calc_mean(Begins at: 34, Ends at:44)
--------------+---------+-------+--------------+-----------+
| 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
calc_root_mean_square(Begins at: 47, Ends at:61)
--------------+---------+-------+--------------+-----------+
| New Metrics |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity: | 3 | | OK | 3 |
ParamNBR: | 2 | | OK | 2 |
CalledNBR: | 2 | | OK | 2 |
LOC: | 15 | | OK | 15 |
--------------+---------+-------+--------------+-----------+
Conclusion: | this function is a OK |
-----------------------------------------------------------+
metrics are OK
calc_standard_deviation(Begins at: 63, Ends at:75)
--------------+---------+-------+--------------+-----------+
| New Metrics |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity: | 2 | | OK | 2 |
ParamNBR: | 2 | | OK | 2 |
CalledNBR: | 5 | | OK | 5 |
LOC: | 13 | | OK | 13 |
--------------+---------+-------+--------------+-----------+
Conclusion: | this function is a OK |
-----------------------------------------------------------+
metrics are OK
cross_correlation(Begins at: 120, Ends at:338)
--------------+---------+-------+--------------+-----------+
| New Metrics |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity: | 12 | * | WARNING | 12 |
ParamNBR: | 4 | * | WARNING | 4 |
CalledNBR: | 67 | ** | BABY-MONSTER | 67 |
LOC: | 219 | ** | BABY-MONSTER | 219 |
--------------+---------+-------+--------------+-----------+
Conclusion: | this function is a BABY-MONSTER |
-----------------------------------------------------------+
metric are OUT OF RANGE!
find_minimum(Begins at: 92, Ends at:106)
--------------+---------+-------+--------------+-----------+
| New Metrics |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity: | 3 | | OK | 3 |
ParamNBR: | 2 | | OK | 2 |
CalledNBR: | 0 | | OK | 0 |
LOC: | 15 | | OK | 15 |
--------------+---------+-------+--------------+-----------+
Conclusion: | this function is a OK |
-----------------------------------------------------------+
metrics are OK
interpolation(Begins at: 341, Ends at:364)
--------------+---------+-------+--------------+-----------+
| New Metrics |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity: | 2 | | OK | 2 |
ParamNBR: | 2 | | OK | 2 |
CalledNBR: | 4 | | OK | 4 |
LOC: | 24 | | OK | 24 |
--------------+---------+-------+--------------+-----------+
Conclusion: | this function is a OK |
-----------------------------------------------------------+
metrics are OK
swap(Begins at: 108, Ends at:117)
--------------+---------+-------+--------------+-----------+
| New Metrics |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity: | 1 | | OK | 1 |
ParamNBR: | 3 | * | WARNING | 3 |
CalledNBR: | 4 | | OK | 4 |
LOC: | 10 | | OK | 10 |
--------------+---------+-------+--------------+-----------+
Conclusion: | this function is a WARNING |
-----------------------------------------------------------+
at least 1 values are close to an outlier please consider revising code!
Clone analysis:
This file has 14 potentially cloned functions:
alloc_Stats calc_mean calc_mean calc_root_mean_square calc_root_mean_square calc_standard_deviation calc_standard_deviation cross_correlation find_minimum find_minimum interpolation interpolation swap
In /data/project-manager/grass/grassSVN/grass/trunk/raster/r.resamp.bspline/crosscorr.c clones of alloc_Stats are:
/data/project-manager/grass/grassSVN/grass/trunk/vector/lidar/r.resamp.bspline/crosscorr.c alloc_Stats
/data/project-manager/grass/grassSVN/grass/trunk/vector/lidar/v.surf.bspline/crosscorr.c alloc_Stats
In /data/project-manager/grass/grassSVN/grass/trunk/raster/r.resamp.bspline/crosscorr.c clones of calc_mean are:
/data/project-manager/grass/grassSVN/grass/trunk/vector/lidar/r.resamp.bspline/crosscorr.c calc_mean
/data/project-manager/grass/grassSVN/grass/trunk/vector/lidar/v.surf.bspline/crosscorr.c calc_mean
In /data/project-manager/grass/grassSVN/grass/trunk/raster/r.resamp.bspline/crosscorr.c clones of calc_root_mean_square are:
/data/project-manager/grass/grassSVN/grass/trunk/vector/lidar/r.resamp.bspline/crosscorr.c calc_root_mean_square
/data/project-manager/grass/grassSVN/grass/trunk/vector/lidar/v.surf.bspline/crosscorr.c calc_root_mean_square
In /data/project-manager/grass/grassSVN/grass/trunk/raster/r.resamp.bspline/crosscorr.c clones of calc_standard_deviation are:
/data/project-manager/grass/grassSVN/grass/trunk/vector/lidar/r.resamp.bspline/crosscorr.c calc_standard_deviation
/data/project-manager/grass/grassSVN/grass/trunk/vector/lidar/v.surf.bspline/crosscorr.c calc_standard_deviation
In /data/project-manager/grass/grassSVN/grass/trunk/raster/r.resamp.bspline/crosscorr.c clones of cross_correlation are:
/data/project-manager/grass/grassSVN/grass/trunk/vector/lidar/r.resamp.bspline/crosscorr.c cross_correlation
In /data/project-manager/grass/grassSVN/grass/trunk/raster/r.resamp.bspline/crosscorr.c clones of find_minimum are:
/data/project-manager/grass/grassSVN/grass/trunk/vector/lidar/r.resamp.bspline/crosscorr.c find_minimum
/data/project-manager/grass/grassSVN/grass/trunk/vector/lidar/v.surf.bspline/crosscorr.c find_minimum
In /data/project-manager/grass/grassSVN/grass/trunk/raster/r.resamp.bspline/crosscorr.c clones of interpolation are:
/data/project-manager/grass/grassSVN/grass/trunk/vector/lidar/r.resamp.bspline/crosscorr.c interpolation
/data/project-manager/grass/grassSVN/grass/trunk/vector/lidar/v.surf.bspline/crosscorr.c interpolation
In /data/project-manager/grass/grassSVN/grass/trunk/raster/r.resamp.bspline/crosscorr.c clones of swap are:
/data/project-manager/grass/grassSVN/grass/trunk/vector/lidar/r.resamp.bspline/crosscorr.c swap
*****************************************************************
File :/raster/r.resamp.bspline/bspline.h
*****************************************************************
Class
Param(Begins at: 29, Ends at:34)
+--------+--------+--------+--------+--------+--------+
| DIT | NOC | WMC | RFC | CBO | LCOM |
+------------+--------+--------+--------+--------+--------+--------|
|NEW Metrics | 1 | 0 | 0 | 0 | 0 | 0 |
+------------+--------+--------+--------+--------+--------+--------|
|OLD Metrics | | | | | | |
+------------+--------+--------+--------+--------+--------+--------+
Class
RasterPoint(Begins at: 36, Ends at:40)
+--------+--------+--------+--------+--------+--------+
| DIT | NOC | WMC | RFC | CBO | LCOM |
+------------+--------+--------+--------+--------+--------+--------|
|NEW Metrics | 1 | 0 | 0 | 0 | 0 | 0 |
+------------+--------+--------+--------+--------+--------+--------|
|OLD Metrics | | | | | | |
+------------+--------+--------+--------+--------+--------+--------+
Class
Stats(Begins at: 22, Ends at:27)
+--------+--------+--------+--------+--------+--------+
| DIT | NOC | WMC | RFC | CBO | LCOM |
+------------+--------+--------+--------+--------+--------+--------|
|NEW Metrics | 1 | 0 | 0 | 0 | 0 | 0 |
+------------+--------+--------+--------+--------+--------+--------|
|OLD Metrics | | | | | | |
+------------+--------+--------+--------+--------+--------+--------+
Clone analysis:
This file does not contain cloned functions
*****************************************************************
File :/raster/r.resamp.bspline/main.c
*****************************************************************
Function
main(Begins at: 27, Ends at:639)
--------------+---------+-------+--------------+-----------+
| New Metrics |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity: | 48 | *** | MONSTER | 48 |
ParamNBR: | 2 | | OK | 2 |
CalledNBR: | 216 | *** | MONSTER | 216 |
LOC: | 613 | *** | MONSTER | 613 |
--------------+---------+-------+--------------+-----------+
Conclusion: | this function is a MONSTER |
-----------------------------------------------------------+
metric are OUT OF RANGE!
Clone analysis:
This file has 1 potentially cloned functions:
In /data/project-manager/grass/grassSVN/grass/trunk/raster/r.resamp.bspline/main.c clones of main are:
/data/project-manager/grass/grassSVN/grass/trunk/vector/lidar/r.resamp.bspline/main.c main
____________________________________________
Threshold grass key metrics values at Thu May 20 16:07:58 EDT 2010 are:
----------------------+-----------+-----------+-----------+
| warning | middle | extrem |
| limits | limits | limits |
----------------------+-----------+-----------+-----------+
Complexity (Cyclo): | 11 | 24 | 38 |
ParamNBR: | 3 | 6 | 9 |
CalledNBR: | 21 | 49 | 78 |
LOC: | 78 | 178 | 279 |
----------------------+-----------+-----------+-----------+
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