| CCCC Software Metrics Report generated Mon May 12 00:18:24 2003 |
|
|---|---|
Project Summary |
Summary table of high level measures summed over all files processed in the current run. |
Procedural Metrics Summary |
Table of procedural measures (i.e. lines of code, lines of comment, McCabe's cyclomatic complexity summed over each module. |
Object Oriented Design |
Table of four of the 6 metrics proposed by Chidamber and Kemerer in their various papers on 'a metrics suite for object oriented design'. |
Structural Metrics Summary |
Structural metrics based on the relationships of each module with others. Includes fan-out (i.e. number of other modules the current module uses), fan-in (number of other modules which use the current module), and the Information Flow measure suggested by Henry and Kafura, which combines these to give a measure of coupling for the module. |
Other Extents |
Lexical counts for parts of submitted source files which the analyser was unable to assign to a module. Each record in this table relates to either a part of the code which triggered a parse failure, or to the residual lexical counts relating to parts of a file not associated with a specific module. |
About CCCC |
A description of the CCCC program. |
| Metric | Tag | Overall | Per Module |
|---|---|---|---|
| Number of modules | NOM | 27 | |
| Lines of Code | LOC | 922 | 34.148 |
| McCabe's Cyclomatic Number | MVG | 91 | 3.370 |
| Lines of Comment | COM | 782 | 28.963 |
| LOC/COM | L_C | 1.179 | |
| MVG/COM | M_C | 0.116 | |
| Information Flow measure ( inclusive ) | IF4 | 862 | 31.926 |
| Information Flow measure ( visible ) | IF4v | 862 | 31.926 |
| Information Flow measure ( concrete ) | IF4c | 0 | 0.000 |
| Lines of Code rejected by parser | REJ | 28 |
| Module Name | LOC | MVG | COM | L_C | M_C |
|---|---|---|---|---|---|
| Canvas | 0 | 0 | 0 | ------ | ------ |
| Command | 0 | 0 | 0 | ------ | ------ |
| CommandListener | 0 | 0 | 0 | ------ | ------ |
| Displayable | 0 | 0 | 0 | ------ | ------ |
| FrameTrigger | 27 | 1 | 30 | 0.900 | ------ |
| GameBoard | 82 | 9 | 60 | 1.367 | 0.150 |
| GameBoardFactory | 97 | 2 | 27 | 3.593 | ------ |
| GameCanvas | 84 | 12 | 44 | 1.909 | 0.273 |
| GhostActor | 117 | 23 | 111 | 1.054 | 0.207 |
| Graphics | 0 | 0 | 0 | ------ | ------ |
| GridNode | 94 | 7 | 187 | 0.503 | 0.037 |
| List | 0 | 0 | 0 | ------ | ------ |
| MIDlet | 0 | 0 | 0 | ------ | ------ |
| MenuScreen | 47 | 4 | 1 | 47.000 | ------ |
| PacmanActor | 168 | 26 | 179 | 0.939 | 0.145 |
| PacmanTask | 9 | 0 | 5 | ------ | ------ |
| PacmanTimer | 10 | 0 | 9 | ------ | ------ |
| Random | 0 | 0 | 0 | ------ | ------ |
| SplashScreen | 81 | 5 | 0 | ****** | ****** |
| SplashTrigger | 23 | 1 | 26 | 0.885 | ------ |
| String | 0 | 0 | 0 | ------ | ------ |
| Thread | 0 | 0 | 0 | ------ | ------ |
| Timer | 0 | 0 | 0 | ------ | ------ |
| TimerTask | 0 | 0 | 0 | ------ | ------ |
| Vector | 0 | 0 | 0 | ------ | ------ |
| anonymous | 0 | 0 | 0 | ------ | ------ |
| pacman | 55 | 1 | 31 | 1.774 | ------ |
| Module Name | WMC1 | WMCv | DIT | NOC | CBO |
|---|---|---|---|---|---|
| Canvas | 0 | 0 | 0 | 2 | 2 |
| Command | 0 | 0 | 0 | 0 | 3 |
| CommandListener | 0 | 0 | 0 | 3 | 3 |
| Displayable | 0 | 0 | 0 | 0 | 3 |
| FrameTrigger | 4 | 0 | 1 | 0 | 3 |
| GameBoard | 7 | 0 | 0 | 0 | 7 |
| GameBoardFactory | 3 | 0 | 0 | 0 | 2 |
| GameCanvas | 6 | 0 | 1 | 0 | 10 |
| GhostActor | 11 | 0 | 0 | 0 | 4 |
| Graphics | 0 | 0 | 0 | 0 | 6 |
| GridNode | 16 | 0 | 0 | 0 | 5 |
| List | 0 | 0 | 0 | 1 | 1 |
| MIDlet | 0 | 0 | 0 | 1 | 1 |
| MenuScreen | 2 | 0 | 1 | 0 | 7 |
| PacmanActor | 13 | 0 | 0 | 0 | 5 |
| PacmanTask | 1 | 0 | 1 | 0 | 1 |
| PacmanTimer | 1 | 0 | 0 | 0 | 2 |
| Random | 0 | 0 | 0 | 0 | 1 |
| SplashScreen | 5 | 0 | 1 | 0 | 10 |
| SplashTrigger | 3 | 0 | 1 | 0 | 3 |
| String | 0 | 0 | 0 | 0 | 1 |
| Thread | 0 | 0 | 0 | 2 | 2 |
| Timer | 0 | 0 | 0 | 0 | 1 |
| TimerTask | 0 | 0 | 0 | 1 | 1 |
| Vector | 0 | 0 | 0 | 0 | 1 |
| anonymous | 0 | 0 | 0 | 0 | 0 |
| pacman | 9 | 0 | 1 | 0 | 7 |
| Module Name | Fan-out | Fan-in | IF4 | ||||||
|---|---|---|---|---|---|---|---|---|---|
| vis | con | inc | vis | con | incl | vis | con | inc | |
| Canvas | 2 | 2 | 2 | 0 | 0 | 0 | 0 | 0 | 0 |
| Command | 3 | 0 | 3 | 0 | 0 | 0 | 0 | 0 | 0 |
| CommandListener | 3 | 3 | 3 | 0 | 0 | 0 | 0 | 0 | 0 |
| Displayable | 3 | 0 | 3 | 0 | 0 | 0 | 0 | 0 | 0 |
| FrameTrigger | 1 | 0 | 1 | 2 | 1 | 2 | 4 | 0 | 4 |
| GameBoard | 2 | 0 | 2 | 5 | 0 | 5 | 100 | 0 | 100 |
| GameBoardFactory | 0 | 0 | 0 | 2 | 0 | 2 | 0 | 0 | 0 |
| GameCanvas | 2 | 0 | 2 | 8 | 2 | 8 | 256 | 0 | 256 |
| GhostActor | 1 | 0 | 1 | 3 | 0 | 3 | 9 | 0 | 9 |
| Graphics | 6 | 0 | 6 | 0 | 0 | 0 | 0 | 0 | 0 |
| GridNode | 4 | 0 | 4 | 1 | 0 | 1 | 16 | 0 | 16 |
| List | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
| MIDlet | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
| MenuScreen | 1 | 0 | 1 | 6 | 2 | 6 | 36 | 0 | 36 |
| PacmanActor | 2 | 0 | 2 | 3 | 0 | 3 | 36 | 0 | 36 |
| PacmanTask | 0 | 0 | 0 | 1 | 1 | 1 | 0 | 0 | 0 |
| PacmanTimer | 1 | 0 | 1 | 1 | 0 | 1 | 1 | 0 | 1 |
| Random | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
| SplashScreen | 2 | 0 | 2 | 8 | 2 | 8 | 256 | 0 | 256 |
| SplashTrigger | 1 | 0 | 1 | 2 | 1 | 2 | 4 | 0 | 4 |
| String | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
| Thread | 2 | 2 | 2 | 0 | 0 | 0 | 0 | 0 | 0 |
| Timer | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
| TimerTask | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
| Vector | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
| anonymous | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| pacman | 3 | 0 | 3 | 4 | 1 | 4 | 144 | 0 | 144 |
| Location | Text | LOC | COM | MVG |
|---|---|---|---|---|
FrameTrigger.java:1 |
<file scope items> | 2 | 10 | 0 |
GameBoard.java:1 |
<file scope items> | 3 | 10 | 0 |
GameBoardFactory.java:1 |
<file scope items> | 1 | 1 | 0 |
GameCanvas.java:1 |
<file scope items> | 2 | 10 | 0 |
GhostActor.java:1 |
<file scope items> | 2 | 10 | 0 |
GridNode.java:1 |
<file scope items> | 2 | 10 | 0 |
MenuScreen.java:1 |
<file scope items> | 3 | 0 | 0 |
pacman.java:1 |
<file scope items> | 3 | 10 | 0 |
PacmanActor.java:1 |
<file scope items> | 4 | 11 | 0 |
SplashScreen.java:1 |
<file scope items> | 4 | 0 | 0 |
SplashTrigger.java:1 |
<file scope items> | 2 | 0 | 0 |
This report was generated by the program CCCC, which is FREELY REDISTRIBUTABLE but carries NO WARRANTY.
CCCC was developed by Tim Littlefair. as part of a PhD research project. This project is now completed and descriptions of the findings can be accessed at http://www.fste.ac.cowan.edu.au/~tlittlef.
User support for CCCC can be obtained by mailing the list cccc-users@lists.sourceforge.net.
Please also visit the CCCC development website at http://cccc.sourceforge.net.