NASA - National Aeronautics and Space Administration
Follow this link to skip to the main content
+ Site Help & Preferences
Go
ABOUT NASA LATEST NEWS MULTIMEDIA MISSIONS MyNASA WORK FOR NASA

+ NASA Home
+ IVV Home
Metrics Data Program
MDP HOME
WHAT IS THE MDP?
CONTACT THE MDP TEAM
PROJECT RECRUITING
REPOSITORY OVERVIEW
REPOSITORY LISTING ACCESS
MDP Banner

HALSTEAD METRICS

Program Length | Program Volume | Program Difficulty
Intelligent Content | Programming Effort | Error Estimate | Programming Time

For all the Halstead Metrics the following is true:
n1 = count of unique operators
n2 = count of unique operands
N1 = total number of operators
N2 = total number of operands
The program vocabulary, n, is given by n = n1+n2

Program length (N)
Handle: Program Length
Description: This is a Halstead metric that includes the total number of operator occurrences and total number of operand occurrences.
Observation: This metric is generated with McCabeIQ 7.1.
Frequency: Frequency is determined by the requirements of each project.
Scale: This is one operator or operand - one count. N = N1 + N2.
Range: No maximum exists.
Usage: None currently.
Relationship: It is a measure of size.
Threshold: No known threshold.
Validation: None known.

+ Top

Program volume (V)
Handle: Program Volume
Description: This is a Halstead metric that contains the minimum number of bits required for coding the program.
Observation: This metric is generated with McCabeIQ 7.1.
Frequency: Frequency is determined by the requirements of each project.
Scale: This is V = N * log n.
Range: Unknown.
Usage: None currently.
Relationship: Related to effort.
Threshold: None.
Validation: None known.

+ Top

Program level (L)
Handle: Program Level
Description: Level at which the program can be understood.
Observation: This metric is generated with McCabeIQ 7.1.
Frequency: Frequency is determined by the requirements of each project.
Scale: This is L=(2/n1) * (n2/N2).
Range: Greater than 0.
Usage: None known.
Relationship: Unknown.
Threshold: Unknown.
Validation: One research effort identifies it as the best predictor of error when measured against McCabe complexity metrics and other Halstead metrics.

+ Top

Program difficulty (D)
Handle: Program Difficulty
Description: Level of difficulty in the program.
Observation: This metric is generated with McCabeIQ 7.1.
Frequency: Frequency is determined by the requirements of each project.
Scale: This is D=1/L.
Range: Greater than 0.
Usage: None known.
Relationship: Unknown.
Threshold: Less than .38 suggests error free code.
Validation: None.

+ Top

Intelligent content (I)
Handle: Intelligent Content
Description: Complexity of a given algorithm independent of the language used to express the algorithm.
Observation: This metric is generated with McCabeIQ 7.1.
Frequency: Frequency is determined by the requirements of each project.
Scale: This is unknown.
Range: Unknown.
Usage: None, currently
Relationship: Unknown.
Threshold: Unknown.
Validation: None known.

+ Top

Programming Effort (E)
Handle: Programming Effort
Description: Estimated mental effort required to develop the program.
Observation: This metric is generated with McCabeIQ 7.1.
Frequency: Frequency is determined by the requirements of each project.
Scale: This is E = D * V.
Range: Unknown.
Usage: None, currently.
Relationship: Unknown.
Threshold: Unknown.
Validation: None currently.

+ Top

Error Estimate (B)
Handle: Error estimate
Description: Estimated number of errors in the program.
Observation: This metric is generated with McCabeIQ 7.1.
Frequency: Frequency is determined by the requirements of each project.
Scale: This is unknown.
Range: Unlimited.
Usage: None, currently.
Relationship: Unknown.
Threshold: Unknown.
Validation: None, currently.

+ Top

Programming Time (T)
Handle: Programming time
Description: Estimated amount of time to implement the algorithm.
Observation: This metric is generated with McCabeIQ 7.1.
Frequency: Frequency is determined by the requirements of each project.
Scale: This is T= E/18.
Range: Unlimited.
Usage: None, currently.
Relationship: Unknown.
Threshold: Unknown.
Validation: None, currently.

+ Top


+ Freedom of Information Act
+ Budgets, Strategic Plans and Accountability Reports
+ The President's Management Agenda
+ Privacy Policy and Important Notices
+ Inspector General Hotline
+ Equal Employment Opportunity Data Posted Pursuant to the No Fear Act
+ Information-Dissemination Priorities and Inventories
+ USA.gov
+ ExpectMore.gov
NASA
Editor: Jay Long
NASA Official: Lisa Montgomery
Last Updated: June 10, 2008
+ Contact IV&V
+ Contact Tools Lab
+ Metrics Data Program Usage Policy