Measuring the Psychological Complexity of Software Maintenance Tasks with the Halstead and McCabe Metrics
Issue No.02 - March (1979 vol.5)
B. Curtis , Information Systems Programs, Space Division, General Electric Company
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.
structured programming, Commenting, complexity metrics, documentation, Halstead's E, human factors in software engineering, McCabe's u(G), mnemonic variable names, modem programming practices modifica-tions, software science
B. Curtis, S.B. Sheppard, P. Milliman, M.A. Borst, T. Love, "Measuring the Psychological Complexity of Software Maintenance Tasks with the Halstead and McCabe Metrics", IEEE Transactions on Software Engineering, vol.5, no. 2, pp. 96-104, March 1979, doi:10.1109/TSE.1979.234165