美文网首页
SQALE是什么

SQALE是什么

作者: belber | 来源:发表于2015-12-08 09:08 被阅读0次

SQALE是什么

本文将解释在SonarQube中看到的SQALE Rating指标的意思以及计算方法,并给出一个例子。


一、SQALE简介


SQALE全称是Software Quality Assessment based on Lifecycle Expectations,是一套评估代码质量的方法。主要思路计算技术债务时间占开发所有代码所需要的时间的比例(Technical Debt Ratio),并按照比例的大小划分A到D的等级。

二、如何计算Technical Debt Ratio


Technical Debt Ratio计算公式

Technical Debt Ratio = 技术债务时间 / 开发时间

技术债务时间

上图中的Debt即是技术债务时间,216d表示修复所有的Issues需要216天。

每个Issue都由SonarQube默认了修复需要的时间,虽然可以通过配置修改,但SonarQube官方表示不建议修改。

评估开发时间

开发总时间 = 每一行代码开发所需要的时间 * 代码总行数

其中每一行代码开发所需要的时间是可以配置的,默认是30min。

计算公式中可配置参数

技术债务相关参数配置页面路径是General Settings->Technical Debt,部分参数截图如下:

  • 每一行代码开发时间


  • 一天工作小时数


  • A-E等级对应的Technical Debt Ratio范围,默认值是0.1,0.2,0.5,1,表示[0,0.1]为A,(0.1,0.2]为B,(0.2,0.5]为C,(0.5,1]为D。


  • 计算单位,可选项包括复杂度、一行代码,默认是一行代码。这里值得注意,上文中为了快速说清楚,忽略了一个细节。即评估开发时间的单位可以是复杂度,公式为:
    开发总时间 = 每一个复杂度开发所需要的时间 * 总复杂度

三、一个例子



上图项目Technical Debt Ratio=5.0%,SQALE Rating=A,下面展示计算过程,其中技术债务的相关参数均为SonarQube默认值。

技术债务时间 = 216d * 8 * 60min = 103680min

开发总时间 = 每一行代码开发所需要的时间 * 代码总行数 = 30min * 68820 = 2064600min

Technical Debt Ratio = 技术债务时间 / 开发总时间 = 103680 / 2064600 = 0.05 = 5.0%

0.05 in [0,0.1],故SQALE Rating = A


created by 两害
主要参考:
http://www.sonarsource.com/products/plugins/governance/sqale/installation-and-usage/#understandingSqaleRatings

相关文章

  • SQALE是什么

    SQALE是什么 本文将解释在SonarQube中看到的SQALE Rating指标的意思以及计算方法,并给出一个...

  • 发展

    承诺是什么?努力是什么?心态是什么?理想是什么?亲情是什么?爱情是什么?朋友是什么?自己是什么?当换了环境,...

  • 我真的害怕忘记

    空气是什么 等是什么 切断是什么 我是什么 光海是什么 爱是什么 风帆是什么 你是什么 (呼吸还在吗 恐...

  • 烦恼如何被消灭

    纠结是什么?烦恼又是什么?心是什么?阴阳又是什么?境是什么?世界又是什么?扭曲是什么?变形又是什么?真实是...

  • 疑问

    误会是什么?坚持是什么?执着是什么?三观是什么?背信弃诺又是什么? 烦躁是什么?焦躁是什么?疑...

  • 一颗心的漂流

    离开的是什么 留下的是什么 挣脱的是什么 奔赴的是什么 守护的是什么 向往的是什么 生命是什么 生活是什么 爱是什...

  • 是什么就是什么

    26岁,终于知道为什么矛盾的时候无法自持,情绪化的时候疯狂到无法控制,忧郁的时候想离开这个世界。 26岁,终于...

  • 是什么?还是什么

    世界上最尴尬的事,是否就是,胸中有千言万语,落笔却一句难寻。 现在2018年01月25日凌晨两点,某个...

  • 是什么就是什么

    任何一项任务都有其专属的评判指标,有的人能达到,有的人达不到,这也就使得一部分人成为领导或专家,一部分人只能成为下...

  • 廿

    而孤独是什么? 心冷是什么? 情是什么? 你是什么?

网友评论

      本文标题:SQALE是什么

      本文链接:https://www.haomeiwen.com/subject/wceehttx.html