[GRASS-QA] GRASS QA: hamish |main.c | 8 clones | 0 monsters |0 warnings

soccerlab.info at gmail.com soccerlab.info at gmail.com
Fri Sep 5 14:39:35 EDT 2008


Hello hamish,

here's a report on your recent GRASS-SVN change : 

ANALYSIS 

your changes to files/class/methods/functions : 

*****************************************************************
          File :grass/trunk/raster/r.in.bin/main.c
*****************************************************************

          Function
main(Begins at: 72, Ends at:594)
--------------+---------+-------+--------------+-----------+
              |          New Metrics           |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity:   |      74 |   *** |      MONSTER |        74 |
ParamNBR:     |       2 |       |           OK |         2 |
CalledNBR:    |     214 |   *** |      MONSTER |       214 |
LOC:          |     523 |   *** |      MONSTER |       523 |
--------------+---------+-------+--------------+-----------+
Conclusion:   | this function is a       MONSTER           |
-----------------------------------------------------------+
metrics are OK


SwabDouble(Begins at: 53, Ends at:70)
--------------+---------+-------+--------------+-----------+
              |          New Metrics           |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity:   |       1 |       |           OK |         1 |
ParamNBR:     |       1 |       |           OK |         1 |
CalledNBR:    |       0 |       |           OK |         0 |
LOC:          |      18 |       |           OK |        18 |
--------------+---------+-------+--------------+-----------+
Conclusion:   | this function is a            OK           |
-----------------------------------------------------------+
metrics are OK


SwabFloat(Begins at: 48, Ends at:51)
--------------+---------+-------+--------------+-----------+
              |          New Metrics           |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity:   |       1 |       |           OK |         1 |
ParamNBR:     |       1 |       |           OK |         1 |
CalledNBR:    |       1 |       |           OK |         1 |
LOC:          |       4 |       |           OK |         4 |
--------------+---------+-------+--------------+-----------+
Conclusion:   | this function is a            OK           |
-----------------------------------------------------------+
metrics are OK


SwabLong(Begins at: 35, Ends at:46)
--------------+---------+-------+--------------+-----------+
              |          New Metrics           |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity:   |       1 |       |           OK |         1 |
ParamNBR:     |       1 |       |           OK |         1 |
CalledNBR:    |       0 |       |           OK |         0 |
LOC:          |      12 |       |           OK |        12 |
--------------+---------+-------+--------------+-----------+
Conclusion:   | this function is a            OK           |
-----------------------------------------------------------+
metrics are OK


SwabShort(Begins at: 25, Ends at:33)
--------------+---------+-------+--------------+-----------+
              |          New Metrics           |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity:   |       1 |       |           OK |         1 |
ParamNBR:     |       1 |       |           OK |         1 |
CalledNBR:    |       0 |       |           OK |         0 |
LOC:          |       9 |       |           OK |         9 |
--------------+---------+-------+--------------+-----------+
Conclusion:   | this function is a            OK           |
-----------------------------------------------------------+
metrics are OK


Clone analysis:
This file has 8 potentially cloned functions:
  SwabDouble  SwabDouble  SwabLong  SwabLong  TIFFSwabLong  SwabLong  TIFFSwabLong

In /var/project-manager/grass/grassSVN/grass/trunk/raster/r.in.bin/main.c clones of SwabDouble are:
          /var/project-manager/grass/grassSVN/grass/branches/develbranch_6/raster/r.in.bin/main.c  SwabDouble
          /var/project-manager/grass/grassSVN/grass/branches/develbranch_6/raster/r.in.mat/main.c  SwabDouble
          /var/project-manager/grass/grassSVN/grass/trunk/raster/r.in.mat/main.c  SwabDouble

In /var/project-manager/grass/grassSVN/grass/trunk/raster/r.in.bin/main.c clones of SwabLong are:
          /var/project-manager/grass/grassSVN/grass/branches/develbranch_6/raster/r.in.bin/main.c  SwabLong
          /var/project-manager/grass/grassSVN/grass/branches/develbranch_6/raster/r.in.mat/main.c  SwabLong
          /var/project-manager/grass/grassSVN/grass/branches/develbranch_6/raster/r.out.bin/tif_swab.c  TIFFSwabLong
          /var/project-manager/grass/grassSVN/grass/trunk/raster/r.in.mat/main.c  SwabLong
          /var/project-manager/grass/grassSVN/grass/trunk/raster/r.out.bin/tif_swab.c  TIFFSwabLong

____________________________________________


Threshold GRASS6 key metrics values at Fri Sep 05 14:44:58 EDT 2008 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 
    http://web.soccerlab.polymtl.ca/grass-evolution/grass-browsers/grass-index-en.html 



More information about the grass-qa mailing list