📜  软件工程中的产品度量

📅  最后修改于: 2022-05-13 01:56:18.468000             🧑  作者: Mango

软件工程中的产品度量

产品度量是软件产品在其开发的任何阶段的度量,从需求到已建立的系统。产品指标仅与软件功能相关。产品指标分为两类:

  1. 通过从正在执行的程序进行的测量收集的动态度量。
  2. 通过从系统表示(例如设计、程序或文档)进行的测量收集的静态度量。

动态指标有助于评估程序的效率和可靠性,而静态指标有助于理解、理解和维护软件系统的复杂性。动态度量通常与软件质量属性密切相关。测量特定任务所需的执行时间并估计启动系统所需的时间相对容易。这些与系统故障的效率直接相关,并且可以记录故障类型并直接关系到软件的可靠性。另一方面,静态矩阵与质量属性有间接关系。已经提出了大量这些矩阵来尝试推导和验证复杂性、可理解性和可维护性之间的关系。用于评估质量属性的几个静态指标,在这些表中给出,程序或组件长度和控制复杂性似乎是可理解性、系统复杂性和可维护性的最可靠的预测指标。软件产品指标:

S.No.Software MetricDescription
(1)Fan-in/Fan-outFan-in is a measure of the number of functions that call some other function (say X). Fan-out is the number of functions which are called by function X. A high value for fan-in means that X is tightly coupled to the rest of the design and changes to X will have extensive knock-on effects. A high value for fan-out suggests that the overall complexity of the control logic needed to coordinate the called components.
(2)Length of codeThis is measure of the size of a program. Generally, the large the size of the code of a program component, the more complex and error-prone that component is likely to be.
(3)Cyclomatic complexityThis is a measure of the control complexity of a program. This control complexity may be related to program understandability.
(4)Length of identifiersThis is a measure of the average length of distinct identifier in a program. The longer the identifiers, the more understandable  the program.
(5)Depth of conditional nestingThis is a measure of the depth of nesting of if statements in aa program. Deeply nested if statements are hard to understand and are potentially error-prone.
(6)Fog indexThis is a measure of the average length of words and sentences in documents. The higher the value for the Fog index, the more difficult the document may be to understand.