Abstract
Two versions of cyclomatic complexity are reanalysed and evaluated theoretically for cases of (a) modularization to eliminate duplicate code, (b) multiple entry, single exit modules, (c) single entry, multiple exit modules and (d) multiple entry, multiple exit modules. It is found that one version is focused on module-level testing whilst the other is more appropriate for system-level, integration testing.
Similar content being viewed by others
References
Baker, A.L. and Zweben, S.H. (1980) A comparison of measures of control flow complexity. IEEE Transactions of Software Engineering, 6(6), 506–512.
Baker, A.L., Bieman, J.M., Fenton, N., Gustafson, D.A., Melton, A. and Whitty, R. (1990) A philosophy for software measurement. Journal of Systems Softwares, 12, 277–281.
Basili, V.R. and Rombach, H.D. (1988) The TAME project: towards improvement-orientated software environments. IEEE Transactions of Software Engineers, 14(6), 758–773.
Berge, C. (1985) Graphs, 2nd edn (North-Holland, Amsterdam).
Bollobás, B. (1979) Graph Theory. An Introductory Course (Springer-Verlag, New York).
Card, D.N. and Glass, R.L. (1990) Measuring Software Design Quality (Prentice Hall, Englewood Cliffs, NJ).
Conte, S.D., Dunsmore, H.E. and Shen, V.Y. (1986) Software Engineering Metrics and Models (Benjamin/Cummings, Menlo Park, CA).
Curtis, B. (1979) In search of software complexity, in Workshop on Quantitative Software Models, IEEE, New York, pp. 95–106.
Davis, J.S. (1984) Chunks: a basis for complexity measurement. Information Processing and Management, 20(1), 119–127.
Deo, N. (1974) Graph Theory with Applications in Engineering and Computer Science (Prentice-Hall, Englewood Cliffs, NJ).
Evanglist, M. (1984) An analysis of control flow complexity. COMPSAC 84, (CS Press, Los Alamitos, CA) 388–396.
Feghali, I. and Watson, A.H. (1994) Clarification concerning modularization and McCabe's cyclomatic complexity. Communications of the ACM, 37(4), 91–92.
Fenton, N.E. (1991) Software Metrics: A Rigorous Approach (Chapman and Hall, London).
Fenton, N.E. (1994) Software assessment: a necessary scientific basis. IEEE Transactions of Software Engineering, 20(3), 199–206.
Fenton, N.E. and Kaposi, A.A. (1987) Metrics and software structure. Information and Software Technology, 29(6), 301–320.
Hall, N.R. and Preiser, S. (1984) Combined network complexity measures. IBM Journal of Research and Development, 28(1), 15–27.
Harary, F. (1969) Graph Theory (Addison-Wesley, Reading, MA).
Harrison, W.A. (1984) Applying McCabe's complexity measure to multiple-exit programs. Software-Practice and Experience, 14(10), 1004–1007.
Henderson-Sellers, B. (1992) Modularization and McCabe's cyclomatic complexity. Communications of the ACM, 35(12), 17–19.
Henderson-Sellers, B. and Tegarden, D. (1994) Response to ‘clarification concerning modularization and McCabe's cyclomatic complexity’. Communications of the ACM, 37(4), 92–94.
Ince, D. (1990) Software metrics an introduction. Information and Software Technology, 32, 297–303.
Kearney, J.K., Sedlmeyer, R.L., Thompson, W.B., Gray, M.A. and Adler, M.A. (1986). Software complexity measurement. Communications of the ACM, 29(11), 1044–1050.
Kitchenham, B.A. and Linkman, S.J. (1990) Design metrics in practice. Information and Software Technology, 32(4), 304–310.
Lewis, J. and Henry, S. (1989) A methodology for integrating maintainability using software metrics, in Proceedings of the Conference on Software Maintenance, Miami, FL 16–19 October, pp. 32–39.
McCabe, T. (1976) A complexity measure. IEEE Transactions of Software Engineering, 2(4), 308–320.
McCabe, T.J. and Butler, C.W. (1989) Design complexity measurement and testing. Communications of the ACM, 32(12), 1415–1425.
Sagri, M.M. (1989) Rated and operating complexity of program-an extension to McCabe's theory of complexity measure. SIGPLAN Notices, 24(8), 8–12..
Shepperd, M. (1988) A critique of cyclomatic complexity as a software metric. Software Engineering Journal, 3, 30–36.
Stark, G., Shooman, M. and Packer, R. (1991) Experience with complexity metrics for coding standards, Proceedings of the 1991 Annual Oregon Workshop on Software Metrics, Silver Falls, Oregon, 17–19 March.
Szentes, J. and Gras, J. (1986) Some practical views of software complexity metrics and a universal measurement tool, in First Australian Software Engineering Conference (ASWEC), Canberra, 14–16 May.
Tutte, W.T. (1966) Connectivity in Graphs (University of Toronto Press/Oxford University Press).
Weyuker, E.J. (1988) Evaluating software complexity measures. IEEE Transactions of Software Engineering, 14(9), 1357–1365.
Wilson, R.J. (1985) Introduction to Graph Theory, 3rd edn (Longman Scientific & Technical, Harlow, Essex).
Zuse, H. (1990) Software Complexity: Measures and Methods (Walter de Gruyter, Berlin).
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Henderson-Sellers, B., Tegarden, D. The theoretical extension of two versions of cyclomatic complexity to multiple entrylexit modules. Software Qual J 3, 253–269 (1994). https://doi.org/10.1007/BF00403560
Issue Date:
DOI: https://doi.org/10.1007/BF00403560