ABSTRACT
Automatable metrics of software quality appear to have numerous advantages in the design, construction and maintenance of software systems. While numerous such metrics have been defined, and several of them have been validated on actual systems, significant work remains to be done to establish the relationships among these metrics. This paper reports the results of correlation studies made among three complexity metrics which were applied to the same software system. The three complexity metrics used were Halstead's effort, McCabe's cyclomatic complexity and Henry and Kafura's information flow complexity. The common software system was the UNIX operating system. The primary result of this study is that Halstead's and McCabe's metrics are highly correlated while the information flow metric appears to be an independent measure of complexity.
References
- 1.Alexander, C. 1964. Notes on the Synthesis of Form. Harvard University Press.Google Scholar
- 2.Allen, F.E. 1974. Interprocedural Analysis and the Information Derived by it. Lecture Notes in Computer Science. 23:291-321. Springer, Wildbad, Germany. Google Scholar
- 3.Belady, L.A. and Evangelisti, C.J. 1979. System Partitioning and Its Measure. IBM Research Report RC7560.Google Scholar
- 4.Blalock, H.M. 1960. Social Statistics. McGraw-Hill. New York.Google Scholar
- 5.Brooks, F.P., Jr. 1975. The Mythical Man-Month: Essays on Software Engineering. Addison-Wesley. Google Scholar
- 6.Channon, R.N. 1974. On a Measure of Program Structure. Ph.D. Thesis. Carnegie-Mellon University. November 1974. Google Scholar
- 7.Dahl, O.J., Dijkstra, E.W. and Hoare, C.A.R. 1972. Structured Programming. Academic Press, New York. Google Scholar
- 8.Ferentz, M. 1979. Rockefeller University. Private Correspondence.Google Scholar
- 9.Funami, Y. and Halstead, M.H. 1976. A Software Physics Analysis of Akiyama's Debugging Data. Proceeding of the Symposium on Computer Software Engineering. Polytechnic Press New York. p. 133-138.Google Scholar
- 10.Gilb, T. 1977. Software Metrics. Winthrop Publishers Inc. Cambridge, Mass.Google Scholar
- 11.Halstead, M.H. 1977. Elements of Software Sciences. Elsevier, New York. Google Scholar
- 12.Hecht, H.1978. Flow Analysis of Computer Programs. North-Holland Publishing Company, New York. Google Scholar
- 13.Henry, S.M. 1979. Information Flow Metrics for the Evaluation of Operating Systems' Structure. Ph.D. Dissertation, Iowa State University, Ames, Iowa. Google Scholar
- 14.Lions, J. 1977, A Commentary on the UNIX Operating System. Department of Computer Science, University of New South Wales.Google Scholar
- 15.McCabe, T.J. 1976. A Complexity Measure. IEEE Transaction on Software Engineering (2,4) Dec. 1976. Google Scholar
- 16.Ritchie, D.M. and Thompson, K. 1974. The UNIX Time-Sharing System. CACM (17,7) July 1974. p. 365-375. Google Scholar
- 17.Schuster, D.1977. On the Specification and Quantification of Software Performance Objectives. Proc. ACM '77(1977 Annual Conference) October 1977. p. 181-188. Google Scholar
- 18.Soong, N.L. 1977. A program Stability Measure. Proc. ACM '77(1977 Annual Conference) October 1977.p.163-173. Google Scholar
- 19.Thayer, T.A. Liplow, M. and Nelson, E. C. 1978. Software Reliability, North Holland pub. Co., New York.Google Scholar
- 20.Yin, B.H. and J.W. Winchester. 1978. The Establishment and Use of Measures to Evaluate the Quality of Software Designs. Proceedings of the ACM Software Quality and Assurance Workshop 3, 5:45-52. Google Scholar
Index Terms
On the relationships among three software metrics




Comments