度量标准仅测量定量评估,该评估侧重于最常用于比较和跟踪系统性能的可数值。指标用于不同的场景,例如分析模型,设计模型,源代码,测试和维护。设计建模指标允许开发人员或软件工程师评估或评估设计质量,并包括各种体系结构和组件级设计。
通过玻璃和卡片衡量:
在设计产品时,对复杂性进行有效管理非常重要。复杂性本身就意味着很难理解。我们知道系统通常很复杂,因为它们具有许多相互联系的组件,这使它很难理解。 Glass和Card是两位科学家,他们提出了三种设计复杂性度量。这些在下面给出:
- 结构复杂性–
结构的复杂性取决于模块的扇出。可以定义为:S(k) = f2out(k)
其中, f out表示模块k的扇出(扇出表示从属于模块k的模块数)。
- 数据复杂性–
数据复杂度是内部模块接口内的复杂度。它是数据的大小和复杂性。对于某些模块k,可以定义为:D(k) = tot_var(k) / [fout(k)+1]
其中tot_var是传入和传出模块的输入和输出变量的总数。
- 系统复杂度–
系统复杂度是结构和数据复杂度的组合。它可以表示为:Sy(k) = S(k)+D(k)
当结构,数据和系统复杂度增加时,总体体系结构复杂度也会增加。
复杂性指标–
复杂性指标用于衡量整个软件的复杂性。复杂度度量的计算可以借助流程图来完成。有时称为圈复杂度。圈复杂度是指示软件系统复杂度的有用度量。如果不使用复杂性指标,在设计会产生风险成本的产品时确定复杂性是非常困难且耗时的。甚至连续的复杂性分析也使项目团队和管理人员难以解决问题。测量软件复杂度可提高代码质量,提高生产率,满足体系结构标准,降低总体成本,提高健壮性等。要计算圈复杂度,可使用以下方程式:
Cyclomatic complexity= E - N + 2
其中,E是边的总数,N是节点的总数。
例子 –
在下面给出的图中,您可以看到边数和节点数。
因此,圈复杂度可以计算为–
Given,
E = 10,
N = 8
So,
Cyclomatic complexity
= E - N + 2
= 10 – 8 + 2
= 4