Page tree
Skip to end of metadata
Go to start of metadata

如在使用CAST工程仪表盘CAST工程仪表盘- CED 的一部分)中所解释的,技术债务信息显示在大多数用户配置文件页面中。下面几节将解释如何计算技术债务值,以及如何在必要时修改默认值。技术债务配置是通过评估模型编辑器CAST管理器中进行的。

计算

技术债务按应用基础计算,如下:  

注意高度严重违规是指在评估模型中定义的违规质量规则的权重

  • 低度=权重1、2或3
  • 中度=权重4、5或6
  • 高度=权重7、8或9

每个应用的总技术债务

( (% of low severity violations to be fixed  X  # of low severity violations in Application) X
(Weighted time, in hours, for fixing low severity violations) +
(% of medium severity violations to be fixed  X # of medium severity violations in Application) X
(Weighted time, in hours, for fixing medium severity violations) +
(% of high severity violations to be fixed  X  # of high severity violations in Application) X
(Weighted time, in hours, for fixing high severity violations) ) X
Cost per staff hour to fix violations

当前版本中每个应用添加的技术债务

( (% of low severity violations to be fixed  X  # of low severity violations added in current release of Application) X
(Weighted time, in hours, for fixing low severity violations) +
(% of medium severity violations to be fixed  X  # of medium severity violations added in current release of Application) X
(Weighted time, in hours, for fixing medium severity violations) +
(% of high severity violations to be fixed  X # of high severity violations added in current release of Application) X
(Weighted time, in hours, for fixing high severity violations) ) X
Cost per staff hour to fix violations 

关于添加违规

增加低/中/高度的违规行为包括:

  1. 包括添加和更新的对象
  2. 应用中不存在前一个快照
  3. 包含一个具有适当权重的质量规则

这意味着:

  • 某些配置更改可能导致在不“添加违规”的情况下更改给定程度的违规次数。例如:在快照之间更改质量规则的权重会导致低/中/高度违规的数量发生变化,而没有任何特定的“附加违规”。
  • 一些有违规但没有相关校验和(即值为0)的对象不会显示在添加的技术债中(注意,检查和值是通过CAST AIP为分析产生的对象计算的,并用于确定对象在连续快照之间是否发生了更改,但是,CAST AIP不能确定某些对象的校验和,而这些对象的校验和值总是0)

在这种情况下,新快照中的技术债务总数不同于前快照中的技术债务总数+技术债务增加总数-技术债务移除总数

在当前版本中,每个应用的技术债务已被消除

( (% of low severity violations to be fixed  X  # of low severity violations removed in current release of Application) X
(Weighted time, in hours, for fixing low severity violations) +
(% of medium severity violations to be fixed  X  # of medium severity violations removed in current release of Application) X
(Weighted time, in hours, for fixing medium severity violations) +
(% of high severity violations to be fixed  X # of high severity violations removed in current release of Application) X
(Weighted time, in hours, for fixing high severity violations) ) X
Cost per staff hour to fix violations

关于删除违规

删除违规低/中/高度的违规行为为:

  1. 涉及删除和更新对象
  2. 在当前快照的应用中不再存在
  3. 包含一个具有适当权重的质量规则

这意味着

  • 某些配置更改可能导致在不“删除违规”的情况下更改给定程度的违规次数。例如在快照之间更改质量规则的权重会导致低/中/高度违规的数量发生变化,而不会出现任何“已删除的违规”。
  • 但是一些对象没有违规相关校验和(即0值)不显示技术债务删除(注意校验和值计算了CAST IP的对象产生的分析,用于确定一个对象连续快照之间的变化,然而CAST AIP不能确定特定的对象和这些对象的校验和总是有校验和值为0)。
  • 排除的违规行为不显示在技术债务剔除

在这种情况下,新快照中的技术债务金额不同于前快照中的技术债务金额+技术债务增加额-技术债务移除额

计算——变量说明

上面计算中列出的变量描述如下。

有关修改标记为可配置= Yes的所有变量,请参见下面题为修改技术债务计算变量的部分。

变量名称

说明

可配置

默认值

% of low severity violations to be fixed

只有部分低度违规将被修复

0%

# of low severity violations

所有健康因子中的低度违规(1、2、3级)的实际#

否(直接来自分析)

不适用

# of low severity violations added in current release

当前版本中添加的所有健康因子中的低度违规(1、2、3级)的实际#

否(直接来自分析)

不适用

# of low severity violations removed in current release

当前版本中删除的所有健康因子中的低度违规(1、2、3级)的实际#

否(直接来自分析)

不适用

% of medium severity violations

只有部分中度违规将被修复

50%

# of medium severity violations

所有健康因子中的中度违规(4、5、6级)的实际#

否(直接来自分析)

不适用

# of medium severity violations added in current release

当前版本中添加的所有健康因子中度违规(4、5、6级)的实际#

否(直接来自分析)

不适用

# of medium severity violations removed in current release

在当前版本中删除的所有健康因子严重违规(级别4、5、6)的实际#

否(直接来自分析)

不适用

% of high severity violations

只有部分高度违规将被修复

100%

# of high severity violations

所有健康因子高度违规(7、8、9级)的实际#

否(直接来自分析)

不适用

# of high severity violations added in current release

当前版本中添加的所有健康因子高度违规(7、8、9级)的实际#

否(直接来自分析)

不适用

# of high severity violations removed in current release

在当前版本中删除的所有健康因子严重违规(级别7、8、9)的实际#

否(直接来自分析)

不适用

修正低度违规的加权时间,以小时为单位

并不是所有的违规都需要相同的时间,因此使用加权时间来修复违规。

加权的基础上分布的困难程度以解决违规。违规行为将分为以下类别:


- 容易
- 困难
- 非常困难

Wt.修复低级安全性违规的时间可以使用下面描述的变量赋予一个新值:


- (Low_%Easy X Low_Time_Easy) + (Low_%Hard+ X Low_Time_Hard) + (Low_%Very_Hard X Low_Time_Very_Hard)

例如使用以下变量:

(0.90 X 0.5) + (0.09 x 1) + (0.01 x 8) = 0.62


0.62 小时


Low_%Easy = % of violations which are "Easy"

N/A (中间计算)

90%


Low_Time_Easy = Time take for fixing "Easy" violations

N/A (中间计算)

0.5 小时


Low_%Hard = % of violations which are "Hard"

N/A (中间计算)

9%


Low_Time_Hard = Time take for fixing "Hard" violations

N/A (中间计算)

1 小时


Low_%Very_Hard = % of violations which are "Very_Hard"

N/A (中间计算)

1%


Low_Time_Very_Hard = Time take for fixing "Very_Hard" violations

N/A (中间计算)

8 小时

修正中度违规的加权时间,以小时为单位


并不是所有的违规都需要相同的时间,因此我们使用加权时间来修复违规。

加权的基础上分布的困难程度以解决违规。违规行为将分为以下类别:


- 容易
- 困难
- 非常困难

Wt.修复中度违规的时间可以使用下面描述的变量赋予一个新值:


- (Medium_%Easy X Medium_Time_Easy) + (Medium_%Hard X Medium_Time_Hard) + (Medium_%Very_Hard X Medium_Time_Very_Hard)

例如使用以下变量:

(0.90 X 0.5) + (0.09 x 4) + (0.01 x 16) = 0.97

0.97 小时


Medium_%Easy = % of violations which are "Easy"

N/A (中间计算)

90%


Medium_Time_Easy = Time take for fixing "Easy" violations

N/A (中间计算)

0.5 小时


Medium _%Hard = % of violations which are "Hard"

N/A (中间计算)

9%


Medium _Time_Hard = Time take for fixing "Hard" violations

N/A (中间计算)

4 小时


Medium _%Very_Hard = % of violations which are "Very_Hard"

N/A (中间计算)

1%


Medium _Time_Very_Hard = Time take for fixing "Very_Hard" violations

N/A (中间计算)

16 小时

修正高度违规的加权时间,以小时为单位

并不是所有的违规都需要相同的时间,因此使用加权时间来修复违规。

加权的基础上分布的困难程度以解决违规。违规行为将分为以下类别:


- 容易
- 困难
- 非常困难

Wt.修复高度违规的时间可以使用下面描述的变量赋予一个新值:


- (High_%Easy X High _Time_Easy) + (High _%Hard X High _Time_Hard) + (High _%Very_Hard X High _Time_Very_Hard)

(0.80 X 1) + (0.19 x 8) + (0.01 x 24) = 2.56

2.56 小时


High _%Easy = % of violations which are "Easy"

N/A (中间计算)

80%


High _Time_Easy = Time take for fixing "Easy" violations

N/A (中间计算)

1 小时


High _%Hard = % of violations which are "Hard"

N/A (中间计算)

19%


High _Time_Hard = Time take for fixing "Hard" violations

N/A (中间计算)

8 小时


High _%Very_Hard = % of violations which are "Very_Hard"

N/A (中间计算)

1%


High _Time_Very_Hard = Time take for fixing "Very_Hard"violations

N/A (中间计算)

24 小时

每小时的开发成本

不同的人(架构师、领导、开发人员、QA资源等)可能处理违规的混合比率。

$75/小时

修改技术债务计算变量    

若要修改上一节中列出的任何变量,请使用CAST管理器

  • 打开在评估模型编辑器中默认提供的评估模型(注意这个评估模式是默认的模式兼容当前版本的CAST——即它不包含任何自定义其可能已经从以前版本的迁移CAST),并且确保在Expert模式:

请注意如果决定使用这个默认评估模型,必须确保CAST仪表盘服务被配置为使用。

  • 点击Sizing Model选项卡,向下滚动到Sizing Measures列表的最底部:

  • 选择Technical Debt测量并深入到Parameters选项卡。这将显示可以修改的参数:

  • 注意要修改的参数,然后移动到Contextual Parameters选项卡中。     
  • 在列表中找到参数并选择——这将显示Default Value如下所示:   

  • 修改默认值字段中的值。    
  • 重复您想要修改的每个技术债务参数。    
  • 然后需要生成一个新快照,以便新值生效。     
  • No labels