圈复杂度 Cyclomatic Complexity
圈复杂度 (Cyclomatic Complexity) 是一种软件度量指标,由 Thomas J. McCabe Sr. 在 1976 年提出,用于衡量程序的复杂性,相关论文成果为「A Complexity Measure」。这篇论文发表在了 IEEE Transactions on Software Engineering 上,是软件工程领域的经典之作。论文中,McCabe 定义了圈复杂度的计算方法,即著名的公式 V(G) = E – N + 2P,其中 E 是边数,N 是节点数,P 是程序的连接组件数 。圈复杂度的提出为软件测试和维护提供了重要的理论基础。它可以用来评估程序的复杂程度,指导测试用例的设计,预测软件的缺陷倾向,以及评估软件的可维护性。