[GRASS-QA] GRASS QA: martinl |btree.c main.c | 7 clones | 0 monsters |0 warnings

soccerlab.info at gmail.com soccerlab.info at gmail.com
Tue Feb 3 11:46:01 EST 2009


Hello martinl,

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

ANALYSIS 

your changes to files/class/methods/functions : 

*****************************************************************
          File :grass/branches/develbranch_6/raster/r.cost/btree.c
*****************************************************************

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


check_all(Begins at: 398, Ends at:406)
--------------+---------+-------+--------------+-----------+
              |          New Metrics           |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity:   |       2 |       |           OK |         2 |
ParamNBR:     |       1 |       |           OK |         1 |
CalledNBR:    |       3 |       |           OK |         3 |
LOC:          |       9 |       |           OK |         9 |
--------------+---------+-------+--------------+-----------+
Conclusion:   | this function is a            OK           |
-----------------------------------------------------------+
metrics are OK


delete(Begins at: 180, Ends at:365)
--------------+---------+-------+--------------+-----------+
              |          New Metrics           |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity:   |      25 |   *** |      MONSTER |        25 |
ParamNBR:     |       1 |       |           OK |         1 |
CalledNBR:    |      19 |     * |      WARNING |        19 |
LOC:          |     186 |   *** |      MONSTER |       186 |
--------------+---------+-------+--------------+-----------+
Conclusion:   | this function is a       MONSTER           |
-----------------------------------------------------------+
 metric are OUT OF RANGE!


do_quit(Begins at: 143, Ends at:148)
--------------+---------+-------+--------------+-----------+
              |          New Metrics           |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity:   |       1 |       |           OK |         1 |
ParamNBR:     |       3 |     * |      WARNING |         3 |
CalledNBR:    |       4 |       |           OK |         4 |
LOC:          |       6 |       |           OK |         6 |
--------------+---------+-------+--------------+-----------+
Conclusion:   | this function is a       WARNING           |
-----------------------------------------------------------+
 at least 1 values are close to an outlier please consider revising code!


find(Begins at: 106, Ends at:141)
--------------+---------+-------+--------------+-----------+
              |          New Metrics           |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity:   |       7 |     * |      WARNING |         7 |
ParamNBR:     |       3 |     * |      WARNING |         3 |
CalledNBR:    |       4 |       |           OK |         4 |
LOC:          |      36 |       |           OK |        36 |
--------------+---------+-------+--------------+-----------+
Conclusion:   | this function is a       WARNING           |
-----------------------------------------------------------+
 at least 2 values are close to an outlier please consider revising code!


get_lowest(Begins at: 150, Ends at:178)
--------------+---------+-------+--------------+-----------+
              |          New Metrics           |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity:   |       5 |       |           OK |         5 |
ParamNBR:     |       1 |       |           OK |         1 |
CalledNBR:    |       2 |       |           OK |         2 |
LOC:          |      29 |       |           OK |        29 |
--------------+---------+-------+--------------+-----------+
Conclusion:   | this function is a            OK           |
-----------------------------------------------------------+
metrics are OK


insert(Begins at: 51, Ends at:103)
--------------+---------+-------+--------------+-----------+
              |          New Metrics           |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity:   |       9 |     * |      WARNING |         9 |
ParamNBR:     |       3 |     * |      WARNING |         3 |
CalledNBR:    |       3 |       |           OK |         3 |
LOC:          |      53 |     * |      WARNING |        53 |
--------------+---------+-------+--------------+-----------+
Conclusion:   | this function is a       WARNING           |
-----------------------------------------------------------+
 at least 3 values are close to an outlier please consider revising code!


show(Begins at: 378, Ends at:396)
--------------+---------+-------+--------------+-----------+
              |          New Metrics           |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity:   |       3 |       |           OK |         3 |
ParamNBR:     |       1 |       |           OK |         1 |
CalledNBR:    |       3 |       |           OK |         3 |
LOC:          |      19 |       |           OK |        19 |
--------------+---------+-------+--------------+-----------+
Conclusion:   | this function is a            OK           |
-----------------------------------------------------------+
metrics are OK


show_all(Begins at: 367, Ends at:376)
--------------+---------+-------+--------------+-----------+
              |          New Metrics           |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity:   |       2 |       |           OK |         2 |
