Answers:
高校图书馆可能有一些有关度量的书,包括“ 软件度量”和“ 软件质量工程中的度量和模型”。那两个应该给你一个起点。在工业界,几乎没有公司拥有任何类型的度量标准测量程序。
大多数公司是否有某种方法来衡量有意义的指标?
Visual Studio包含一些可以帮助您入门的代码分析工具。大多数公司甚至没有什么东西可以衡量最糟糕的指标:代码行。“做到这一点”似乎是行业中压倒性的推动力,而对于可维护性的关注却很少引起管理者的关注,即“今年我将获得奖金吗?” 和“将在我答应的时间内完成吗?” 即使产品每年都随着增量变化而结转,这两个问题使开发人员对可维护性和错误检测/预防的关注相形见war。
哪些指标(单个或组合)可帮助您缩小项目范围和估算范围?
我发现循环复杂性和耦合性是代码存在漏洞或维护难度的有力指标。如果圈复杂度大约为20,则我发现几乎不可能进行测试(因为通过代码最多有2 ^ 20条路径),应该分解为较小的部分。您无法消除复杂性,但可以将其切成更易于管理的块。
代码覆盖率%大大降低了每次迭代的时间,您是否会提醒开发人员该问题
我发现大多数经理都关心签入的数量和已修复的错误的数量。我现在的经理反对单元测试(他认为这是浪费时间),而我以前的经理则认为花在单元测试上的时间本来应该是写它的时间。
开发人员使用的规范论据是,如果您衡量某事,那只会是您得到的。该论点来自唯一的度量标准是代码行的想法。
In the industrial world, very few companies have any sort of metric measurement program at all.
CMMI评分为2或更高的任何公司都将制定度量/指标分析程序。度量标准的收集是成熟度2级的要求。CMMI成熟度级别4需要基于这些度量和指标以及诸如根本原因分析之类的事情来对已识别的问题采取行动的定量项目管理。有许多组织被评定为CMMI 4级(或5级)。
我在谈论软件指标时,演讲者提出了一些恕我直言的有见地的观点。我本人对这些东西没有什么经验,但我仍然很感兴趣,也很受启发,但是我不能说这是对还是错。
主要思想是:
因此,要解决此问题:
这样,当票据被快速修复时,人们可以看到代码质量是否下降。另外,当错误数据库似乎没有发生太多事情时,随着重构的进行,代码质量可能会提高。
总结:重要的是这种动态行为,它为您提供信息而不是原始数据(这将是单个指标的值)。
我计划根据此方案在装有CI的熔岩灯旁边的宽屏电视上放置一些图形。;)