Resource Standard Metrics for C, C++ and Java Visual Metrics Version 5.53 License Type: Site Multi-Network License - 10000 Users Licensed To : M Squared Technologies License No. : ST1000 License Date: Fri Jun 25 06:09:01 1999 (C) 2000 M Squared Technologies Run Date: Tue Oct 10 21:46:20 2000 ________________________________________________________________________ ~~ Function Metrics ~~ ~~ Class Metrics ~~ ~~ Quality Analysis ~~ File: Contact.java Date: Tue Jul 13 20:03:14 1999 File Size: 1564 Bytes ________________________________________________________________________ Package Begin: rolodex -------------------------- Class Begin Line: 8 ------------------------- Class: rolodex.Contact ------------------------ Function Begin Line: 17 ----------------------- Function: rolodex.Contact.if NOTICE #17: Function comments, 0.0% are less than 10%. Function: rolodex.Contact.if LOC 3 eLOC 1 lLOC 1 Comment 0 Lines 3 ------------------------- Function End Line: 19 ------------------------ ------------------------ Function Begin Line: 27 ----------------------- Function: rolodex.Contact.Contact NOTICE #17: Function comments, 0.0% are less than 10%. Function: rolodex.Contact.Contact LOC 3 eLOC 1 lLOC 1 Comment 0 Lines 3 ------------------------- Function End Line: 29 ------------------------ ------------------------ Function Begin Line: 32 ----------------------- Function: rolodex.Contact.Contact NOTICE #17: Function comments, 0.0% are less than 10%. Function: rolodex.Contact.Contact LOC 3 eLOC 1 lLOC 1 Comment 0 Lines 3 ------------------------- Function End Line: 34 ------------------------ ------------------------ Function Begin Line: 37 ----------------------- Function: rolodex.Contact.setName 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%. Function: rolodex.Contact.setName LOC 26 eLOC 14 lLOC 9 Comment 0 Lines 26 ------------------------- Function End Line: 62 ------------------------ ------------------------ Function Begin Line: 65 ----------------------- Function: rolodex.Contact.getName NOTICE #17: Function comments, 0.0% are less than 10%. Function: rolodex.Contact.getName LOC 3 eLOC 1 lLOC 1 Comment 0 Lines 3 ------------------------- Function End Line: 67 ------------------------ ------------------------ Function Begin Line: 70 ----------------------- Function: rolodex.Contact.show NOTICE #17: Function comments, 0.0% are less than 10%. Function: rolodex.Contact.show LOC 3 eLOC 1 lLOC 1 Comment 0 Lines 3 ------------------------- Function End Line: 72 ------------------------ ------------------------ Function Begin Line: 75 ----------------------- Function: rolodex.Contact.toString NOTICE #17: Function comments, 0.0% are less than 10%. Function: rolodex.Contact.toString LOC 3 eLOC 1 lLOC 1 Comment 0 Lines 3 ------------------------- Function End Line: 77 ------------------------ ------------------------ Function Begin Line: 80 ----------------------- Function: rolodex.Contact.main NOTICE #17: Function comments, 0.0% are less than 10%. Function: rolodex.Contact.main LOC 4 eLOC 2 lLOC 2 Comment 0 Lines 4 ------------------------- Function End Line: 83 ------------------------ NOTICE #31: Class comments, 0.0% are less than 10%. Class: rolodex.Contact Attributes Publ 0 Prot 0 Private 3 Total 3 Methods Publ 7 Prot 0 Private 1 Total 8 LOC 69 eLOC 37 lLOC 21 Comment 0 Lines 77 -------------------------- 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 ------------------------------------------------------------------------ ~~ File Functional Summary ~~ File Function Count ...: 8 Total LOC Lines LOC ...: 48 Total eLOC Lines ......: 22 Total lLOC Lines ......: 17 Total Function Params .: 3 Total Function Return .: 8 Total Cyclo Complexity : 11 Total Function Complex.: 22 ------ ----- ----- ------ ------ ----- Max Function LOC ......: 26 Average Function LOC ..: 6.00 Max Function eLOC .....: 14 Average Function eLOC .: 2.75 Max Function lLOC .....: 9 Average Function lLOC .: 2.13 ________________________________________________________________________ End of File: Contact.java File: Rolodex.java Date: Tue Jul 13 20:03:14 1999 File Size: 3807 Bytes ________________________________________________________________________ Package Begin: rolodex ------------------------- Class Begin Line: 10 ------------------------- Class: rolodex.Rolodex ------------------------ Function Begin Line: 16 ----------------------- Function: rolodex.Rolodex.Rolodex NOTICE #17: Function comments, 0.0% are less than 10%. Function: rolodex.Rolodex.Rolodex LOC 3 eLOC 1 lLOC 1 Comment 0 Lines 3 ------------------------- Function End Line: 18 ------------------------ ------------------------ Function Begin Line: 21 ----------------------- Function: rolodex.Rolodex.open NOTICE #38: Line 33, 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 39, Line character length = 81. This width exceeds the standard terminal width of 80 characters. NOTICE #38: Line 50, 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 #38: Line 61, 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 #17: Function comments, 3.8% are less than 10%. 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 End Line: 78 ------------------------ ------------------------ Function Begin Line: 81 ----------------------- Function: rolodex.Rolodex.close NOTICE #38: Line 88, 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 #38: Line 99, 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 #38: Line 109, 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 #17: Function comments, 2.8% are less than 10%. 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 End Line: 120 ------------------------ ----------------------- Function Begin Line: 123 ----------------------- Function: rolodex.Rolodex.add NOTICE #17: Function comments, 0.0% are less than 10%. Function: rolodex.Rolodex.add LOC 3 eLOC 1 lLOC 1 Comment 0 Lines 3 ------------------------ Function End Line: 125 ------------------------ ----------------------- Function Begin Line: 128 ----------------------- Function: rolodex.Rolodex.addContacts NOTICE #44: Line 135, 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%. Function: rolodex.Rolodex.addContacts LOC 17 eLOC 9 lLOC 6 Comment 0 Lines 17 ------------------------ Function End Line: 144 ------------------------ ----------------------- Function Begin Line: 147 ----------------------- Function: rolodex.Rolodex.show NOTICE #17: Function comments, 0.0% are less than 10%. Function: rolodex.Rolodex.show LOC 6 eLOC 2 lLOC 2 Comment 0 Lines 6 ------------------------ Function End Line: 152 ------------------------ ----------------------- Function Begin Line: 155 ----------------------- Function: rolodex.Rolodex.main NOTICE #17: Function comments, 0.0% are less than 10%. Function: rolodex.Rolodex.main LOC 20 eLOC 12 lLOC 9 Comment 0 Lines 23 ------------------------ Function End Line: 177 ------------------------ NOTICE #31: Class comments, 2.0% are less than 10%. Class: rolodex.Rolodex Attributes Publ 0 Prot 0 Private 1 Total 1 Methods Publ 7 Prot 0 Private 0 Total 7 LOC 146 eLOC 84 lLOC 54 Comment 3 Lines 169 -------------------------- Class End Line: 178 ------------------------- 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 180 ------------------------------------------------------------------------ ~~ File Functional Summary ~~ File Function Count ...: 7 Total LOC Lines LOC ...: 135 Total eLOC Lines ......: 75 Total lLOC Lines ......: 53 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 264 ------------------------------------------------------------------------ ~~ Project Functional Metrics ~~ Sorted By Name Function: rolodex.Contact.Contact LOC 3 eLOC 1 lLOC 1 Comment 0 Lines 3 Function: rolodex.Contact.Contact LOC 3 eLOC 1 lLOC 1 Comment 0 Lines 3 Function: rolodex.Contact.getName LOC 3 eLOC 1 lLOC 1 Comment 0 Lines 3 Function: rolodex.Contact.if LOC 3 eLOC 1 lLOC 1 Comment 0 Lines 3 Function: rolodex.Contact.main LOC 4 eLOC 2 lLOC 2 Comment 0 Lines 4 Function: rolodex.Contact.setName LOC 26 eLOC 14 lLOC 9 Comment 0 Lines 26 Function: rolodex.Contact.show LOC 3 eLOC 1 lLOC 1 Comment 0 Lines 3 Function: rolodex.Contact.toString LOC 3 eLOC 1 lLOC 1 Comment 0 Lines 3 Function: rolodex.Rolodex.Rolodex LOC 3 eLOC 1 lLOC 1 Comment 0 Lines 3 Function: rolodex.Rolodex.add LOC 3 eLOC 1 lLOC 1 Comment 0 Lines 3 Function: rolodex.Rolodex.addContacts LOC 17 eLOC 9 lLOC 6 Comment 0 Lines 17 Function: rolodex.Rolodex.close LOC 35 eLOC 21 lLOC 15 Comment 1 Lines 40 Function: rolodex.Rolodex.main LOC 20 eLOC 12 lLOC 9 Comment 0 Lines 23 Function: rolodex.Rolodex.open LOC 51 eLOC 29 lLOC 19 Comment 2 Lines 58 Function: rolodex.Rolodex.show LOC 6 eLOC 2 lLOC 2 Comment 0 Lines 6 Total: Functions LOC 183 eLOC 97 lLOC 70 InCmp 29 CycloCmp 26 ------------------------------------------------------------------------ ~~ Project Functional Analysis ~~ Total Functions .......: 15 Total Physical Lines ..: 198 Total LOC .............: 183 Total eLOC ............: 97 Total lLOC ............: 70 Total Cyclomatic Comp. : 26 Total Interface Comp. .: 29 Total Parameters ......: 7 Total Return Points ...: 22 Total Comment Lines ...: 3 Total Blank Lines .....: 12 ------ ----- ----- ------ ------ ----- Avg Physical Lines ....: 13.20 Avg LOC ...............: 12.20 Avg eLOC ..............: 6.47 Avg lLOC ..............: 4.67 Avg Cyclomatic Comp. ..: 1.73 Avg Interface Comp. ...: 1.93 Avg Parameters ........: 0.47 Avg Return Points .....: 1.47 Avg Comment Lines .....: 0.20 ------ ----- ----- ------ ------ ----- 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 Metrics ~~ Sorted By Name Class: rolodex.Contact Attributes Publ 0 Prot 0 Private 3 Total 3 Methods Publ 7 Prot 0 Private 1 Total 8 LOC 69 eLOC 37 lLOC 21 Comment 0 Lines 77 Class: rolodex.Rolodex Attributes Publ 0 Prot 0 Private 1 Total 1 Methods Publ 7 Prot 0 Private 0 Total 7 LOC 146 eLOC 84 lLOC 54 Comment 3 Lines 169 Total: All Classes Attributes Publ 0 Prot 0 Private 4 Total 4 Methods Publ 14 Prot 0 Private 1 Total 15 LOC 215 eLOC 121 lLOC 75 Comment 3 Lines 246 ------------------------------------------------------------------------ ~~ Project Class Analysis ~~ Total Classes .........: 2 Total Methods .........: 15 Total Public Methods ..: 14 Total Public Attributes: 0 Total Protected Methods: 0 Total Protected Attrib.: 0 Total Private Methods .: 1 Total Private Attrib. .: 4 Total Physical Lines ..: 246 Total LOC .............: 215 Total eLOC ............: 121 Total lLOC ............: 75 Total Cyclomatic Comp. : 26 Total Interface Comp. .: 29 Total Parameters ......: 7 Total Return Points ...: 22 Total Comment Lines ...: 3 Total Blank Lines .....: 28 ------ ----- ----- ------ ------ ----- Avg Physical Lines ....: 123.00 Avg Methods ...........: 7.50 Avg Public Methods ....: 7.00 Avg Public Attributes .: 0.00 Avg Protected Methods .: 0.00 Avg Protected Arrtib. .: 0.00 Avg Private Methods ...: 0.50 Avg Private Attributes : 2.00 Avg LOC ...............: 107.50 Avg eLOC ..............: 60.50 Avg lLOC ..............: 37.50 Avg Cyclomatic Comp. ..: 13.00 Avg Interface Comp. ...: 14.50 Avg Parameters ........: 3.50 Avg Return Points .....: 11.00 Avg Comment Lines .....: 1.50 ------ ----- ----- ------ ------ ----- Max Physical Lines ....: 169 Max Methods ...........: 8 Max Public Methods ....: 7 Max Public Attributes .: 0 Max Protected Methods .: 0 Max Protected Arrtib. .: 0 Max Private Methods ...: 1 Max Private Attributes : 3 Max LOC ...............: 146 Max eLOC ..............: 84 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 ....: 77 Min Methods ...........: 7 Min Public Methods ....: 7 Min Public Attributes .: 0 Min Protected Methods .: 0 Min Protected Arrtib. .: 0 Min Private Methods ...: 0 Min Private Attributes : 1 Min LOC ...............: 69 Min eLOC ..............: 37 Min lLOC ..............: 21 Min Cyclomatic Comp. ..: 11 Min Interface Comp. ...: 11 Min Parameters ........: 3 Min Return Points .....: 8 Min Comment Lines .....: 0 ------------------------------------------------------------------------ ~~ Project Namespace/Package Metrics ~~ Sorted By Name Namespace/Package: rolodex Total Classses 2 Total Functions 15 Avg Func/Class 7.50 Attributes Publ 0 Prot 0 Private 4 Total 4 Methods Publ 14 Prot 0 Private 1 Total 15 LOC 215 eLOC 121 lLOC 75 Comment 3 Lines 246 Total: All Namespaces/Packages Total Classses 2 Total Functions 15 Avg Func/Class 7.50 Attributes Publ 0 Prot 0 Private 4 Total 4 Methods Publ 14 Prot 0 Private 1 Total 15 LOC 215 eLOC 121 lLOC 75 Comment 3 Lines 246 ------------------------------------------------------------------------ ~~ Project Namespace/Package Analysis ~~ Total Namespace/Package: 1 Total Classes .........: 2 Total Methods .........: 15 Total Public Methods ..: 14 Total Public Attributes: 0 Total Protected Methods: 0 Total Protected Attrib.: 0 Total Private Methods .: 1 Total Private Attrib. .: 4 Total Physical Lines ..: 246 Total LOC .............: 215 Total eLOC ............: 121 Total lLOC ............: 75 Total Cyclomatic Comp. : 26 Total Interface Comp. .: 29 Total Parameters ......: 7 Total Return Points ...: 22 Total Comment Lines ...: 3 Total Blank Lines .....: 28 ------ ----- ----- ------ ------ ----- Avg Classes ...........: 2.00 Avg Methods ...........: 15.00 Avg Public Methods ....: 14.00 Avg Public Attributes .: 0.00 Avg Protected Methods .: 0.00 Avg Protected Arrtib. .: 0.00 Avg Private Methods ...: 1.00 Avg Private Attributes : 4.00 Avg LOC ...............: 215.00 Avg eLOC ..............: 121.00 Avg lLOC ..............: 75.00 Avg Cyclomatic Comp. ..: 26.00 Avg Interface Comp. ...: 29.00 Avg Parameters ........: 7.00 Avg Return Points .....: 22.00 Avg Comment Lines .....: 3.00 ------ ----- ----- ------ ------ ----- Max Classes ...........: 2 Max Methods ...........: 15 Max Public Methods ....: 14 Max Public Attributes .: 0 Max Protected Methods .: 0 Max Protected Arrtib. .: 0 Max Private Methods ...: 1 Max Private Attributes : 4 Max LOC ...............: 215 Max eLOC ..............: 121 Max lLOC ..............: 75 Max Cyclomatic Comp. ..: 26 Max Interface Comp. ...: 29 Max Parameters ........: 7 Max Return Points .....: 22 Max Comment Lines .....: 3 ------ ----- ----- ------ ------ ----- Min Classes ...........: 2 Min Methods ...........: 15 Min Public Methods ....: 14 Min Public Attributes .: 0 Min Protected Methods .: 0 Min Protected Arrtib. .: 0 Min Private Methods ...: 1 Min Private Attributes : 4 Min LOC ...............: 215 Min eLOC ..............: 121 Min lLOC ..............: 75 Min Cyclomatic Comp. ..: 26 Min Interface Comp. ...: 29 Min Parameters ........: 7 Min Return Points .....: 22 Min Comment Lines .....: 3 ------------------------------------------------------------------------ ~~ Project Quality Profile ~~ Type Count Percent Quality Notice ________________________________________________________________________ 1 2 6.06 Physical line length exceeds 80 characters 17 15 45.45 Function comment content less than 10.0% 20 2 6.06 File comment content less 10.0% 27 2 6.06 Number of function return points exceed 1 31 2 6.06 Class comments are less than 10.0% 38 7 21.21 Exception Handling 'try'- 'catch' has been identified 44 3 9.09 Keyword 'break' identified outside a 'switch' structure ________________________________________________________________________ 33 100.00 Total Quality Notices ~~ Quality Notice Density ~~ Basis: 1000 (K) Quality Notices/K LOC = 144.7 ( 14.47%) Quality Notices/K eLOC = 246.3 ( 24.63%) Quality Notices/K lLOC = 375.0 ( 37.50%) ------------------------------------------------------------------------ ~~ File Summary ~~ C Source Files *.c ....: 0 C/C++ Include Files *.h: 0 C++ Source Files *.c* .: 0 C++ Include Files *.h* : 0 Other Source Files ....: 0 Java Source File *.jav*: 2 Total File Count ......: 2 ________________________________________________________________________