[GRASS-QA] GRASS QA: mmetz |break_lines.c break_polygons.c snap.c | 10 clones | 0 monsters |0 warnings

soccerlab.info at gmail.com soccerlab.info at gmail.com
Fri Mar 27 11:29:44 EDT 2009


Hello mmetz,

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

ANALYSIS 

your changes to files/class/methods/functions : 

*****************************************************************
          File :grass/trunk/lib/vector/Vlib/break_lines.c
*****************************************************************

          Function
Vect_break_lines(Begins at: 36, Ends at:43)
--------------+---------+-------+--------------+-----------+
              |          New Metrics           |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity:   |       1 |       |           OK |         1 |
ParamNBR:     |       4 |     * |      WARNING |         4 |
CalledNBR:    |       1 |       |           OK |         1 |
LOC:          |       8 |       |           OK |         8 |
--------------+---------+-------+--------------+-----------+
Conclusion:   | this function is a       WARNING           |
-----------------------------------------------------------+
 at least 1 values are close to an outlier please consider revising code!


Vect_break_lines_list(Begins at: 68, Ends at:392)
--------------+---------+-------+--------------+-----------+
              |          New Metrics           |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity:   |      56 |   *** |      MONSTER |        56 |
ParamNBR:     |       6 |    ** | BABY-MONSTER |         6 |
CalledNBR:    |      75 |   *** |      MONSTER |        75 |
LOC:          |     325 |   *** |      MONSTER |       325 |
--------------+---------+-------+--------------+-----------+
Conclusion:   | this function is a       MONSTER           |
-----------------------------------------------------------+
 metric are OUT OF RANGE!


Clone analysis:
This file does not contain cloned functions

*****************************************************************
          File :grass/trunk/lib/vector/Vlib/break_polygons.c
*****************************************************************

          Function
Vect_break_polygons(Begins at: 62, Ends at:352)
--------------+---------+-------+--------------+-----------+
              |          New Metrics           |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity:   |      37 |       |           OK |        37 |
ParamNBR:     |       4 |       |           OK |         4 |
CalledNBR:    |      66 |       |           OK |        66 |
LOC:          |     291 |       |           OK |       291 |
--------------+---------+-------+--------------+-----------+
Conclusion:   | this function is a            OK           |
-----------------------------------------------------------+
metrics are OK


srch(Begins at: 39, Ends at:42)
--------------+---------+-------+--------------+-----------+
              |          New Metrics           |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity:   |       1 |   *** |      MONSTER |         1 |
ParamNBR:     |       2 |     * |      WARNING |         2 |
CalledNBR:    |       0 |   *** |      MONSTER |         0 |
LOC:          |       4 |   *** |      MONSTER |         4 |
--------------+---------+-------+--------------+-----------+
Conclusion:   | this function is a       MONSTER           |
-----------------------------------------------------------+
 metric are OUT OF RANGE!


Clone analysis:
This file does not contain cloned functions

*****************************************************************
          File :grass/trunk/lib/vector/Vlib/snap.c
*****************************************************************

          Function
Vect_snap_lines(Begins at: 460, Ends at:491)
--------------+---------+-------+--------------+-----------+
              |          New Metrics           |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity:   |       4 |       |           OK |         4 |
ParamNBR:     |       5 |       |           OK |         5 |
CalledNBR:    |       8 |       |           OK |         8 |
LOC:          |      32 |       |           OK |        32 |
--------------+---------+-------+--------------+-----------+
Conclusion:   | this function is a            OK           |
-----------------------------------------------------------+
metrics are OK


Vect_snap_lines_list(Begins at: 80, Ends at:432)
--------------+---------+-------+--------------+-----------+
              |          New Metrics           |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity:   |      37 |       |           OK |        37 |
ParamNBR:     |       5 |       |           OK |         5 |
CalledNBR:    |      79 |       |           OK |        79 |
LOC:          |     353 |       |           OK |       353 |
--------------+---------+-------+--------------+-----------+
Conclusion:   | this function is a            OK           |
-----------------------------------------------------------+
metrics are OK


add_item(Begins at: 44, Ends at:48)
--------------+---------+-------+--------------+-----------+
              |          New Metrics           |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity:   |       1 |       |           OK |         1 |
ParamNBR:     |       2 |     * |      WARNING |         2 |
CalledNBR:    |       1 |       |           OK |         1 |
LOC:          |       5 |       |           OK |         5 |
--------------+---------+-------+--------------+-----------+
Conclusion:   | this function is a       WARNING           |
-----------------------------------------------------------+
 at least 1 values are close to an outlier please consider revising code!


sort_new(Begins at: 435, Ends at:445)
--------------+---------+-------+--------------+-----------+
              |          New Metrics           |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity:   |       3 |   *** |      MONSTER |         3 |
ParamNBR:     |       2 |     * |      WARNING |         2 |
CalledNBR:    |       0 |   *** |      MONSTER |         0 |
LOC:          |      11 |   *** |      MONSTER |        11 |
--------------+---------+-------+--------------+-----------+
Conclusion:   | this function is a       MONSTER           |
-----------------------------------------------------------+
 metric are OUT OF RANGE!


Clone analysis:
This file has 10 potentially cloned functions:
  cmpcatkey  cmp_cat  cmp_field  comp_array  cmp_near  cmp_along  cmp  cmp  cmpcat

In /var/project-manager/grass/grassSVN/grass/trunk/lib/vector/Vlib/snap.c clones of sort_new are:
          /var/project-manager/grass/grassSVN/grass/trunk/lib/db/dbmi_client/select.c  cmpcat
          /var/project-manager/grass/grassSVN/grass/trunk/lib/db/dbmi_client/select.c  cmpcatkey
          /var/project-manager/grass/grassSVN/grass/trunk/lib/vector/Vlib/cindex.c  cmp_cat
          /var/project-manager/grass/grassSVN/grass/trunk/lib/vector/diglib/cindex.c  cmp_field
          /var/project-manager/grass/grassSVN/grass/trunk/raster/r.random.cells/init.c  comp_array
          /var/project-manager/grass/grassSVN/grass/trunk/vector/v.distance/main.c  cmp_near
          /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
          /var/project-manager/grass/grassSVN/grass/trunk/vector/v.overlay/util.c  cmp
          /var/project-manager/grass/grassSVN/grass/trunk/vector/v.reclass/main.c  cmpcat

____________________________________________


Threshold grass key metrics values at Fri Mar 27 10:35:39 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