Confidential - Acme Engineering
Resource Standard Metrics™ for C, C++, C# and Java
Version 7.75 - mSquaredTechnologies.com
License Type: Shareware Evaluation License
Licensed To : Shareware End User - Distribute Freely
License No. : SW1380 License Date: Dec 05, 1998
Build Date : Aug 16 2009 Run Date: Aug 16, 2009
©1996-2009 M Squared Technologies LLC™
________________________________________________________________________
License File: C:\Program Files\MSquared\M2 RSM\rsm.lic
Config. File: C:\Program Files\MSquared\M2 RSM\rsm.cfg
Command Line: -H -SQuality Notice Report -fa -fp -o -n Contact.java Rolo
dex.java
UDQN File : C:\Program Files\MSquared\M2 RSM\rsm_udqn.cfg
Quality Notice Report
~~ Function Metrics ~~
~~ Class/Struct Metrics ~~
~~ Quality Analysis ~~
File: Contact.java
________________________________________________________________________
Package Begin: rolodex
-------------------------- Class Begin Line: 9 -------------------------
Class: rolodex.Contact
Notice #52: Line 9: A class has been identified which does not
have a preceding comment. Comments that detail the purpose,
algorithms, and parameter/return definitions are suggested.
------------------------ Function Begin Line: 27 -----------------------
Function: rolodex.Contact.Contact
Parameters: ()
Notice #51: Line 27: A function has been identified which does not
have a preceding comment. Comments that detail the purpose,
algorithms, and parameter/return definitions are suggested.
Notice #49: The function contains no input parameters or void.
Suggest using explict parameters for interface clarity.
Function: rolodex.Contact.Contact
LOC 3 eLOC 1 lLOC 1 Comment 0 Lines 3
Function Points FP(LOC) 0.1 FP(eLOC) 0.0 FP(lLOC) 0.0
------------------------- Function End Line: 29 ------------------------
------------------------ Function Begin Line: 32 -----------------------
Function: rolodex.Contact.Contact
Parameters: (String s)
Notice #51: Line 32: A function has been identified which does not
have a preceding comment. Comments that detail the purpose,
algorithms, and parameter/return definitions are suggested.
Function: rolodex.Contact.Contact
LOC 3 eLOC 1 lLOC 1 Comment 0 Lines 3
Function Points FP(LOC) 0.1 FP(eLOC) 0.0 FP(lLOC) 0.0
------------------------- Function End Line: 34 ------------------------
------------------------ Function Begin Line: 37 -----------------------
Function: rolodex.Contact.setName
Parameters: ()
Notice #51: Line 37: A function has been identified which does not
have a preceding comment. Comments that detail the purpose,
algorithms, and parameter/return definitions are suggested.
Notice #38: Line 40: Exception handling 'try' - 'catch' has been
identified. Exception handling can be a form indirect logic
control similar to a goto. The use of exception handling
should be driven by the design and not casually imposed
upon the code.
Notice #1: Line 42: Line character length = 85. This width
exceeds the standard terminal width of 80 characters.
Notice #44: Line 50: The keyword 'break' has been identified
outside a 'switch' logic control structure. The use
of 'break' interrupts the linear logic flow and can create
source code which is difficult to maintain.
Notice #44: Line 58: The keyword 'break' has been identified
outside a 'switch' logic control structure. The use
of 'break' interrupts the linear logic flow and can create
source code which is difficult to maintain.
Notice #17: Function comments, 0.0% are less than 10.0%.
Notice #46: Function blank line percent, 0.0% is less than 10.0%.
Notice #49: The function contains no input parameters or void.
Suggest using explict parameters for interface clarity.
Function: rolodex.Contact.setName
LOC 26 eLOC 14 lLOC 9 Comment 0 Lines 26
Function Points FP(LOC) 0.5 FP(eLOC) 0.3 FP(lLOC) 0.2
------------------------- Function End Line: 62 ------------------------
------------------------ Function Begin Line: 65 -----------------------
Function: rolodex.Contact.getName
Parameters: ()
Notice #51: Line 65: A function has been identified which does not
have a preceding comment. Comments that detail the purpose,
algorithms, and parameter/return definitions are suggested.
Notice #119: Line: 66 Return is not a function,
no parenthesis should be used.
Notice #49: The function contains no input parameters or void.
Suggest using explict parameters for interface clarity.
Function: rolodex.Contact.getName
LOC 3 eLOC 1 lLOC 1 Comment 0 Lines 3
Function Points FP(LOC) 0.1 FP(eLOC) 0.0 FP(lLOC) 0.0
------------------------- Function End Line: 67 ------------------------
------------------------ Function Begin Line: 70 -----------------------
Function: rolodex.Contact.show
Parameters: ()
Notice #51: Line 70: A function has been identified which does not
have a preceding comment. Comments that detail the purpose,
algorithms, and parameter/return definitions are suggested.
Notice #49: The function contains no input parameters or void.
Suggest using explict parameters for interface clarity.
Function: rolodex.Contact.show
LOC 3 eLOC 1 lLOC 1 Comment 0 Lines 3
Function Points FP(LOC) 0.1 FP(eLOC) 0.0 FP(lLOC) 0.0
------------------------- Function End Line: 72 ------------------------
------------------------ Function Begin Line: 75 -----------------------
Function: rolodex.Contact.toString
Parameters: ()
Notice #51: Line 75: A function has been identified which does not
have a preceding comment. Comments that detail the purpose,
algorithms, and parameter/return definitions are suggested.
Notice #119: Line: 76 Return is not a function,
no parenthesis should be used.
Notice #49: The function contains no input parameters or void.
Suggest using explict parameters for interface clarity.
Function: rolodex.Contact.toString
LOC 3 eLOC 1 lLOC 1 Comment 0 Lines 3
Function Points FP(LOC) 0.1 FP(eLOC) 0.0 FP(lLOC) 0.0
------------------------- Function End Line: 77 ------------------------
------------------------ Function Begin Line: 80 -----------------------
Function: rolodex.Contact.main
Parameters: (String args[])
Notice #51: Line 80: A function has been identified which does not
have a preceding comment. Comments that detail the purpose,
algorithms, and parameter/return definitions are suggested.
Function: rolodex.Contact.main
LOC 4 eLOC 2 lLOC 2 Comment 0 Lines 4
Function Points FP(LOC) 0.1 FP(eLOC) 0.0 FP(lLOC) 0.0
------------------------- Function End Line: 83 ------------------------
Notice #31: Class comments, 0.0% are less than 10.0%.
Class: rolodex.Contact
Attributes Publ 0 Prot 0 Private 2 Total 2
Methods Publ 7 Prot 0 Private 0 Total 7
LOC 68 eLOC 36 lLOC 21 Comment 0 Lines 75
Function Points FP(LOC) 1.3 FP(eLOC) 0.7 FP(lLOC) 0.4
-------------------------- Class End Line: 84 --------------------------
Package End: rolodex
Notice #20: File comment line percentage, 0.0% is less than 10.0%
------------------------------------------------------------------------
~~ Total File Summary ~~
LOC 74 eLOC 42 lLOC 26 Comment 0 Lines 84
Function Points FP(LOC) 1.4 FP(eLOC) 0.8 FP(lLOC) 0.5
------------------------------------------------------------------------
~~ File Functional Summary ~~
File Function Count....: 7
Total Function LOC.....: 45 Total Function Pts LOC : 1.4
Total Function eLOC....: 21 Total Function Pts eLOC: 0.8
Total Function lLOC....: 16 Total Function Pts lLOC: 0.5
Total Function Params .: 2 Total Function Return .: 7
Total Cyclo Complexity : 10 Total Function Complex.: 19
------ ----- ----- ------ ------ -----
Max Function LOC ......: 26 Average Function LOC ..: 6.43
Max Function eLOC .....: 14 Average Function eLOC .: 3.00
Max Function lLOC .....: 9 Average Function lLOC .: 2.29
________________________________________________________________________
End of File: Contact.java
File: Rolodex.java
________________________________________________________________________
Package Begin: rolodex
------------------------- Class Begin Line: 12 -------------------------
Class: rolodex.Rolodex
Notice #52: Line 12: A class has been identified which does not
have a preceding comment. Comments that detail the purpose,
algorithms, and parameter/return definitions are suggested.
------------------------ Function Begin Line: 17 -----------------------
Function: rolodex.Rolodex.Rolodex
Parameters: ()
Notice #51: Line 17: A function has been identified which does not
have a preceding comment. Comments that detail the purpose,
algorithms, and parameter/return definitions are suggested.
Notice #49: The function contains no input parameters or void.
Suggest using explict parameters for interface clarity.
Function: rolodex.Rolodex.Rolodex
LOC 3 eLOC 1 lLOC 1 Comment 0 Lines 3
Function Points FP(LOC) 0.1 FP(eLOC) 0.0 FP(lLOC) 0.0
------------------------- Function End Line: 19 ------------------------
------------------------ Function Begin Line: 22 -----------------------
Function: rolodex.Rolodex.open
Parameters: (String datafilename)
Notice #51: Line 22: A function has been identified which does not
have a preceding comment. Comments that detail the purpose,
algorithms, and parameter/return definitions are suggested.
Notice #38: Line 34: Exception handling 'try' - 'catch' has been
identified. Exception handling can be a form indirect logic
control similar to a goto. The use of exception handling
should be driven by the design and not casually imposed
upon the code.
Notice #1: Line 40: Line character length = 81. This width
exceeds the standard terminal width of 80 characters.
Notice #119: Line: 41 Return is not a function,
no parenthesis should be used.
Notice #119: Line: 47 Return is not a function,
no parenthesis should be used.
Notice #38: Line 51: Exception handling 'try' - 'catch' has been
identified. Exception handling can be a form indirect logic
control similar to a goto. The use of exception handling
should be driven by the design and not casually imposed
upon the code.
Notice #119: Line: 58 Return is not a function,
no parenthesis should be used.
Notice #38: Line 62: Exception handling 'try' - 'catch' has been
identified. Exception handling can be a form indirect logic
control similar to a goto. The use of exception handling
should be driven by the design and not casually imposed
upon the code.
Notice #119: Line: 69 Return is not a function,
no parenthesis should be used.
Notice #119: Line: 78 Return is not a function,
no parenthesis should be used.
Notice #17: Function comments, 3.8% are less than 10.0%.
Notice #46: Function blank line percent, 8.6% is less than 10.0%.
Notice #27: The number of function return points
5 exceeds the specified limit of 1.
Function: rolodex.Rolodex.open
LOC 51 eLOC 29 lLOC 19 Comment 2 Lines 58
Function Points FP(LOC) 1.0 FP(eLOC) 0.5 FP(lLOC) 0.4
------------------------- Function End Line: 79 ------------------------
------------------------ Function Begin Line: 82 -----------------------
Function: rolodex.Rolodex.close
Parameters: (String datafilename)
Notice #51: Line 82: A function has been identified which does not
have a preceding comment. Comments that detail the purpose,
algorithms, and parameter/return definitions are suggested.
Notice #38: Line 89: Exception handling 'try' - 'catch' has been
identified. Exception handling can be a form indirect logic
control similar to a goto. The use of exception handling
should be driven by the design and not casually imposed
upon the code.
Notice #119: Line: 96 Return is not a function,
no parenthesis should be used.
Notice #38: Line 100: Exception handling 'try' - 'catch' has been
identified. Exception handling can be a form indirect logic
control similar to a goto. The use of exception handling
should be driven by the design and not casually imposed
upon the code.
Notice #119: Line: 107 Return is not a function,
no parenthesis should be used.
Notice #38: Line 110: Exception handling 'try' - 'catch' has been
identified. Exception handling can be a form indirect logic
control similar to a goto. The use of exception handling
should be driven by the design and not casually imposed
upon the code.
Notice #119: Line: 117 Return is not a function,
no parenthesis should be used.
Notice #119: Line: 120 Return is not a function,
no parenthesis should be used.
Notice #17: Function comments, 2.8% are less than 10.0%.
Notice #27: The number of function return points
4 exceeds the specified limit of 1.
Function: rolodex.Rolodex.close
LOC 35 eLOC 21 lLOC 15 Comment 1 Lines 40
Function Points FP(LOC) 0.7 FP(eLOC) 0.4 FP(lLOC) 0.3
------------------------ Function End Line: 121 ------------------------
----------------------- Function Begin Line: 124 -----------------------
Function: rolodex.Rolodex.add
Parameters: (Contact c)
Notice #51: Line 124: A function has been identified which does not
have a preceding comment. Comments that detail the purpose,
algorithms, and parameter/return definitions are suggested.
Function: rolodex.Rolodex.add
LOC 3 eLOC 1 lLOC 1 Comment 0 Lines 3
Function Points FP(LOC) 0.1 FP(eLOC) 0.0 FP(lLOC) 0.0
------------------------ Function End Line: 126 ------------------------
----------------------- Function Begin Line: 129 -----------------------
Function: rolodex.Rolodex.addContacts
Parameters: ()
Notice #51: Line 129: A function has been identified which does not
have a preceding comment. Comments that detail the purpose,
algorithms, and parameter/return definitions are suggested.
Notice #50: Line 130: A variable has been identified which is
assigned to a literal number. Symbolic constants should
be used to enhance maintainability.
Notice #44: Line 136: The keyword 'break' has been identified
outside a 'switch' logic control structure. The use
of 'break' interrupts the linear logic flow and can create
source code which is difficult to maintain.
Notice #119: Line: 144 Return is not a function,
no parenthesis should be used.
Notice #17: Function comments, 0.0% are less than 10.0%.
Notice #46: Function blank line percent, 0.0% is less than 10.0%.
Notice #49: The function contains no input parameters or void.
Suggest using explict parameters for interface clarity.
Function: rolodex.Rolodex.addContacts
LOC 17 eLOC 9 lLOC 6 Comment 0 Lines 17
Function Points FP(LOC) 0.3 FP(eLOC) 0.2 FP(lLOC) 0.1
------------------------ Function End Line: 145 ------------------------
----------------------- Function Begin Line: 148 -----------------------
Function: rolodex.Rolodex.show
Parameters: ()
Notice #51: Line 148: A function has been identified which does not
have a preceding comment. Comments that detail the purpose,
algorithms, and parameter/return definitions are suggested.
Notice #50: Line 149: A variable has been identified which is
assigned to a literal number. Symbolic constants should
be used to enhance maintainability.
Notice #17: Function comments, 0.0% are less than 10.0%.
Notice #46: Function blank line percent, 0.0% is less than 10.0%.
Notice #49: The function contains no input parameters or void.
Suggest using explict parameters for interface clarity.
Function: rolodex.Rolodex.show
LOC 6 eLOC 2 lLOC 2 Comment 0 Lines 6
Function Points FP(LOC) 0.1 FP(eLOC) 0.0 FP(lLOC) 0.0
------------------------ Function End Line: 153 ------------------------
----------------------- Function Begin Line: 156 -----------------------
Function: rolodex.Rolodex.main
Parameters: (String args[])
Notice #51: Line 156: A function has been identified which does not
have a preceding comment. Comments that detail the purpose,
algorithms, and parameter/return definitions are suggested.
Notice #17: Function comments, 0.0% are less than 10.0%.
Function: rolodex.Rolodex.main
LOC 20 eLOC 12 lLOC 9 Comment 0 Lines 23
Function Points FP(LOC) 0.4 FP(eLOC) 0.2 FP(lLOC) 0.2
------------------------ Function End Line: 178 ------------------------
Notice #31: Class comments, 2.0% are less than 10.0%.
Class: rolodex.Rolodex
Attributes Publ 0 Prot 0 Private 1 Total 1
Methods Publ 7 Prot 0 Private 0 Total 7
LOC 145 eLOC 83 lLOC 54 Comment 3 Lines 167
Function Points FP(LOC) 2.7 FP(eLOC) 1.6 FP(lLOC) 1.0
-------------------------- Class End Line: 179 -------------------------
Package End: rolodex
Notice #20: File comment line percentage, 1.9% is less than 10.0%
------------------------------------------------------------------------
~~ Total File Summary ~~
LOC 154 eLOC 92 lLOC 62 Comment 3 Lines 181
Function Points FP(LOC) 2.9 FP(eLOC) 1.7 FP(lLOC) 1.2
------------------------------------------------------------------------
~~ File Functional Summary ~~
File Function Count....: 7
Total Function LOC.....: 135 Total Function Pts LOC : 2.9
Total Function eLOC....: 75 Total Function Pts eLOC: 1.7
Total Function lLOC....: 53 Total Function Pts lLOC: 1.2
Total Function Params .: 4 Total Function Return .: 14
Total Cyclo Complexity : 15 Total Function Complex.: 33
------ ----- ----- ------ ------ -----
Max Function LOC ......: 51 Average Function LOC ..: 19.29
Max Function eLOC .....: 29 Average Function eLOC .: 10.71
Max Function lLOC .....: 19 Average Function lLOC .: 7.57
________________________________________________________________________
End of File: Rolodex.java
------------------------------------------------------------------------
~~ Total Metrics For 2 Files ~~
------------------------------------------------------------------------
~~ Total Project Summary ~~
LOC 228 eLOC 134 lLOC 88 Comment 3 Lines 265
Average per File, metric/2 files
LOC 114 eLOC 67 lLOC 44 Comment 1 Lines 132
Function Points FP(LOC) 4.3 FP(eLOC) 2.5 FP(lLOC) 1.7
------------------------------------------------------------------------
~~ Project Functional Metrics ~~
Function: rolodex.Contact.Contact
Parameters: ()
LOC 3 eLOC 1 lLOC 1 Comment 0 Lines 3
Function Points FP(LOC) 0.1 FP(eLOC) 0.0 FP(lLOC) 0.0
Function: rolodex.Contact.Contact
Parameters: (String s)
LOC 3 eLOC 1 lLOC 1 Comment 0 Lines 3
Function Points FP(LOC) 0.1 FP(eLOC) 0.0 FP(lLOC) 0.0
Function: rolodex.Contact.setName
Parameters: ()
LOC 26 eLOC 14 lLOC 9 Comment 0 Lines 26
Function Points FP(LOC) 0.5 FP(eLOC) 0.3 FP(lLOC) 0.2
Function: rolodex.Contact.getName
Parameters: ()
LOC 3 eLOC 1 lLOC 1 Comment 0 Lines 3
Function Points FP(LOC) 0.1 FP(eLOC) 0.0 FP(lLOC) 0.0
Function: rolodex.Contact.show
Parameters: ()
LOC 3 eLOC 1 lLOC 1 Comment 0 Lines 3
Function Points FP(LOC) 0.1 FP(eLOC) 0.0 FP(lLOC) 0.0
Function: rolodex.Contact.toString
Parameters: ()
LOC 3 eLOC 1 lLOC 1 Comment 0 Lines 3
Function Points FP(LOC) 0.1 FP(eLOC) 0.0 FP(lLOC) 0.0
Function: rolodex.Contact.main
Parameters: (String args[])
LOC 4 eLOC 2 lLOC 2 Comment 0 Lines 4
Function Points FP(LOC) 0.1 FP(eLOC) 0.0 FP(lLOC) 0.0
Function: rolodex.Rolodex.Rolodex
Parameters: ()
LOC 3 eLOC 1 lLOC 1 Comment 0 Lines 3
Function Points FP(LOC) 0.1 FP(eLOC) 0.0 FP(lLOC) 0.0
Function: rolodex.Rolodex.open
Parameters: (String datafilename)
LOC 51 eLOC 29 lLOC 19 Comment 2 Lines 58
Function Points FP(LOC) 1.0 FP(eLOC) 0.5 FP(lLOC) 0.4
Function: rolodex.Rolodex.close
Parameters: (String datafilename)
LOC 35 eLOC 21 lLOC 15 Comment 1 Lines 40
Function Points FP(LOC) 0.7 FP(eLOC) 0.4 FP(lLOC) 0.3
Function: rolodex.Rolodex.add
Parameters: (Contact c)
LOC 3 eLOC 1 lLOC 1 Comment 0 Lines 3
Function Points FP(LOC) 0.1 FP(eLOC) 0.0 FP(lLOC) 0.0
Function: rolodex.Rolodex.addContacts
Parameters: ()
LOC 17 eLOC 9 lLOC 6 Comment 0 Lines 17
Function Points FP(LOC) 0.3 FP(eLOC) 0.2 FP(lLOC) 0.1
Function: rolodex.Rolodex.show
Parameters: ()
LOC 6 eLOC 2 lLOC 2 Comment 0 Lines 6
Function Points FP(LOC) 0.1 FP(eLOC) 0.0 FP(lLOC) 0.0
Function: rolodex.Rolodex.main
Parameters: (String args[])
LOC 20 eLOC 12 lLOC 9 Comment 0 Lines 23
Function Points FP(LOC) 0.4 FP(eLOC) 0.2 FP(lLOC) 0.2
Total: Functions
LOC 180 eLOC 96 lLOC 69 InCmp 27 CycloCmp 25
Function Points FP(LOC) 3.4 FP(eLOC) 1.8 FP(lLOC) 1.3
------------------------------------------------------------------------
~~ Project Functional Analysis ~~
Total Functions .......: 14 Total Physical Lines ..: 195
Total LOC .............: 180 Total Function Pts LOC : 3.4
Total eLOC ............: 96 Total Function Pts eLOC: 1.8
Total lLOC.............: 69 Total Function Pts lLOC: 1.3
Total Cyclomatic Comp. : 25 Total Interface Comp. .: 27
Total Parameters ......: 6 Total Return Points ...: 21
Total Comment Lines ...: 3 Total Blank Lines .....: 12
------ ----- ----- ------ ------ -----
Avg Physical Lines ....: 13.93
Avg LOC ...............: 12.86 Avg eLOC ..............: 6.86
Avg lLOC ..............: 4.93 Avg Cyclomatic Comp. ..: 1.79
Avg Interface Comp. ...: 1.93 Avg Parameters ........: 0.43
Avg Return Points .....: 1.50 Avg Comment Lines .....: 0.21
------ ----- ----- ------ ------ -----
Max LOC ...............: 51
Max eLOC ..............: 29 Max lLOC ..............: 19
Max Cyclomatic Comp. ..: 4 Max Interface Comp. ...: 6
Max Parameters ........: 1 Max Return Points .....: 5
Max Comment Lines .....: 2 Max Total Lines .......: 58
------ ----- ----- ------ ------ -----
Min LOC ...............: 3
Min eLOC ..............: 1 Min lLOC ..............: 1
Min Cyclomatic Comp. ..: 1 Min Interface Comp. ...: 1
Min Parameters ........: 0 Min Return Points .....: 1
Min Comment Lines .....: 0 Min Total Lines .......: 3
------------------------------------------------------------------------
~~ Project Class/Struct Metrics ~~
Class: rolodex.Contact
Attributes Publ 0 Prot 0 Private 2 Total 2
Methods Publ 7 Prot 0 Private 0 Total 7
LOC 68 eLOC 36 lLOC 21 Comment 0 Lines 75
Function Points FP(LOC) 1.3 FP(eLOC) 0.7 FP(lLOC) 0.4
Class: rolodex.Rolodex
Attributes Publ 0 Prot 0 Private 1 Total 1
Methods Publ 7 Prot 0 Private 0 Total 7
LOC 145 eLOC 83 lLOC 54 Comment 3 Lines 167
Function Points FP(LOC) 2.7 FP(eLOC) 1.6 FP(lLOC) 1.0
Total: All Classes/Structs
Attributes Publ 0 Prot 0 Private 3 Total 3
Methods Publ 14 Prot 0 Private 0 Total 14
LOC 213 eLOC 119 lLOC 75 Comment 3 Lines 242
Function Points FP(LOC) 4.0 FP(eLOC) 2.2 FP(lLOC) 1.4
------------------------------------------------------------------------
~~ Project Class/Struct Analysis ~~
Total Classes/Structs .: 2 Total Methods .........: 14
Total Public Methods ..: 14 Total Public Attributes: 0
Total Protected Methods: 0 Total Protected Attrib.: 0
Total Private Methods .: 0 Total Private Attrib. .: 3
Total Physical Lines ..: 242 Total LOC .............: 213
Total eLOC ............: 119 Total lLOC ............: 75
Total Cyclomatic Comp. : 25 Total Interface Comp. .: 27
Total Parameters ......: 6 Total Return Points ...: 21
Total Comment Lines ...: 3 Total Blank Lines .....: 28
------ ----- ----- ------ ------ -----
Avg Physical Lines ....: 121.00 Avg Methods ...........: 7.00
Avg Public Methods ....: 7.00 Avg Public Attributes .: 0.00
Avg Protected Methods .: 0.00 Avg Protected Attrib. .: 0.00
Avg Private Methods ...: 0.00 Avg Private Attributes : 1.50
Avg LOC ...............: 106.50 Avg eLOC ..............: 59.50
Avg lLOC ..............: 37.50 Avg Cyclomatic Comp. ..: 12.50
Avg Interface Comp. ...: 13.50 Avg Parameters ........: 3.00
Avg Return Points .....: 10.50 Avg Comment Lines .....: 1.50
------ ----- ----- ------ ------ -----
Max Physical Lines ....: 167 Max Methods ...........: 7
Max Public Methods ....: 7 Max Public Attributes .: 0
Max Protected Methods .: 0 Max Protected Attrib. .: 0
Max Private Methods ...: 0 Max Private Attributes : 2
Max LOC ...............: 145 Max eLOC ..............: 83
Max lLOC ..............: 54 Max Cyclomatic Comp. ..: 15
Max Interface Comp. ...: 18 Max Parameters ........: 4
Max Return Points .....: 14 Max Comment Lines .....: 3
------ ----- ----- ------ ------ -----
Min Physical Lines ....: 75 Min Methods ...........: 7
Min Public Methods ....: 7 Min Public Attributes .: 0
Min Protected Methods .: 0 Min Protected Attrib. .: 0
Min Private Methods ...: 0 Min Private Attributes : 1
Min LOC ...............: 68 Min eLOC ..............: 36
Min lLOC ..............: 21 Min Cyclomatic Comp. ..: 10
Min Interface Comp. ...: 9 Min Parameters ........: 2
Min Return Points .....: 7 Min Comment Lines .....: 0
------------------------------------------------------------------------
~~ Project Namespace/Package Metrics ~~
Namespace/Package: rolodex
Total Classses 2 Total Functions 14 Avg Func/Class 7.00
Attributes Publ 0 Prot 0 Private 3 Total 3
Methods Publ 14 Prot 0 Private 0 Total 14
LOC 213 eLOC 119 lLOC 75 Comment 3 Lines 242
Function Points FP(LOC) 4.0 FP(eLOC) 2.2 FP(lLOC) 1.4
Total: All Namespaces/Packages
Total Classses 2 Total Functions 14 Avg Func/Class 7.00
Attributes Publ 0 Prot 0 Private 3 Total 3
Methods Publ 14 Prot 0 Private 0 Total 14
LOC 213 eLOC 119 lLOC 75 Comment 3 Lines 242
Function Points FP(LOC) 4.0 FP(eLOC) 2.2 FP(lLOC) 1.4
------------------------------------------------------------------------
~~ Project Namespace/Package Analysis ~~
Total Namespace/Package: 1
Total Classes/Structs .: 2 Total Methods .........: 14
Total Public Methods ..: 14 Total Public Attributes: 0
Total Protected Methods: 0 Total Protected Attrib.: 0
Total Private Methods .: 0 Total Private Attrib. .: 3
Total Physical Lines ..: 242 Total LOC .............: 213
Total eLOC ............: 119 Total lLOC ............: 75
Total Cyclomatic Comp. : 25 Total Interface Comp. .: 27
Total Parameters ......: 6 Total Return Points ...: 21
Total Comment Lines ...: 3 Total Blank Lines .....: 28
------ ----- ----- ------ ------ -----
Avg Classes/Structs ...: 2.00 Avg Methods ...........: 14.00
Avg Public Methods ....: 14.00 Avg Public Attributes .: 0.00
Avg Protected Methods .: 0.00 Avg Protected Attrib. .: 0.00
Avg Private Methods ...: 0.00 Avg Private Attributes : 3.00
Avg LOC ...............: 213.00 Avg eLOC ..............: 119.00
Avg lLOC ..............: 75.00 Avg Cyclomatic Comp. ..: 25.00
Avg Interface Comp. ...: 27.00 Avg Parameters ........: 6.00
Avg Return Points .....: 21.00 Avg Comment Lines .....: 3.00
------ ----- ----- ------ ------ -----
Max Classes/Struct ....: 2 Max Methods ...........: 14
Max Public Methods ....: 14 Max Public Attributes .: 0
Max Protected Methods .: 0 Max Protected Attrib. .: 0
Max Private Methods ...: 0 Max Private Attributes : 3
Max LOC ...............: 213 Max eLOC ..............: 119
Max lLOC ..............: 75 Max Cyclomatic Comp. ..: 25
Max Interface Comp. ...: 27 Max Parameters ........: 6
Max Return Points .....: 21 Max Comment Lines .....: 3
------ ----- ----- ------ ------ -----
Min Classes/Structs ...: 2 Min Methods ...........: 14
Min Public Methods ....: 14 Min Public Attributes .: 0
Min Protected Methods .: 0 Min Protected Attrib. .: 0
Min Private Methods ...: 0 Min Private Attributes : 3
Min LOC ...............: 213 Min eLOC ..............: 119
Min lLOC ..............: 75 Min Cyclomatic Comp. ..: 25
Min Interface Comp. ...: 27 Min Parameters ........: 6
Min Return Points .....: 21 Min Comment Lines .....: 3
------------------------------------------------------------------------
~~ Project Quality Profile ~~
Type Count Percent Quality Notice
________________________________________________________________________
1 2 3.03 Physical line length > 80 characters
17 6 9.09 Function comment content less than 10.0%
20 2 3.03 File comment content < 10.0%
27 2 3.03 Number of function return points > 1
31 2 3.03 Class/Struct comments are < 10.0%
38 7 10.61 Exception Handling "try"- "catch" has been identified
44 3 4.55 Keyword "break" identified outside a "switch" structure
46 4 6.06 Function/Class Blank Line content less < 10.0%
49 8 12.12 Function appears to have null or blank parameters
50 2 3.03 Variable assignment to a literal number
51 14 21.21 No comment preceding a function block
52 2 3.03 No comment preceding a class block
119 12 18.18 Return is not a function
________________________________________________________________________
66 100.00 Total Quality Notices
~~ Quality Notice Density ~~
Basis: 1000 (K)
Quality Notices/K LOC = 289.5 ( 28.95%)
Quality Notices/K eLOC = 492.5 ( 49.25%)
Quality Notices/K lLOC = 750.0 ( 75.00%)
------------------------------------------------------------------------
~~ File Summary ~~
C Source Files *.c ....: 0 C/C++ Include Files *.h: 0
C++ Source Files *.c* .: 0 C++ Include Files *.h* : 0
C# Source Files *.cs ..: 0 Java Source File *.jav*: 2
Other Source Files ....: 0
Total File Count ......: 2
Shareware evaluation licenses process only files.
Paid licenses enable processing for an unlimited number of files.
________________________________________________________________________
Confidential - Acme Engineering