我们将要考虑的另一组指标称为”
信息流指标”
。信息流度量的基础基于以下概念, 即最简单的系统由组件组成, 而这些组件所做的工作以及如何将它们组合在一起, 可以确定系统的复杂性。以下是信息流中使用的工作定义:
组件:通过将(软件)系统分解为组成部分而标识的任何元素。
内聚性:组件执行单个功能的程度。
耦合:该术语用于描述同一系统中一个组件与另一个组件之间的链接程度。
信息流度量标准通过观察系统组件或模块之间的信息流来处理这种类型的复杂性。该指标由Henry和Kafura给出。因此, 它也被称为亨利和卡夫拉的公制。
该度量基于对系统模块之间信息流的度量。由于系统组件之间的互连, 它对复杂性很敏感。这种措施包括将软件模块的复杂性定义为模块中包含的程序的复杂性之和。由于以下两个因素, 过程会增加复杂性。
- 过程代码本身的复杂性。
- 由于过程与其环境的联系而导致的复杂性。第一个因素的影响已通过LOC(代码行)度量包括在内。为了量化第二个因子, Henry和Kafura定义了两个术语, 即FAN-IN和FAN-OUT。
扇出:扇出是该过程的本地流数加上该过程更新的数据结构数。
【一分钟了解什么是信息流指标】程序复杂度=长度*(扇入*扇出)** 2
文章图片
推荐阅读
- 实体关系图是什么(怎么使用?图文详解)
- 什么是Halstead软件指标()
- 功能点(FP)分析详细解释
- 扩展功能点(EFP)指标详细解释
- 微信漂流瓶在啥地方?_微信
- 微信语音没声音怎样回事?微信语音没声音的处理办法_微信
- 微信头像无法更改怎样办?微信个人资料啥时候可以更改?_微信
- 微信开发用啥语言?微信公众平台开发需要啥语言?_微信
- 我的微信不见了怎样办?微信不见了的处理办法_微信