ParamNBR:     |       1 |       |           OK |         1 |
CalledNBR:    |       3 |       |           OK |         3 |
LOC:          |      10 |       |           OK |        10 |
--------------+---------+-------+--------------+-----------+
Conclusion:   | this function is a            OK           |
-----------------------------------------------------------+
metrics are OK


Clone analysis:
This file has 5 potentially cloned functions:
  find  get_lowest  do_2nd  do_3rd

In /var/project-manager/grass/grassSVN/grass/branches/develbranch_6/raster/r.cost/btree.c clones of check_all are:
          /var/project-manager/grass/grassSVN/grass/branches/develbranch_6/lib/bitmap/bitmap.c  BM_destroy

In /var/project-manager/grass/grassSVN/grass/branches/develbranch_6/raster/r.cost/btree.c clones of find are:
          /var/project-manager/grass/grassSVN/grass/branches/develbranch_6/raster/r.walk/btree.c  find

In /var/project-manager/grass/grassSVN/grass/branches/develbranch_6/raster/r.cost/btree.c clones of get_lowest are:
          /var/project-manager/grass/grassSVN/grass/branches/develbranch_6/raster/r.walk/btree.c  get_lowest

In /var/project-manager/grass/grassSVN/grass/branches/develbranch_6/raster/r.cost/btree.c clones of show_all are:
          /var/project-manager/grass/grassSVN/grass/branches/develbranch_6/imagery/i.vpoints/analyze.c  do_2nd
          /var/project-manager/grass/grassSVN/grass/branches/develbranch_6/imagery/i.vpoints/analyze.c  do_3rd

*****************************************************************
          File :grass/branches/develbranch_6/raster/r.cost/main.c
*****************************************************************

          Function
main(Begins at: 73, Ends at:1048)
--------------+---------+-------+--------------+-----------+
              |          New Metrics           |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity:   |     141 |   *** |      MONSTER |       141 |
ParamNBR:     |       2 |       |           OK |         2 |
CalledNBR:    |     293 |   *** |      MONSTER |       293 |
LOC:          |     976 |   *** |      MONSTER |       976 |
--------------+---------+-------+--------------+-----------+
Conclusion:   | this function is a       MONSTER           |
-----------------------------------------------------------+
 metric are OUT OF RANGE!


process_answers(Begins at: 1050, Ends at:1100)
--------------+---------+-------+--------------+-----------+
              |          New Metrics           |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity:   |       7 |     * |      WARNING |         7 |
ParamNBR:     |       3 |     * |      WARNING |         3 |
CalledNBR:    |      12 |     * |      WARNING |        12 |
LOC:          |      51 |     * |      WARNING |        51 |
--------------+---------+-------+--------------+-----------+
Conclusion:   | this function is a       WARNING           |
-----------------------------------------------------------+
 at least 4 values are close to an outlier please consider revising code!


time_to_stop(Begins at: 1102, Ends at:1122)
--------------+---------+-------+--------------+-----------+
              |          New Metrics           |Old Metrics|
--------------+---------+-------+--------------+-----------+
Complexity:   |       6 |     * |      WARNING |         6 |
ParamNBR:     |       2 |       |           OK |         2 |
CalledNBR:    |       0 |       |           OK |         0 |
LOC:          |      21 |       |           OK |        21 |
--------------+---------+-------+--------------+-----------+
Conclusion:   | this function is a       WARNING           |
-----------------------------------------------------------+
 at least 1 values are close to an outlier please consider revising code!


Clone analysis:
This file has 2 potentially cloned functions:
  time_to_stop

In /var/project-manager/grass/grassSVN/grass/branches/develbranch_6/raster/r.cost/main.c clones of process_answers are:
          /var/project-manager/grass/grassSVN/grass/branches/develbranch_6/raster/r.walk/main.c  process_answers

In /var/project-manager/grass/grassSVN/grass/branches/develbranch_6/raster/r.cost/main.c clones of time_to_stop are:
          /var/project-manager/grass/grassSVN/grass/branches/develbranch_6/raster/r.walk/main.c  time_to_stop

____________________________________________


Threshold grass key metrics values at Tue Feb 03 12:09:35 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