Measuring the Psychological Complexity of Software Maintenance Tasks with the Halstead and McCabe Metrics
- 1 March 1979
- journal article
- Published by Institute of Electrical and Electronics Engineers (IEEE) in IEEE Transactions on Software Engineering
- Vol. SE-5 (2) , 96-104
- https://doi.org/10.1109/tse.1979.234165
Abstract
Three software complexity measures (Halstead's E, McCabe's u(G), and the length as measured by number of statements) were compared to programmer performance on two software maintenance tasks. In an experiment on understanding, length and u(G) correlated with the percent of statements correctly recalled. In an experiment on modification, most significant correlations were obtained with metrics computed on modified rather than unmodified code. All three metrics correlated with both the accuracy of the modification and the time to completion. Relationships in both experiments occurred primarily in unstructured rather than structured code, and in code with no comments. The metrics were also most predictive of performance for less experienced programmers. Thus, these metrics appear to assess psychological complexity primarily where programming practices do not provide assistance in understanding the code.Keywords
This publication has 8 references indexed in Scilit:
- Some basic determinants of computer programming productivityCommunications of the ACM, 1978
- A Review and Evaluation of Software ScienceACM Computing Surveys, 1978
- Testing Influences on Human Understanding of SoftwareProceedings of the Human Factors Society Annual Meeting, 1977
- Complexity of computationsCommunications of the ACM, 1977
- Measuring computer program quality and comprehensionInternational Journal of Man-Machine Studies, 1977
- A Complexity MeasureIEEE Transactions on Software Engineering, 1976
- Measuring commercial PL/I programs using Halstead's criteriaACM SIGPLAN Notices, 1976
- Natural laws controlling algorithm structure?ACM SIGPLAN Notices, 1972