| CCCC Software Metrics Report generated Tues April 29 00:27:11 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 | 29 | |
| Lines of Code | LOC | 836 | 28.828 |
| McCabe's Cyclomatic Number | MVG | 91 | 3.138 |
| Lines of Comment | COM | 838 | 28.897 |
| LOC/COM | L_C | 0.998 | |
| MVG/COM | M_C | 0.109 | |
| Information Flow measure ( inclusive ) | IF4 | 683 | 23.552 |
| Information Flow measure ( visible ) | IF4v | 683 | 23.552 |
| Information Flow measure ( concrete ) | IF4c | 0 | 0.000 |
| Lines of Code rejected by parser | REJ | 23 |
| Module Name | LOC | MVG | COM | L_C | M_C |
|---|---|---|---|---|---|
| Canvas | 0 | 0 | 0 | ------ | ------ |
| Command | 0 | 0 | 0 | ------ | ------ |
| CommandListener | 0 | 0 | 0 | ------ | ------ |
| Display | 0 | 0 | 0 | ------ | ------ |
| Displayable | 0 | 0 | 0 | ------ | ------ |
| Form | 0 | 0 | 0 | ------ | ------ |
| FrameTrigger | 27 | 1 | 30 | 0.900 | ------ |
| GameBoard | 82 | 9 | 60 | 1.367 | 0.150 |
| GameBoardFactory | 97 | 2 | 27 | 3.593 | ------ |
| GameCanvas | 73 | 10 | 56 | 1.304 | 0.179 |
| GhostActor | 117 | 23 | 111 | 1.054 | 0.207 |
| Graphics | 0 | 0 | 0 | ------ | ------ |
| GridNode | 94 | 7 | 187 | 0.503 | 0.037 |
| IntroScreen | 29 | 0 | 39 | 0.744 | ------ |
| Item | 0 | 0 | 0 | ------ | ------ |
| ItemStateListener | 0 | 0 | 0 | ------ | ------ |
| Item[] | 0 | 0 | 0 | ------ | ------ |
| List | 0 | 0 | 0 | ------ | ------ |
| MIDlet | 0 | 0 | 0 | ------ | ------ |
| Menu | 71 | 13 | 6 | 11.833 | 2.167 |
| PacmanActor | 168 | 26 | 179 | 0.939 | 0.145 |
| PacmanTask | 9 | 0 | 5 | ------ | ------ |
| PacmanTimer | 10 | 0 | 9 | ------ | ------ |
| Thread | 0 | 0 | 0 | ------ | ------ |
| Timer | 0 | 0 | 0 | ------ | ------ |
| TimerTask | 0 | 0 | 0 | ------ | ------ |
| Vector | 0 | 0 | 0 | ------ | ------ |
| anonymous | 0 | 0 | 0 | ------ | ------ |
| pacman | 36 | 0 | 47 | 0.766 | ------ |
| Module Name | WMC1 | WMCv | DIT | NOC | CBO |
|---|---|---|---|---|---|
| Canvas | 0 | 0 | 0 | 1 | 1 |
| Command | 0 | 0 | 0 | 0 | 2 |
| CommandListener | 0 | 0 | 0 | 2 | 2 |
| Display | 0 | 0 | 0 | 0 | 3 |
| Displayable | 0 | 0 | 0 | 0 | 2 |
| Form | 0 | 0 | 0 | 1 | 1 |
| FrameTrigger | 4 | 0 | 1 | 0 | 3 |
| GameBoard | 7 | 0 | 0 | 0 | 7 |
| GameBoardFactory | 3 | 0 | 0 | 0 | 2 |
| GameCanvas | 6 | 0 | 1 | 0 | 9 |
| GhostActor | 11 | 0 | 0 | 0 | 4 |
| Graphics | 0 | 0 | 0 | 0 | 5 |
| GridNode | 16 | 0 | 0 | 0 | 5 |
| IntroScreen | 6 | 0 | 1 | 0 | 5 |
| Item | 0 | 0 | 0 | 0 | 1 |
| ItemStateListener | 0 | 0 | 0 | 1 | 1 |
| Item[] | 0 | 0 | 0 | 0 | 1 |
| List | 0 | 0 | 0 | 1 | 1 |
| MIDlet | 0 | 0 | 0 | 1 | 1 |
| Menu | 4 | 0 | 1 | 0 | 8 |
| PacmanActor | 13 | 0 | 0 | 0 | 5 |
| PacmanTask | 1 | 0 | 1 | 0 | 1 |
| PacmanTimer | 1 | 0 | 0 | 0 | 2 |
| Thread | 0 | 0 | 0 | 1 | 1 |
| 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 | 6 | 0 | 1 | 0 | 8 |
| Module Name | Fan-out | Fan-in | IF4 | ||||||
|---|---|---|---|---|---|---|---|---|---|
| vis | con | inc | vis | con | incl | vis | con | inc | |
| Canvas | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
| Command | 2 | 0 | 2 | 0 | 0 | 0 | 0 | 0 | 0 |
| CommandListener | 2 | 2 | 2 | 0 | 0 | 0 | 0 | 0 | 0 |
| Display | 3 | 0 | 3 | 0 | 0 | 0 | 0 | 0 | 0 |
| Displayable | 2 | 0 | 2 | 0 | 0 | 0 | 0 | 0 | 0 |
| Form | 1 | 1 | 1 | 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 | 3 | 0 | 3 | 6 | 1 | 6 | 324 | 0 | 324 |
| GhostActor | 1 | 0 | 1 | 3 | 0 | 3 | 9 | 0 | 9 |
| Graphics | 5 | 0 | 5 | 0 | 0 | 0 | 0 | 0 | 0 |
| GridNode | 4 | 0 | 4 | 1 | 0 | 1 | 16 | 0 | 16 |
| IntroScreen | 0 | 0 | 0 | 5 | 2 | 5 | 0 | 0 | 0 |
| Item | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
| ItemStateListener | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
| Item[] | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
| List | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
| MIDlet | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
| Menu | 1 | 0 | 1 | 7 | 2 | 7 | 49 | 0 | 49 |
| 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 |
| Thread | 1 | 1 | 1 | 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 | 2 | 0 | 2 | 6 | 2 | 6 | 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 |
IntroScreen.java:1 |
<file scope items> | 2 | 10 | 0 |
Menu.java:1 |
<file scope items> | 1 | 0 | 0 |
pacman.java:1 |
<file scope items> | 4 | 10 | 0 |
PacmanActor.java:1 |
<file scope items> | 4 | 11 | 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.