All Metrics
| Friendly Name | API Name | Description | |||
|---|---|---|---|---|---|
| Average Number of Blank Lines (Include Inactive) | AltAvgLineBlank | Average number of blank lines for all nested functions or methods, including inactive regions. | |||
| Average Number of Lines of Code (Include Inactive) | AltAvgLineCode | Average number of lines containing source code for all nested functions or methods, including inactive regions. | |||
| Average Number of Lines with Comments (Include Inactive) | AltAvgLineComment | Average number of lines containing comment for all nested functions or methods, including inactive regions. | |||
| Blank Lines of Code (Include Inactive) | AltCountLineBlank | Number of blank lines, including inactive regions. | |||
| Lines of Code (Include Inactive) | AltCountLineCode | Number of lines containing source code, including inactive regions. | |||
| Lines with Comments (Include Inactive) | AltCountLineComment | Number of lines containing comment, including inactive regions. | |||
| Average Cyclomatic Complexity | AvgCyclomatic | Average cyclomatic complexity for all nested functions or methods. | |||
| Average Modified Cyclomatic Complexity | AvgCyclomaticModified | Average modified cyclomatic complexity for all nested functions or methods. | |||
| Average Strict Cyclomatic Complexity | AvgCyclomaticStrict | Average strict cyclomatic complexity for all nested functions or methods. | |||
| Average Essential Cyclomatic Complexity | AvgEssential | Average Essential complexity for all nested functions or methods. | |||
| Average Number of Lines | AvgLine | Average number of lines for all nested functions or methods. | |||
| Average Number of Blank Lines | AvgLineBlank | Average number of blank for all nested functions or methods. | |||
| Average Number of Lines of Code | AvgLineCode | Average number of lines containing source code for all nested functions or methods. | |||
| Average Number of Lines with Comments | AvgLineComment | Average number of lines containing comment for all nested functions or methods. | |||
| Base Classes | CountClassBase | Number of immediate base classes. [aka IFANIN] | |||
| Coupling Between Objects | CountClassCoupled | Number of other classes coupled to. [aka CBO (coupling between object classes)] | |||
| Number of Children | CountClassDerived | Number of immediate subclasses. [aka NOC (number of children)] | |||
| Classes | CountDeclClass | Number of classes. | |||
| Class Methods | CountDeclClassMethod | Number of class methods. | |||
| Class Variables | CountDeclClassVariable | Number of class variables. | |||
| Function | CountDeclFunction | Number of functions. | |||
| Instance Methods | CountDeclInstanceMethod | Number of instance methods. [aka NIM] | |||
| Instance Variables | CountDeclInstanceVariable | Number of instance variables. [aka NIV] | |||
| Private Instance Variables | CountDeclInstanceVariablePrivate | Number of private instance variables. | |||
| Protected Instance Variables | CountDeclInstanceVariableProtected | Number of protected instance variables. | |||
| Public Instance Variables | CountDeclInstanceVariablePublic | Number of public instance variables. | |||
| Local Methods | CountDeclMethod | Number of local methods. | |||
| Methods | CountDeclMethodAll | Number of methods, including inherited ones. [aka RFC (response for class)] | |||
| Local Const Methods | CountDeclMethodConst | Number of local const methods. | |||
| Local Default Visibility Methods | CountDeclMethodDefault | Number of local default methods. | |||
| Friend Methods | CountDeclMethodFriend | Number of local friend methods. [aka NFM] | |||
| Private Methods | CountDeclMethodPrivate | Number of local private methods. [aka NPM] | |||
| Protected Methods | CountDeclMethodProtected | Number of local protected methods. | |||
| Public Methods | CountDeclMethodPublic | Number of local public methods. [aka NPRM] | |||
| Local strict private methods | CountDeclMethodStrictPrivate | Number of local strict private methods. | |||
| Local strict published methods | CountDeclMethodStrictPublished | Number of local strict published methods. | |||
| Modules | CountDeclModule | Number of modules. | |||
| Program Units | CountDeclProgUnit | Number of non-nested modules, block data units, and subprograms. | |||
| Subprograms | CountDeclSubprogram | Number of subprograms. | |||
| Inputs | CountInput | Number of subprograms calledby plus global variables read. [aka FANIN] | |||
| Physical Lines | CountLine | Number of all lines. [aka NL] | |||
| Blank Lines of Code | CountLineBlank | Number of blank lines. [aka BLOC] | |||
| Blank html lines | CountLineBlank_Html | Number of blank html lines. | |||
| Blank javascript lines | CountLineBlank_Javascript | Number of blank javascript lines. | |||
| Blank php lines | CountLineBlank_Php | Number of blank php lines. | |||
| Source Lines of Code | CountLineCode | Number of lines containing source code. [aka LOC] | |||
| Declarative Lines of Code | CountLineCodeDecl | Number of lines containing declarative source code. | |||
| Executable Lines of Code | CountLineCodeExe | Number of lines containing executable source code. | |||
| Javascript source code lines | CountLineCode_Javascript | Number of javascript lines containing source code. | |||
| PHP Source Code Lines | CountLineCode_Php | Number of php lines containing source code. | |||
| Lines with Comments | CountLineComment | Number of lines containing comment. [aka CLOC] | |||
| HTML Comment Lines | CountLineComment_Html | Number of html lines containing comment. | |||
| Javascript Comment Lines | CountLineComment_Javascript | Number of javascript lines containing comment. | |||
| PHP Comment Lines | CountLineComment_Php | Number of php lines containing comment. | |||
| Inactive Lines | CountLineInactive | Number of inactive lines. | |||
| Preprocessor Lines | CountLinePreprocessor | Number of preprocessor lines. | |||
| HTMLLines | CountLine_Html | Number of all html lines. | |||
| Javascript Lines | CountLine_Javascript | Number of all javascript lines. | |||
| PHP Lines | CountLine_Php | Number of all php lines. | |||
| Outputs | CountOutput | Number of subprograms called plus global variables set. [aka FANOUT] | |||
| Coupled Packages | CountPackageCoupled | Number of other packages coupled to. | |||
| Paths | CountPath | Number of possible paths, not counting abnormal exits or gotos. [aka NPATH] | |||
| Semicolons | CountSemicolon | Number of semicolons. | |||
| Statements | CountStmt | Number of statements. | |||
| Declarative Statements | CountStmtDecl | Number of declarative statements. | |||
| Javascript Declarative Statements | CountStmtDecl_Javascript | Number of javascript declarative statements. | |||
| PHP Declarative Statements | CountStmtDecl_Php | Number of php declarative statements. | |||
| Empty Statements | CountStmtEmpty | Number of empty statements. | |||
| Executable Statements | CountStmtExe | Number of executable statements. | |||
| Javascript Executable Statements | CountStmtExe_Javascript | Number of javascript executable statements. | |||
| PHP Executable Statements | CountStmtExe_Php | Number of php executable statements. | |||
| Cyclomatic Complexity | Cyclomatic | Cyclomatic complexity. | |||
| Modified Cyclomatic Complexity | CyclomaticModified | Modified cyclomatic complexity. | |||
| Strict Cyclomatic Complexity | CyclomaticStrict | Strict cyclomatic complexity. | |||
| Essential Complexity | Essential | Essential complexity. [aka Ev(G)] | |||
| Knots | Knots | Measure of overlapping jumps. | |||
| Max Cyclomatic Complexity | MaxCyclomatic | Maximum cyclomatic complexity of all nested functions or methods. | |||
| Max Modified Cyclomatic Complexity | MaxCyclomaticModified | Maximum modified cyclomatic complexity of nested functions or methods. | |||
| Max Strict Cyclomatic Complexity | MaxCyclomaticStrict | Maximum strict cyclomatic complexity of nested functions or methods. | |||
| Max Knots | MaxEssentialKnots | Maximum Knots after structured programming constructs have been removed. | |||
| Depth of Inheritance Tree | MaxInheritanceTree | Maximum depth of class in inheritance tree. [aka DIT] | |||
| Nesting | MaxNesting | Maximum nesting level of control constructs. | |||
| Minimum Knots | MinEssentialKnots | Minimum Knots after structured programming constructs have been removed. | |||
| Lack of Cohesion in Methods | PercentLackOfCohesion | 100% minus the average cohesion for package entities. [aka LCOM, LOCM] | |||
| Comment to Code Ratio | RatioCommentToCode | Ratio of comment lines to code lines. | |||
| Sum Cyclomatic Complexity | SumCyclomatic | Sum of cyclomatic complexity of all nested functions or methods. [aka WMC] | |||
| Sum Modified Cyclomatic Complexity | SumCyclomaticModified | Sum of modified cyclomatic complexity of all nested functions or methods. | |||
| Sum Strict Cyclomatic Complexity | SumCyclomaticStrict | Sum of strict cyclomatic complexity of all nested functions or methods. | |||
| Sum Essential Complexity | SumEssential | Sum of essential complexity of all nested functions or methods. | |||
Average Number of Blank Lines (Include Inactive)
API Name: AltAvgLineBlank
Description: Average number of blank lines for all nested functions or methods, including inactive regions.
Metric available for:
Back to Top
Description: Average number of blank lines for all nested functions or methods, including inactive regions.
Metric available for:
C/C++: Project,File,Class,Struct,Union
Cobol: File
Cobol: File
Click Here To Download Understand!
Back to Top
Average Number of Lines of Code (Include Inactive)
API Name: AltAvgLineCode
Description: Average number of lines containing source code for all nested functions or methods, including inactive regions.
Metric available for:
Back to Top
Description: Average number of lines containing source code for all nested functions or methods, including inactive regions.
Metric available for:
C/C++: Project,File,Class,Struct,Union
Cobol: File
Cobol: File
Click Here To Download Understand!
Back to Top
Average Number of Lines with Comments (Include Inactive)
API Name: AltAvgLineComment
Description: Average number of lines containing comment for all nested functions or methods, including inactive regions.
Metric available for:
Back to Top
Description: Average number of lines containing comment for all nested functions or methods, including inactive regions.
Metric available for:
C/C++: Project,File,Class,Struct,Union
Cobol: File
Cobol: File
Click Here To Download Understand!
Back to Top
Blank Lines of Code (Include Inactive)
API Name: AltCountLineBlank
Description: Number of blank lines, including in inactive regions.
Metric available for:
Back to Top
Description: Number of blank lines, including in inactive regions.
Metric available for:
C/C++: Project,File,Class,Struct,Union,Function
Cobol: File
Cobol: File
Click Here To Download Understand!
Back to Top
Lines of Code (Include Inactive)
API Name: AltCountLineCode
Description: Number of lines containing source code, including inactive regions.
Metric available for:
Back to Top
Description: Number of lines containing source code, including inactive regions.
Metric available for:
C/C++: Project,File,Class,Struct,Union,Function
Cobol: File
Cobol: File
Click Here To Download Understand!
Back to Top
Lines with Comments (Include Inactive)
API Name: AltCountLineComment
Description: Number of lines containing comments, including comments within inactive regions.
Metric available for:
Back to Top
Description: Number of lines containing comments, including comments within inactive regions.
Metric available for:
C/C++: Project,File,Class,Struct,Union,Function
Cobol: File
Cobol: File
Click Here To Download Understand!
Back to Top
Average Cyclomatic Complexity
API Name: AvgCyclomatic
Description: Average cyclomatic complexity for all nested functions or methods.
Metric available for:
Back to Top
Description: Average cyclomatic complexity for all nested functions or methods.
Metric available for:
C/C++: Project,File,Class,Struct,Union
C#: Project,File,Class,Struct
Ada: Project,File,Package
Fortran: Project,File
Java: Project,File,Class,Interface
Jovial: Project,File
Pascal: Project,File,Class,Interface,Compunit
PL/M: Project,File
VHDL: Project,File,Architecture
Cobol: Project,File,Program
Web: Project,File,PHP Class,PHP Interface
C#: Project,File,Class,Struct
Ada: Project,File,Package
Fortran: Project,File
Java: Project,File,Class,Interface
Jovial: Project,File
Pascal: Project,File,Class,Interface,Compunit
PL/M: Project,File
VHDL: Project,File,Architecture
Cobol: Project,File,Program
Web: Project,File,PHP Class,PHP Interface
Click Here To Download Understand!
Back to Top
Average Modified Cyclomatic Complexity
API Name: AvgCyclomaticModified
Description: Average modified cyclomatic complexity for all nested functions or methods.
Metric available for:
Back to Top
Description: Average modified cyclomatic complexity for all nested functions or methods.
Metric available for:
C/C++: Project,File,Class,Struct,Union
C#: Project,File,Class,Struct
Ada: Project,File,Package
Fortran: Project,File
Java: Project,File,Class,Interface
Jovial: Project,File
Pascal: Project,File,Class,Interface,Compunit
PL/M: Project,File
VHDL: Project,File,Architecture
Cobol: Project,File,Program
Web: Project,File,PHP Class,PHP Interface
C#: Project,File,Class,Struct
Ada: Project,File,Package
Fortran: Project,File
Java: Project,File,Class,Interface
Jovial: Project,File
Pascal: Project,File,Class,Interface,Compunit
PL/M: Project,File
VHDL: Project,File,Architecture
Cobol: Project,File,Program
Web: Project,File,PHP Class,PHP Interface
Click Here To Download Understand!
Back to Top
Average Strict Cyclomatic Complexity
API Name: AvgCyclomaticStrict
Description: Average strict cyclomatic complexity for all nested functions or methods.
Metric available for:
Back to Top
Description: Average strict cyclomatic complexity for all nested functions or methods.
Metric available for:
C/C++: Project,File,Class,Struct,Union
C#: Project,File,Class,Struct
Ada: Project,File,Package
Java: Project,File,Class,Interface
Pascal: Project,File,Class,Interface,Compunit
Cobol: File,Program
Web: Project,File,PHP Class,PHP Interface
C#: Project,File,Class,Struct
Ada: Project,File,Package
Java: Project,File,Class,Interface
Pascal: Project,File,Class,Interface,Compunit
Cobol: File,Program
Web: Project,File,PHP Class,PHP Interface
Click Here To Download Understand!
Back to Top
Average Essential Cyclomatic Complexity
API Name: AvgEssential
Description: Average essential cyclomatic complexity for all nested functions or methods.
Metric available for:
Back to Top
Description: Average essential cyclomatic complexity for all nested functions or methods.
Metric available for:
C/C++: Project,File,Class,Struct,Union
C#: Project,File,Class,Struct
Ada: Project,File,Package
Fortran: Project,File
Java: Project,File,Class,Interface
Cobol: File
Web: Project,File,PHP Class,PHP Interface
C#: Project,File,Class,Struct
Ada: Project,File,Package
Fortran: Project,File
Java: Project,File,Class,Interface
Cobol: File
Web: Project,File,PHP Class,PHP Interface
Click Here To Download Understand!
Back to Top
Average Number of Lines
API Name: AvgLine
Description: Average number of lines for all nested functions or methods.
Metric available for:
Back to Top
Description: Average number of lines for all nested functions or methods.
Metric available for:
C/C++: Project,File,Class,Struct,Union
C#: Project,File,Class,Struct
Ada: Project,File,Package
Fortran: Project,File
Java: Project,Class,Interface
Jovial: Project,File
Pascal: Project,File,Class,Interface
PL/M: Project,File
Cobol: File
Web: Project,File,PHP Class,PHP Interface
C#: Project,File,Class,Struct
Ada: Project,File,Package
Fortran: Project,File
Java: Project,Class,Interface
Jovial: Project,File
Pascal: Project,File,Class,Interface
PL/M: Project,File
Cobol: File
Web: Project,File,PHP Class,PHP Interface
Click Here To Download Understand!
Back to Top
Average Number of Blank Lines
API Name: AvgLineBlank
Description: Average number of blank for all nested functions or methods.
Metric available for:
Back to Top
Description: Average number of blank for all nested functions or methods.
Metric available for:
C/C++: Project,File,Class,Struct,Union
C#: Project,File,Class,Struct
Ada: Project,File,Package
Fortran: Project,File
Java: Project,Class,Interface
Jovial: Project,File
Pascal: Project,File,Class,Interface
PL/M: Project,File
Cobol: File
Web: Project,File,PHP Class,PHP Interface
C#: Project,File,Class,Struct
Ada: Project,File,Package
Fortran: Project,File
Java: Project,Class,Interface
Jovial: Project,File
Pascal: Project,File,Class,Interface
PL/M: Project,File
Cobol: File
Web: Project,File,PHP Class,PHP Interface
Click Here To Download Understand!
Back to Top
Average Number of Lines of Code
API Name: AvgLineCode
Research: Lorenz & Kidd - Average Method Size (AMS)
Description: Average number of lines containing source code for all nested functions or methods.
Metric available for:
Back to Top
Research: Lorenz & Kidd - Average Method Size (AMS)
Description: Average number of lines containing source code for all nested functions or methods.
Metric available for:
C/C++: Project,File,Class,Struct,Union
C#: Project,File,Class,Struct
Ada: Project,File,Package
Fortran: Project,File
Java: Project,Class,Interface
Jovial: Project,File
Pascal: Project,File,Class,Interface
PL/M: Project,File
Cobol: File
Web: Project,File,PHP Class,PHP Interface
C#: Project,File,Class,Struct
Ada: Project,File,Package
Fortran: Project,File
Java: Project,Class,Interface
Jovial: Project,File
Pascal: Project,File,Class,Interface
PL/M: Project,File
Cobol: File
Web: Project,File,PHP Class,PHP Interface
Click Here To Download Understand!
Back to Top
Average Number of Lines with Comments
API Name: AvgLineComment
Description: Average number of lines containing comment for all nested functions or methods.
Metric available for:
Back to Top
Description: Average number of lines containing comment for all nested functions or methods.
Metric available for:
C/C++: Project,File,Class,Struct,Union
C#: Project,File,Class,Struct
Ada: Project,File,Package
Fortran: Project,File
Java: Project,Class,Interface
Jovial: Project,File
Pascal: Project,File,Class,Interface
PL/M: Project,File
Cobol: File
Web: Project,File,PHP Class,PHP Interface
C#: Project,File,Class,Struct
Ada: Project,File,Package
Fortran: Project,File
Java: Project,Class,Interface
Jovial: Project,File
Pascal: Project,File,Class,Interface
PL/M: Project,File
Cobol: File
Web: Project,File,PHP Class,PHP Interface
Click Here To Download Understand!
Back to Top
Base Classes
API Name: CountClassBase
Research: IFANIN
Description: Number of immediate base classes.
Metric available for:
Back to Top
Research: IFANIN
Description: Number of immediate base classes.
Metric available for:
C/C++: Class,Struct,Union
C#: Class,Struct
Java: Class,Interface
Pascal: Class,Interface
C#: Class,Struct
Java: Class,Interface
Pascal: Class,Interface
Click Here To Download Understand!
Back to Top
Coupling Between Objects
API Name: CountClassCoupled
Research: Chidamber & Kemerer - Coupling Between Objects (CBO)
Description: The Coupling Between Object Classes (CBO) measure for a class is a count of the number of other classes to which it is coupled. Class A is coupled to class B if class A uses a type, data, or member from class B. This metric is also referred to as Efferent Coupling (Ce). Any number of couplings to a given class counts as 1 towards the metric total
Chidamber & Kemerer suggest that:
1) Excessive coupling between object classes is detrimental to modular design and prevents reuse.
2) Inter-object class couples should be kept to a minimum.
3) The higher the inter-object class coupling, the more rigorous testing needs to be.
Metric available for:
Back to Top
Research: Chidamber & Kemerer - Coupling Between Objects (CBO)
Description: The Coupling Between Object Classes (CBO) measure for a class is a count of the number of other classes to which it is coupled. Class A is coupled to class B if class A uses a type, data, or member from class B. This metric is also referred to as Efferent Coupling (Ce). Any number of couplings to a given class counts as 1 towards the metric total
Chidamber & Kemerer suggest that:
1) Excessive coupling between object classes is detrimental to modular design and prevents reuse.
2) Inter-object class couples should be kept to a minimum.
3) The higher the inter-object class coupling, the more rigorous testing needs to be.
Metric available for:
C/C++: Class,Struct,Union
C#: Class,Struct
Java: Class,Interface
Pascal: Class,Interface
C#: Class,Struct
Java: Class,Interface
Pascal: Class,Interface
Click Here To Download Understand!
Back to Top
Number of Children
API Name: CountClassDerived
Research: Chidamber & Kemerer - Number of Children (NOC)
Description: Number of immediate subclasses. (i.e. the number of classes one level down the inheritance tree from this class).
Metric available for:
Back to Top
Research: Chidamber & Kemerer - Number of Children (NOC)
Description: Number of immediate subclasses. (i.e. the number of classes one level down the inheritance tree from this class).
Metric available for:
C/C++: Class,Struct,Union
C#: Class,Struct
Java: Class,Interface
Pascal: Class,Interface
C#: Class,Struct
Java: Class,Interface
Pascal: Class,Interface
Click Here To Download Understand!
Back to Top
Classes
API Name: CountDeclClass
Description: Number of classes.
Metric available for:
Back to Top
Description: Number of classes.
Metric available for:
C/C++: Project,File
C#: Project,File
Java: Project,File
Pascal: Project,File
Cobol: File
Web: Project,File
C#: Project,File
Java: Project,File
Pascal: Project,File
Cobol: File
Web: Project,File
Click Here To Download Understand!
Back to Top
Class Methods
API Name: CountDeclClassMethod
Description: Number of class methods.
Metric available for:
Back to Top
Description: Number of class methods.
Metric available for:
C/C++: Project,Class,Struct,Union
C#: Project,Class,Struct
Java: Project,Class,Interface
Pascal: Project,Class,Interface
C#: Project,Class,Struct
Java: Project,Class,Interface
Pascal: Project,Class,Interface
Click Here To Download Understand!
Back to Top
Class Variables
API Name: CountDeclClassVariable
Research: Lorenz & Kidd - Number of Variables (NV)
Description: Number of class variables.
Metric available for:
Back to Top
Research: Lorenz & Kidd - Number of Variables (NV)
Description: Number of class variables.
Metric available for:
C/C++: Project,Class,Struct,Union
C#: Project,Class,Struct
Java: Project,Class,Interface
Pascal: Project,Class,Interface
C#: Project,Class,Struct
Java: Project,Class,Interface
Pascal: Project,Class,Interface
Click Here To Download Understand!
Back to Top
Function
API Name: CountDeclFunction
Description: Number of functions.
Metric available for:
Back to Top
Description: Number of functions.
Metric available for:
C/C++: Project,File
C#: Project,File
Java: Project,File
Cobol: File
Web: Project,File
C#: Project,File
Java: Project,File
Cobol: File
Web: Project,File
Click Here To Download Understand!
Back to Top
Instance Methods
API Name: CountDeclInstanceMethod
Research: NIM
Description: Number of instance methods.
Metric available for:
Back to Top
Research: NIM
Description: Number of instance methods.
Metric available for:
C/C++: Project,Class,Struct,Union
C#: Project,Class,Struct
Java: Project,Class,Interface
Pascal: Project,Class,Interface
C#: Project,Class,Struct
Java: Project,Class,Interface
Pascal: Project,Class,Interface
Click Here To Download Understand!
Back to Top
Instance Variables
API Name: CountDeclInstanceVariable
Research: NIV
Description: Number of instance variables.
Metric available for:
Back to Top
Research: NIV
Description: Number of instance variables.
Metric available for:
C/C++: Project,Class,Struct,Union
C#: Project,Class,Struct
Java: Project,Class,Interface
Pascal: Project,Class,Interface
C#: Project,Class,Struct
Java: Project,Class,Interface
Pascal: Project,Class,Interface
Click Here To Download Understand!
Back to Top
Private Instance Variables
API Name: CountDeclInstanceVariablePrivate
Description: Number of private instance variables.
Metric available for:
Back to Top
Description: Number of private instance variables.
Metric available for:
C/C++: Project,Class,Struct,Union
Click Here To Download Understand!
Back to Top
Protected Instance Variables
API Name: CountDeclInstanceVariableProtected
Description: Number of protected instance variables.
Metric available for:
Back to Top
Description: Number of protected instance variables.
Metric available for:
C/C++: Project,Class,Struct,Union
Click Here To Download Understand!
Back to Top
Public Instance Variables
API Name: CountDeclInstanceVariablePublic
Description: Number of public instance variables.
Metric available for:
Back to Top
Description: Number of public instance variables.
Metric available for:
C/C++: Project,Class,Struct,Union
Click Here To Download Understand!
Back to Top
Local Methods
API Name: CountDeclMethod
Research: Chidamber & Kemerer - Weighted Methods per Class (WMC)
Description: Number of local (not inherited) methods.
Metric available for:
Back to Top
Research: Chidamber & Kemerer - Weighted Methods per Class (WMC)
Description: Number of local (not inherited) methods.
Metric available for:
C/C++: Project,Class,Struct,Union
C#: Project,Class,Struct
Java: Project,Class,Interface
Pascal: Project,Class,Interface
C#: Project,Class,Struct
Java: Project,Class,Interface
Pascal: Project,Class,Interface
Click Here To Download Understand!
Back to Top
Methods
API Name: CountDeclMethodAll
Research: Chidamber & Kemerer - Response For a Class (RFC),Lorenz & Kidd - Number of Methods(NM)
Description: Number of methods, including inherited ones.
Metric available for:
Back to Top
Research: Chidamber & Kemerer - Response For a Class (RFC),Lorenz & Kidd - Number of Methods(NM)
Description: Number of methods, including inherited ones.
Metric available for:
C/C++: Project,Class,Struct,Union
C#: Project,Class
Java: Project,Class,Interface
Pascal: Project,Class,Interface
C#: Project,Class
Java: Project,Class,Interface
Pascal: Project,Class,Interface
Click Here To Download Understand!
Back to Top
Local Const Methods
API Name: CountDeclMethodConst
Description: Number of local const methods.
Metric available for:
Back to Top
Description: Number of local const methods.
Metric available for:
C/C++: Project,Class,Struct,Union
Click Here To Download Understand!
Back to Top
Local Default Visibility Methods
API Name: CountDeclMethodDefault
Description: Number of local default visibility methods.
Metric available for:
Back to Top
Description: Number of local default visibility methods.
Metric available for:
Java: Project,Class,Interface
Click Here To Download Understand!
Back to Top
Friend Methods
API Name: CountDeclMethodFriend
Research: Lorenz & Kidd - Number of Friends (NF),Number of Friend Methods (NFM)
Description: Number of local (not inherited) friend methods.
Metric available for:
Back to Top
Research: Lorenz & Kidd - Number of Friends (NF),Number of Friend Methods (NFM)
Description: Number of local (not inherited) friend methods.
Metric available for:
C/C++: Project,Class,Struct,Union
Click Here To Download Understand!
Back to Top
Private Methods
API Name: CountDeclMethodPrivate
Research: Number Private Methods (NPRM)
Description: Number of local (not inherited) private methods.
Metric available for:
Back to Top
Research: Number Private Methods (NPRM)
Description: Number of local (not inherited) private methods.
Metric available for:
C/C++: Project,Class,Struct,Union
C#: Project,Class,Struct
Java: Project,Class,Interface
Pascal: Project,Class,Interface
C#: Project,Class,Struct
Java: Project,Class,Interface
Pascal: Project,Class,Interface
Click Here To Download Understand!
Back to Top
Protected Methods
API Name: CountDeclMethodProtected
Description: Number of local protected methods.
Metric available for:
Back to Top
Description: Number of local protected methods.
Metric available for:
C/C++: Project,Class,Struct,Union
C#: Project,Class,Struct
Java: Project,Class,Interface
Pascal: Project,Class,Interface
C#: Project,Class,Struct
Java: Project,Class,Interface
Pascal: Project,Class,Interface
Click Here To Download Understand!
Back to Top
Public Methods
API Name: CountDeclMethodPublic
Research: Lorenz & Kidd - Number of Public Methods (PM),NPM
Description: Number of public methods. Only counts local (not inherited) methods.
Metric available for:
Back to Top
Research: Lorenz & Kidd - Number of Public Methods (PM),NPM
Description: Number of public methods. Only counts local (not inherited) methods.
Metric available for:
C/C++: Project,Class,Struct,Union
C#: Project,Class,Struct
Java: Project,Class,Interface
Pascal: Project,Class,Interface
C#: Project,Class,Struct
Java: Project,Class,Interface
Pascal: Project,Class,Interface
Click Here To Download Understand!
Back to Top
Local strict private methods
API Name: CountDeclMethodStrictPrivate
Description: Number of local strict private methods.
Metric available for:
Back to Top
Description: Number of local strict private methods.
Metric available for:
Pascal: Project,Class,Interface
Click Here To Download Understand!
Back to Top
Local strict published methods
API Name: CountDeclMethodStrictPublished
Description: Number of local strict published methods.
Metric available for:
Back to Top
Description: Number of local strict published methods.
Metric available for:
Pascal: Project,Class,Interface
Click Here To Download Understand!
Back to Top
Modules
API Name: CountDeclModule
Description: Number of modules.
Metric available for:
Back to Top
Description: Number of modules.
Metric available for:
Fortran: Project,File,Module,Block Data,Function,Program,Subroutine
Jovial: Project,File
Pascal: Project,File
PL/M: Project
Cobol: File,Program
Jovial: Project,File
Pascal: Project,File
PL/M: Project
Cobol: File,Program
Click Here To Download Understand!
Back to Top
Program Units
API Name: CountDeclProgUnit
Description: Number of program units.
Metric available for:
Back to Top
Description: Number of program units.
Metric available for:
Fortran: Project,File
Cobol: File
Cobol: File
Click Here To Download Understand!
Back to Top
Subprograms
API Name: CountDeclSubprogram
Description: Number of subprograms.
Metric available for:
Back to Top
Description: Number of subprograms.
Metric available for:
Ada: Project,Package
Fortran: Project,File,Module,Block Data,Function,Program,Subroutine
Jovial: Project,File,Module,Subroutine
Pascal: Project,File,Compunit,Function,Procedure
Cobol: File,Program
Fortran: Project,File,Module,Block Data,Function,Program,Subroutine
Jovial: Project,File,Module,Subroutine
Pascal: Project,File,Compunit,Function,Procedure
Cobol: File,Program
Click Here To Download Understand!
Back to Top
Inputs
API Name: CountInput
Research: FANIN
Description: The number of inputs a function uses plus the number of unique subprograms calling the function. Inputs include parameters and global variables that are used in the function, so Functions calledby + Parameters read + Global Variables read. Of the two general approachs to calculating FANIN (informational versus structural) ours is the informational approach.
Metric available for:
Back to Top
Research: FANIN
Description: The number of inputs a function uses plus the number of unique subprograms calling the function. Inputs include parameters and global variables that are used in the function, so Functions calledby + Parameters read + Global Variables read. Of the two general approachs to calculating FANIN (informational versus structural) ours is the informational approach.
Metric available for:
C/C++: Function
C#: Method
Java: Method
C#: Method
Java: Method
Click Here To Download Understand!
Back to Top
Physical Lines
API Name: CountLine
Research: NL
Description: Number of physical lines.
Metric available for:
Back to Top
Research: NL
Description: Number of physical lines.
Metric available for:
C/C++: Project,File,Class,Struct,Union,Function
C#: Project,File,Class,Method
Ada: Project,File,Type,Entry,Function,Package,Procedure,Protected,Task
Fortran: Project,File,Module,Block Data,Function,Program,Subroutine
Java: Project,File,Class,Interface,Method
Jovial: Project,File,Module,Subroutine
Pascal: Project,File,Class,Interface,Compunit,Function,Procedure
PL/M: Project,File,Procedure
VHDL: Project,File,Procedure,Function,Process,Architecture
Cobol: Project,File,Program
Web: Project,File,PHP Class,PHP Interface
C#: Project,File,Class,Method
Ada: Project,File,Type,Entry,Function,Package,Procedure,Protected,Task
Fortran: Project,File,Module,Block Data,Function,Program,Subroutine
Java: Project,File,Class,Interface,Method
Jovial: Project,File,Module,Subroutine
Pascal: Project,File,Class,Interface,Compunit,Function,Procedure
PL/M: Project,File,Procedure
VHDL: Project,File,Procedure,Function,Process,Architecture
Cobol: Project,File,Program
Web: Project,File,PHP Class,PHP Interface
Click Here To Download Understand!
Back to Top
Blank Lines of Code
API Name: CountLineBlank
Research: BLOC
Description: Number of blank lines.
Metric available for:
Back to Top
Research: BLOC
Description: Number of blank lines.
Metric available for:
C/C++: Project,File,Class,Struct,Union,Function
C#: Project,File,Class,Method
Ada: Project,File,Type,Entry,Function,Package,Procedure,Protected,Task
Fortran: Project,File,Module,Block Data,Function,Program,Subroutine
Java: Project,File,Class,Interface,Method
Jovial: Project,File,Module,Subroutine
Pascal: Project,File,Class,Interface,Compunit,Function,Procedure
PL/M: Project,File,Procedure
VHDL: Project,File,Procedure,Function,Process,Architecture
Cobol: Project,File,Program
Web: Project,File,PHP Class,PHP Interface
C#: Project,File,Class,Method
Ada: Project,File,Type,Entry,Function,Package,Procedure,Protected,Task
Fortran: Project,File,Module,Block Data,Function,Program,Subroutine
Java: Project,File,Class,Interface,Method
Jovial: Project,File,Module,Subroutine
Pascal: Project,File,Class,Interface,Compunit,Function,Procedure
PL/M: Project,File,Procedure
VHDL: Project,File,Procedure,Function,Process,Architecture
Cobol: Project,File,Program
Web: Project,File,PHP Class,PHP Interface
Click Here To Download Understand!
Back to Top
Blank html lines
API Name: CountLineBlank_Html
Description: Number of blank html lines.
Metric available for:
Back to Top
Description: Number of blank html lines.
Metric available for:
Cobol: File
Web: Project,File
Web: Project,File
Click Here To Download Understand!
Back to Top
Blank javascript lines
API Name: CountLineBlank_Javascript
Description: Number of blank javascript lines.
Metric available for:
Back to Top
Description: Number of blank javascript lines.
Metric available for:
Cobol: File
Web: Project,File
Web: Project,File
Click Here To Download Understand!
Back to Top
Blank php lines
API Name: CountLineBlank_Php
Description: Number of blank php lines.
Metric available for:
Back to Top
Description: Number of blank php lines.
Metric available for:
Cobol: File
Web: Project,File,PHP Class,PHP Interface
Web: Project,File,PHP Class,PHP Interface
Click Here To Download Understand!
Back to Top
Source Lines of Code
API Name: CountLineCode
Research: LOC, SLOC
Description: The number of lines that contain source code. Note that a line can contain source and a comment and thus count towards multiple metrics. For Classes this is the sum of the CountLineCode for the member functions of the class.
Metric available for:
Back to Top
Research: LOC, SLOC
Description: The number of lines that contain source code. Note that a line can contain source and a comment and thus count towards multiple metrics. For Classes this is the sum of the CountLineCode for the member functions of the class.
Metric available for:
C/C++: Project,File,Class,Struct,Union,Function
C#: Project,File,Class,Method
Ada: Project,File,Type,Entry,Function,Package,Procedure,Protected,Task
Fortran: Project,File,Module,Block Data,Function,Program,Subroutine
Java: Project,File,Class,Interface,Method
Jovial: Project,File,Module,Subroutine
Pascal: Project,File,Class,Interface,Compunit,Function,Procedure
PL/M: Project,File,Procedure
VHDL: Project,File,Procedure,Function,Process,Architecture
Cobol: Project,File,Program
Web: Project,File,PHP Class,PHP Interface
C#: Project,File,Class,Method
Ada: Project,File,Type,Entry,Function,Package,Procedure,Protected,Task
Fortran: Project,File,Module,Block Data,Function,Program,Subroutine
Java: Project,File,Class,Interface,Method
Jovial: Project,File,Module,Subroutine
Pascal: Project,File,Class,Interface,Compunit,Function,Procedure
PL/M: Project,File,Procedure
VHDL: Project,File,Procedure,Function,Process,Architecture
Cobol: Project,File,Program
Web: Project,File,PHP Class,PHP Interface
Click Here To Download Understand!
Back to Top
Declarative Lines of Code
API Name: CountLineCodeDecl
Description: Number of lines containing declarative source code. Note that a line can be declarative and executable - int i =0; for instance.
Metric available for:
Back to Top
Description: Number of lines containing declarative source code. Note that a line can be declarative and executable - int i =0; for instance.
Metric available for:
C/C++: Project,File,Class,Struct,Union,Function
C#: Project,File,Class,Method
Ada: Project,File,Type,Entry,Function,Package,Procedure,Protected,Task
Fortran: Project,File,Module,Block Data,Function,Program,Subroutine
Java: Project,File,Class,Interface,Method
Pascal: Project,File,Class,Interface,Compunit,Function,Procedure
Cobol: File,Program
C#: Project,File,Class,Method
Ada: Project,File,Type,Entry,Function,Package,Procedure,Protected,Task
Fortran: Project,File,Module,Block Data,Function,Program,Subroutine
Java: Project,File,Class,Interface,Method
Pascal: Project,File,Class,Interface,Compunit,Function,Procedure
Cobol: File,Program
Click Here To Download Understand!
Back to Top
Executable Lines of Code
API Name: CountLineCodeExe
Description: Number of lines containing executable source code.
Metric available for:
Back to Top
Description: Number of lines containing executable source code.
Metric available for:
C/C++: Project,File,Class,Struct,Union,Function
C#: Project,File,Class,Method
Ada: Project,File,Type,Entry,Function,Package,Procedure,Protected,Task
Fortran: Project,File,Module,Block Data,Function,Program,Subroutine
Java: Project,File,Class,Interface,Method
Pascal: Project,File,Class,Interface,Compunit,Function,Procedure
Cobol: File,Program
C#: Project,File,Class,Method
Ada: Project,File,Type,Entry,Function,Package,Procedure,Protected,Task
Fortran: Project,File,Module,Block Data,Function,Program,Subroutine
Java: Project,File,Class,Interface,Method
Pascal: Project,File,Class,Interface,Compunit,Function,Procedure
Cobol: File,Program
Click Here To Download Understand!
Back to Top
Javascript source code lines
API Name: CountLineCode_Javascript
Description: Number of javascript lines containing source code.
Metric available for:
Back to Top
Description: Number of javascript lines containing source code.
Metric available for:
Cobol: File
Web: Project,File
Web: Project,File
Click Here To Download Understand!
Back to Top
PHP Source Code Lines
API Name: CountLineCode_Php
Description: Number of php lines containing source code.
Metric available for:
Back to Top
Description: Number of php lines containing source code.
Metric available for:
Cobol: File
Web: Project,File,PHP Class,PHP Interface
Web: Project,File,PHP Class,PHP Interface
Click Here To Download Understand!
Back to Top
Lines with Comments
API Name: CountLineComment
Research: CLOC
Description: Number of lines containing comment. This can overlap with other code counting metrics. For instance int j = 1; // comment has a comment, is a source line, is an executable source line, and a declarative source line.
Metric available for:
Back to Top
Research: CLOC
Description: Number of lines containing comment. This can overlap with other code counting metrics. For instance int j = 1; // comment has a comment, is a source line, is an executable source line, and a declarative source line.
Metric available for:
C/C++: Project,File,Class,Struct,Union,Function
C#: Project,File,Class,Method
Ada: Project,File,Type,Entry,Function,Package,Procedure,Protected,Task
Fortran: Project,File,Module,Block Data,Function,Program,Subroutine
Java: Project,File,Class,Interface,Method
Jovial: Project,File,Module,Subroutine
Pascal: Project,File,Class,Interface,Compunit,Function,Procedure
PL/M: Project,File,Procedure
VHDL: Project,File,Procedure,Function,Process,Architecture
Cobol: Project,File,Program
Web: Project,File,PHP Class,PHP Interface
C#: Project,File,Class,Method
Ada: Project,File,Type,Entry,Function,Package,Procedure,Protected,Task
Fortran: Project,File,Module,Block Data,Function,Program,Subroutine
Java: Project,File,Class,Interface,Method
Jovial: Project,File,Module,Subroutine
Pascal: Project,File,Class,Interface,Compunit,Function,Procedure
PL/M: Project,File,Procedure
VHDL: Project,File,Procedure,Function,Process,Architecture
Cobol: Project,File,Program
Web: Project,File,PHP Class,PHP Interface
Click Here To Download Understand!
Back to Top
HTML Comment Lines
API Name: CountLineComment_Html
Description: Number of html lines containing comment.
Metric available for:
Back to Top
Description: Number of html lines containing comment.
Metric available for:
Cobol: File
Web: Project,File
Web: Project,File
Click Here To Download Understand!
Back to Top
Javascript Comment Lines
API Name: CountLineComment_Javascript
Description: Number of javascript lines containing comment.
Metric available for:
Back to Top
Description: Number of javascript lines containing comment.
Metric available for:
Cobol: File
Web: Project,File
Web: Project,File
Click Here To Download Understand!
Back to Top
PHP Comment Lines
API Name: CountLineComment_Php
Description: Number of php lines containing comment.
Metric available for:
Back to Top
Description: Number of php lines containing comment.
Metric available for:
Cobol: File
Web: Project,File,PHP Class,PHP Interface
Web: Project,File,PHP Class,PHP Interface
Click Here To Download Understand!
Back to Top
Inactive Lines
API Name: CountLineInactive
Description: This is the number of lines that are inactive from the view of the preprocessor. In other words, they are on the FALSE side of a #if or #ifdef preprocessor directive.
Metric available for:
Back to Top
Description: This is the number of lines that are inactive from the view of the preprocessor. In other words, they are on the FALSE side of a #if or #ifdef preprocessor directive.
Metric available for:
C/C++: Project,File,Class,Struct,Union,Function
Cobol: File
Cobol: File
Click Here To Download Understand!
Back to Top
Preprocessor Lines
API Name: CountLinePreprocessor
Description: Number of preprocessor lines.
Metric available for:
Back to Top
Description: Number of preprocessor lines.
Metric available for:
C/C++: Project,File,Class,Struct,Union,Function
Cobol: File
Cobol: File
Click Here To Download Understand!
Back to Top
HTMLLines
API Name: CountLine_Html
Description: Number of all html lines.
Metric available for:
Back to Top
Description: Number of all html lines.
Metric available for:
Cobol: File
Web: Project,File
Web: Project,File
Click Here To Download Understand!
Back to Top
Javascript Lines
API Name: CountLine_Javascript
Description: Number of all javascript lines.
Metric available for:
Back to Top
Description: Number of all javascript lines.
Metric available for:
Cobol: File
Web: Project,File
Web: Project,File
Click Here To Download Understand!
Back to Top
PHP Lines
API Name: CountLine_Php
Description: Number of all php lines.
Metric available for:
Back to Top
Description: Number of all php lines.
Metric available for:
Cobol: File
Web: Project,File,PHP Class,PHP Interface
Web: Project,File,PHP Class,PHP Interface
Click Here To Download Understand!
Back to Top
Outputs
API Name: CountOutput
Research: FANOUT
Description: The number of outputs that are SET. This can be parameters or global variables. So Functions calls + Parameters set/modify + Global Varibales set/modify. Of the two general approachs to calculating FANOUT (informational versus structural) ours is the informational approach.
Metric available for:
Back to Top
Research: FANOUT
Description: The number of outputs that are SET. This can be parameters or global variables. So Functions calls + Parameters set/modify + Global Varibales set/modify. Of the two general approachs to calculating FANOUT (informational versus structural) ours is the informational approach.
Metric available for:
C/C++: Function
C#: Method
Java: Method
C#: Method
Java: Method
Click Here To Download Understand!
Back to Top
Coupled Packages
API Name: CountPackageCoupled
Description: Number of other packages coupled to.
Metric available for:
Back to Top
Description: Number of other packages coupled to.
Metric available for:
Ada: Project,Package
Click Here To Download Understand!
Back to Top
Paths
API Name: CountPath
Research: NPATH
Description: Number of unique paths though a body of code, not counting abnormal exits or gotos.
Metric available for:
Back to Top
Research: NPATH
Description: Number of unique paths though a body of code, not counting abnormal exits or gotos.
Metric available for:
C/C++: Project,Function
C#: Project,Method
Ada: Project,Type,Entry,Function,Package,Procedure,Protected,Task
Fortran: Project,Module,Block Data,Function,Program,Subroutine
Java: Project,Method
Cobol: File,Program
Web: Project,File
C#: Project,Method
Ada: Project,Type,Entry,Function,Package,Procedure,Protected,Task
Fortran: Project,Module,Block Data,Function,Program,Subroutine
Java: Project,Method
Cobol: File,Program
Web: Project,File
Click Here To Download Understand!
Back to Top
Semicolons
API Name: CountSemicolon
Description: Number of semicolons.
Metric available for:
Back to Top
Description: Number of semicolons.
Metric available for:
C/C++: Project,File,Function
C#: Project,File,Class,Method
Ada: Project,File,Type,Entry,Function,Package,Procedure,Protected,Task
Java: Project,File,Class,Interface,Method
Cobol: File
C#: Project,File,Class,Method
Ada: Project,File,Type,Entry,Function,Package,Procedure,Protected,Task
Java: Project,File,Class,Interface,Method
Cobol: File
Click Here To Download Understand!
Back to Top
Statements
API Name: CountStmt
Description: Number of declarative plus executable statements.
Metric available for:
Back to Top
Description: Number of declarative plus executable statements.
Metric available for:
C/C++: Project,File,Class,Struct,Union,Function
C#: Project,File,Class,Method
Ada: Project,File,Type,Entry,Function,Package,Procedure,Protected,Task
Fortran: Project,File,Block Data,Function,Program,Subroutine
Java: Project,File,Class,Interface,Method
Jovial: Project,File,Module,Subroutine
Pascal: Project,File,Class,Interface,Compunit,Function,Procedure
PL/M: Project,File,Procedure
VHDL: Project,File
Cobol: Project,File,Program
Web: Project,File
C#: Project,File,Class,Method
Ada: Project,File,Type,Entry,Function,Package,Procedure,Protected,Task
Fortran: Project,File,Block Data,Function,Program,Subroutine
Java: Project,File,Class,Interface,Method
Jovial: Project,File,Module,Subroutine
Pascal: Project,File,Class,Interface,Compunit,Function,Procedure
PL/M: Project,File,Procedure
VHDL: Project,File
Cobol: Project,File,Program
Web: Project,File
Click Here To Download Understand!
Back to Top
Declarative Statements
API Name: CountStmtDecl
Description: Number of declarative statements. Note that there can be overlap here with executable statements - int i = 0; for instance.
Metric available for:
Back to Top
Description: Number of declarative statements. Note that there can be overlap here with executable statements - int i = 0; for instance.
Metric available for:
C/C++: Project,File,Class,Struct,Union,Function
C#: Project,File,Class,Method
Ada: Project,File,Type,Entry,Function,Package,Procedure,Protected,Task
Fortran: Project,File,Module,Block Data,Function,Program,Subroutine
Java: Project,File,Class,Interface,Method
Jovial: Project,File,Module,Subroutine
Pascal: Project,File,Class,Interface,Compunit,Function,Procedure
PL/M: Project,File,Procedure
VHDL: Project,File
Cobol: Project,File,Program
Web: Project,File,PHP Class,PHP Interface
C#: Project,File,Class,Method
Ada: Project,File,Type,Entry,Function,Package,Procedure,Protected,Task
Fortran: Project,File,Module,Block Data,Function,Program,Subroutine
Java: Project,File,Class,Interface,Method
Jovial: Project,File,Module,Subroutine
Pascal: Project,File,Class,Interface,Compunit,Function,Procedure
PL/M: Project,File,Procedure
VHDL: Project,File
Cobol: Project,File,Program
Web: Project,File,PHP Class,PHP Interface
Click Here To Download Understand!
Back to Top
Javascript Declarative Statements
API Name: CountStmtDecl_Javascript
Description: Number of javascript declarative statements.
Metric available for:
Back to Top
Description: Number of javascript declarative statements.
Metric available for:
Cobol: File
Web: Project,File
Web: Project,File
Click Here To Download Understand!
Back to Top
PHP Declarative Statements
API Name: CountStmtDecl_Php
Description: Number of php declarative statements.
Metric available for:
Back to Top
Description: Number of php declarative statements.
Metric available for:
Cobol: File
Web: Project,File,PHP Class,PHP Interface
Web: Project,File,PHP Class,PHP Interface
Click Here To Download Understand!
Back to Top
Empty Statements
API Name: CountStmtEmpty
Description: Number of empty statements.
Metric available for:
Back to Top
Description: Number of empty statements.
Metric available for:
C/C++: Project,File,Class,Struct,Union,Function
Cobol: File
Cobol: File
Click Here To Download Understand!
Back to Top
Executable Statements
API Name: CountStmtExe
Description: Number of executable statements. Note that there can be overlap with declarative statements (int i = 0; )
Metric available for:
Back to Top
Description: Number of executable statements. Note that there can be overlap with declarative statements (int i = 0; )
Metric available for:
C/C++: Project,File,Class,Struct,Union,Function
C#: Project,File,Class,Method
Ada: Project,File,Type,Entry,Function,Package,Procedure,Protected,Task
Fortran: Project,File,Module,Block Data,Function,Program,Subroutine
Java: Project,File,Class,Interface,Method
Jovial: Project,File,Subroutine
Pascal: Project,File,Class,Interface,Function,Procedure
PL/M: Project,File,Procedure
VHDL: Project,File
Cobol: Project,File,Program
Web: Project,File,PHP Class,PHP Interface
C#: Project,File,Class,Method
Ada: Project,File,Type,Entry,Function,Package,Procedure,Protected,Task
Fortran: Project,File,Module,Block Data,Function,Program,Subroutine
Java: Project,File,Class,Interface,Method
Jovial: Project,File,Subroutine
Pascal: Project,File,Class,Interface,Function,Procedure
PL/M: Project,File,Procedure
VHDL: Project,File
Cobol: Project,File,Program
Web: Project,File,PHP Class,PHP Interface
Click Here To Download Understand!
Back to Top
Javascript Executable Statements
API Name: CountStmtExe_Javascript
Description: Number of javascript executable statements.
Metric available for:
Back to Top
Description: Number of javascript executable statements.
Metric available for:
Cobol: File
Web: Project,File
Web: Project,File
Click Here To Download Understand!
Back to Top
PHP Executable Statements
API Name: CountStmtExe_Php
Description: Number of php executable statements.
Metric available for:
Back to Top
Description: Number of php executable statements.
Metric available for:
Cobol: File
Web: Project,File,PHP Class,PHP Interface
Web: Project,File,PHP Class,PHP Interface
Click Here To Download Understand!
Back to Top
Cyclomatic Complexity
API Name: Cyclomatic
Research: McCabe Complexity (v(G))
Description: McCabe Cyclomatic complexity as per the original NIST paper on the subject.
Edges - Nodes + Connected Components
McCabe also proved that the cyclomatic complexity of any structured program with only one entrance point and one exit point is equal to the number of decision points contained in that program plus one (refer to section V for the proof).
Understand counts the keywords for decision points (FOR, WHILE, etc) and then adds 1. For a switch statement, each 'case' is counted as 1 and the 'switch' itselfs adds one to the final Cyclomatic Complexity count.
Metric available for:
Back to Top
Research: McCabe Complexity (v(G))
Description: McCabe Cyclomatic complexity as per the original NIST paper on the subject.
Edges - Nodes + Connected Components
McCabe also proved that the cyclomatic complexity of any structured program with only one entrance point and one exit point is equal to the number of decision points contained in that program plus one (refer to section V for the proof).
Understand counts the keywords for decision points (FOR, WHILE, etc) and then adds 1. For a switch statement, each 'case' is counted as 1 and the 'switch' itselfs adds one to the final Cyclomatic Complexity count.
Metric available for:
C/C++: Project,Function
C#: Project,Method
Ada: Project,Type,Entry,Function,Package,Procedure,Protected,Task
Fortran: Project,Module,Block Data,Function,Program,Subroutine
Java: Project,Method
Jovial: Project,Subroutine
Pascal: Project,Compunit,Function,Procedure
PL/M: Project,Procedure
VHDL: Project,Procedure,Function,Process
Cobol: Project,File,Paragraph,Section,Program
Web: Project,File
C#: Project,Method
Ada: Project,Type,Entry,Function,Package,Procedure,Protected,Task
Fortran: Project,Module,Block Data,Function,Program,Subroutine
Java: Project,Method
Jovial: Project,Subroutine
Pascal: Project,Compunit,Function,Procedure
PL/M: Project,Procedure
VHDL: Project,Procedure,Function,Process
Cobol: Project,File,Paragraph,Section,Program
Web: Project,File
Click Here To Download Understand!
Back to Top
Modified Cyclomatic Complexity
API Name: CyclomaticModified
Description: Modified McCabe Cyclomatic complexity. The Cyclomatic Complexity except that each decision in a multi-decision structure (switch in C/Java, Case in Ada, computed Goto and arithmetic if in FORTRAN) statement is not counted and instead the entire multi-way decision structure counts as 1
Metric available for:
Back to Top
Description: Modified McCabe Cyclomatic complexity. The Cyclomatic Complexity except that each decision in a multi-decision structure (switch in C/Java, Case in Ada, computed Goto and arithmetic if in FORTRAN) statement is not counted and instead the entire multi-way decision structure counts as 1
Metric available for:
C/C++: Project,Function
C#: Project,Method
Ada: Project,Type,Entry,Function,Package,Procedure,Protected,Task
Fortran: Project,Module,Block Data,Function,Program,Subroutine
Java: Project,Method
Jovial: Project,Subroutine
Pascal: Project,Compunit,Function,Procedure
PL/M: Project,Procedure
VHDL: Project,Procedure,Function,Process
Cobol: Project,File,Paragraph,Section,Program
Web: Project,File
C#: Project,Method
Ada: Project,Type,Entry,Function,Package,Procedure,Protected,Task
Fortran: Project,Module,Block Data,Function,Program,Subroutine
Java: Project,Method
Jovial: Project,Subroutine
Pascal: Project,Compunit,Function,Procedure
PL/M: Project,Procedure
VHDL: Project,Procedure,Function,Process
Cobol: Project,File,Paragraph,Section,Program
Web: Project,File
Click Here To Download Understand!
Back to Top
Strict Cyclomatic Complexity
API Name: CyclomaticStrict
Description: Strict cyclomatic complexity. The Cyclomatic Complexity with logical conjunction and logical and in conditional expressions also adding 1 to the complexity for each of their occurrences.
i.e. The statement if (a && b || c) would have a cyclomatic of 1 but a strict cycolmatic of 3
Metric available for:
Back to Top
Description: Strict cyclomatic complexity. The Cyclomatic Complexity with logical conjunction and logical and in conditional expressions also adding 1 to the complexity for each of their occurrences.
i.e. The statement if (a && b || c) would have a cyclomatic of 1 but a strict cycolmatic of 3
Metric available for:
C/C++: Project,Function
C#: Project,Method
Ada: Project,Type,Entry,Function,Package,Procedure,Protected,Task
Java: Project,Method
Jovial: Project,Subroutine
Pascal: Project,Compunit,Function,Procedure
Cobol: File,Program
Web: Project,File
C#: Project,Method
Ada: Project,Type,Entry,Function,Package,Procedure,Protected,Task
Java: Project,Method
Jovial: Project,Subroutine
Pascal: Project,Compunit,Function,Procedure
Cobol: File,Program
Web: Project,File
Click Here To Download Understand!
Back to Top
Essential Complexity
API Name: Essential
Research: ev(G)
Description: Essential complexity is the Cyclomatic complexity after iteratively replacing all well structured control structures with a single statement. Structures such as if-then-else and while loops are considered well structured.
Understand calculate the essential complexity by removing all the structured subgraphs from the control graph and then calculating the complexity. A graph that has only the regular single entry/single exit loops or branches will be reducible to a graph with complexity one. Any branches into or out of a loop or decision will make the graph non-reducible and will have essentialcomplexity > 2. (You never get 2 since a graph with complexity 2 is always reducible to a graph with complexity 1).
Metric available for:
Back to Top
Research: ev(G)
Description: Essential complexity is the Cyclomatic complexity after iteratively replacing all well structured control structures with a single statement. Structures such as if-then-else and while loops are considered well structured.
Understand calculate the essential complexity by removing all the structured subgraphs from the control graph and then calculating the complexity. A graph that has only the regular single entry/single exit loops or branches will be reducible to a graph with complexity one. Any branches into or out of a loop or decision will make the graph non-reducible and will have essentialcomplexity > 2. (You never get 2 since a graph with complexity 2 is always reducible to a graph with complexity 1).
Metric available for:
C/C++: Project,Function
C#: Project,Method
Ada: Project,Type,Entry,Function,Package,Procedure,Protected,Task
Fortran: Project,Module,Block Data,Function,Program,Subroutine
Java: Project,Method
Cobol: File,Program
Web: Project,File
C#: Project,Method
Ada: Project,Type,Entry,Function,Package,Procedure,Protected,Task
Fortran: Project,Module,Block Data,Function,Program,Subroutine
Java: Project,Method
Cobol: File,Program
Web: Project,File
Click Here To Download Understand!
Back to Top
Knots
API Name: Knots
Description: Measure of overlapping jumps. If a piece of code has arrowed lines indicating where every jump in the flow of control occurs, a knot is defined as where two such lines cross each other. The number of knots is proportional to the complexity of the control flow.
Metric available for:
Back to Top
Description: Measure of overlapping jumps. If a piece of code has arrowed lines indicating where every jump in the flow of control occurs, a knot is defined as where two such lines cross each other. The number of knots is proportional to the complexity of the control flow.
Metric available for:
C/C++: Project,Function
Ada: Project,Type,Entry,Function,Package,Procedure,Protected,Task
Ada: Project,Type,Entry,Function,Package,Procedure,Protected,Task
Click Here To Download Understand!
Back to Top
Max Cyclomatic Complexity
API Name: MaxCyclomatic
Description: Maximum cyclomatic complexity of all nested functions or methods.
Metric available for:
Back to Top
Description: Maximum cyclomatic complexity of all nested functions or methods.
Metric available for:
C/C++: Project,File,Class,Struct,Union
C#: Project,File,Class,Struct
Java: Project,File,Class,Interface
Pascal: Project,File,Class,Interface
Cobol: File
Web: Project,File,PHP Class,PHP Interface
C#: Project,File,Class,Struct
Java: Project,File,Class,Interface
Pascal: Project,File,Class,Interface
Cobol: File
Web: Project,File,PHP Class,PHP Interface
Click Here To Download Understand!
Back to Top
Max Modified Cyclomatic Complexity
API Name: MaxCyclomaticModified
Description: Maximum modified cyclomatic complexity of all nested functions or methods.
Metric available for:
Back to Top
Description: Maximum modified cyclomatic complexity of all nested functions or methods.
Metric available for:
C/C++: Project,File,Class,Struct,Union
C#: Project,File,Class,Struct
Java: Project,File,Class,Interface
Pascal: Project,File,Class,Interface
Cobol: File
Web: Project,File,PHP Class,PHP Interface
C#: Project,File,Class,Struct
Java: Project,File,Class,Interface
Pascal: Project,File,Class,Interface
Cobol: File
Web: Project,File,PHP Class,PHP Interface
Click Here To Download Understand!
Back to Top
Max Strict Cyclomatic Complexity
API Name: MaxCyclomaticStrict
Description: Maximum strict cyclomatic complexity of all nested functions or methods.
Metric available for:
Back to Top
Description: Maximum strict cyclomatic complexity of all nested functions or methods.
Metric available for:
C/C++: Project,File,Class,Struct,Union
C#: Project,File,Class,Struct
Java: Project,File,Class,Interface
Pascal: Project,File,Class,Interface
Cobol: File
C#: Project,File,Class,Struct
Java: Project,File,Class,Interface
Pascal: Project,File,Class,Interface
Cobol: File
Click Here To Download Understand!
Back to Top
Max Knots
API Name: MaxEssentialKnots
Description: Maximum Knots after structured programming constructs have been removed.
Metric available for:
Back to Top
Description: Maximum Knots after structured programming constructs have been removed.
Metric available for:
C/C++: Project,Function
Ada: Project,Type,Entry,Function,Package,Procedure,Protected,Task
Ada: Project,Type,Entry,Function,Package,Procedure,Protected,Task
Click Here To Download Understand!
Back to Top
Depth of Inheritance Tree
API Name: MaxInheritanceTree
Research: Chidamber & Kemerer - Depth of Inheritance Tree (DIT)
Description: The depth of a class within the inheritance hierarchy is the maximum number of nodes from the class node to the root of the inheritance tree. The root node has a DIT of 0. The deeper within the hierarchy, the more methods the class can inherit, increasing its complexity.
Metric available for:
Back to Top
Research: Chidamber & Kemerer - Depth of Inheritance Tree (DIT)
Description: The depth of a class within the inheritance hierarchy is the maximum number of nodes from the class node to the root of the inheritance tree. The root node has a DIT of 0. The deeper within the hierarchy, the more methods the class can inherit, increasing its complexity.
Metric available for:
C/C++: Project,Class,Struct,Union
C#: Project,Class
Java: Project,Class,Interface
Pascal: Project,Class,Interface
C#: Project,Class
Java: Project,Class,Interface
Pascal: Project,Class,Interface
Click Here To Download Understand!
Back to Top
Nesting
API Name: MaxNesting
Description: Maximum nesting level of control constructs (if, while, for, switch, etc.) in the function.
Metric available for:
Back to Top
Description: Maximum nesting level of control constructs (if, while, for, switch, etc.) in the function.
Metric available for:
C/C++: Project, File, Function
C#: Project,Method
Ada: Project,Type,Entry,Function,Package,Procedure,Protected,Task
Fortran: Project,Module,Block Data,Function,Program,Subroutine
Java: Project,Method
Jovial: Project,Subroutine
Pascal: Project,Compunit,Function,Procedure
Cobol: File,Program
Web: Project,File
C#: Project,Method
Ada: Project,Type,Entry,Function,Package,Procedure,Protected,Task
Fortran: Project,Module,Block Data,Function,Program,Subroutine
Java: Project,Method
Jovial: Project,Subroutine
Pascal: Project,Compunit,Function,Procedure
Cobol: File,Program
Web: Project,File
Click Here To Download Understand!
Back to Top
Minimum Knots
API Name: MinEssentialKnots
Description: Minimum Knots after structured programming constructs have been removed.
Metric available for:
Back to Top
Description: Minimum Knots after structured programming constructs have been removed.
Metric available for:
C/C++: Project,Function
Ada: Project,Type,Entry,Function,Package,Procedure,Protected,Task
Ada: Project,Type,Entry,Function,Package,Procedure,Protected,Task
Click Here To Download Understand!
Back to Top
Lack of Cohesion in Methods
API Name: PercentLackOfCohesion
Research: Chidamber & Kemerer - Lack of Cohesion in Methods (LCOM/LOCM)
Description: 100% minus average cohesion for class data members. Calculates what percentage of class methods use a given class instance variable. To calculate, average percentages for all of that class'es instance variables and subtract from 100%. A lower percentage means higher cohesion between class data and methods.
Metric available for:
Back to Top
Research: Chidamber & Kemerer - Lack of Cohesion in Methods (LCOM/LOCM)
Description: 100% minus average cohesion for class data members. Calculates what percentage of class methods use a given class instance variable. To calculate, average percentages for all of that class'es instance variables and subtract from 100%. A lower percentage means higher cohesion between class data and methods.
Metric available for:
C/C++: Class,Struct,Union
C#: Class,Struct
Ada: Package
Java: Class,Interface
Pascal: Class,Interface
C#: Class,Struct
Ada: Package
Java: Class,Interface
Pascal: Class,Interface
Click Here To Download Understand!
Back to Top
Comment to Code Ratio
API Name: RatioCommentToCode
Description: Ratio of number of comment lines to number of code lines. Note that because some lines are both code and comment, this could easily yield percentages higher than 100
Metric available for:
Back to Top
Description: Ratio of number of comment lines to number of code lines. Note that because some lines are both code and comment, this could easily yield percentages higher than 100
Metric available for:
C/C++: Project,File,Class,Struct,Union,Function
C#: Project,File,Class,Method
Ada: Project,File,Type,Entry,Function,Package,Procedure,Protected,Task
Fortran: Project,File,Block Data,Function,Program,Subroutine
Java: Project,File,Class,Interface,Method
Jovial: Project,File,Module,Subroutine
Pascal: Project,File,Class,Interface,Compunit,Function,Procedure
PL/M: Project,File,Procedure
VHDL: Project,File,Procedure,Function,Architecture
Cobol: File,Program
Web: Project,File
C#: Project,File,Class,Method
Ada: Project,File,Type,Entry,Function,Package,Procedure,Protected,Task
Fortran: Project,File,Block Data,Function,Program,Subroutine
Java: Project,File,Class,Interface,Method
Jovial: Project,File,Module,Subroutine
Pascal: Project,File,Class,Interface,Compunit,Function,Procedure
PL/M: Project,File,Procedure
VHDL: Project,File,Procedure,Function,Architecture
Cobol: File,Program
Web: Project,File
Click Here To Download Understand!
Back to Top
Sum Cyclomatic Complexity
API Name: SumCyclomatic
Research: Chidamber & Kemerer - Weighted Methods per Class (WCM)
Description: Sum of cyclomatic complexity of all nested functions or methods.
Metric available for:
Back to Top
Research: Chidamber & Kemerer - Weighted Methods per Class (WCM)
Description: Sum of cyclomatic complexity of all nested functions or methods.
Metric available for:
C/C++: Project,File,Class,Struct,Union
C#: Project,File,Class,Struct
Java: Project,File,Class,Interface
Pascal: Project,File,Class,Interface
Cobol: File
Web: Project,File,PHP Class,PHP Interface
C#: Project,File,Class,Struct
Java: Project,File,Class,Interface
Pascal: Project,File,Class,Interface
Cobol: File
Web: Project,File,PHP Class,PHP Interface
Click Here To Download Understand!
Back to Top
Sum Modified Cyclomatic Complexity
API Name: SumCyclomaticModified
Description: Sum of modified cyclomatic complexity of all nested functions or methods.
Metric available for:
Back to Top
Description: Sum of modified cyclomatic complexity of all nested functions or methods.
Metric available for:
C/C++: Project,File,Class,Struct,Union
C#: Project,File,Class,Struct
Java: Project,File,Class,Interface
Pascal: Project,File,Class,Interface
Cobol: File
Web: Project,File,PHP Class,PHP Interface
C#: Project,File,Class,Struct
Java: Project,File,Class,Interface
Pascal: Project,File,Class,Interface
Cobol: File
Web: Project,File,PHP Class,PHP Interface
Click Here To Download Understand!
Back to Top
Sum Strict Cyclomatic Complexity
API Name: SumCyclomaticStrict
Description: Sum of strict cyclomatic complexity of all nested functions or methods.
Metric available for:
Back to Top
Description: Sum of strict cyclomatic complexity of all nested functions or methods.
Metric available for:
C/C++: Project,File,Class,Struct,Union
C#: Project,File,Class,Struct
Java: Project,File,Class,Interface
Pascal: Project,File,Class,Interface
Cobol: File
Web: Project,File,PHP Class,PHP Interface
C#: Project,File,Class,Struct
Java: Project,File,Class,Interface
Pascal: Project,File,Class,Interface
Cobol: File
Web: Project,File,PHP Class,PHP Interface
Click Here To Download Understand!
Back to Top
Sum Essential Complexity
API Name: SumEssential
Description: Sum of essential complexity of all nested functions or methods.
Metric available for:
Back to Top
Description: Sum of essential complexity of all nested functions or methods.
Metric available for:
C/C++: Project,File,Class,Struct,Union
C#: Project,File,Class,Struct
Java: Project,File,Class,Interface
Cobol: File
C#: Project,File,Class,Struct
Java: Project,File,Class,Interface
Cobol: File
Click Here To Download Understand!
Back to Top
