摘要:前二讲了内部质量和外部质量,单是区分他们还远远不够,要理解他们的关系,才是软件工程质量改进的关键点。 下图表达了内部质量和外部质量的关系:内部质量决定外部质量,外部质量反映了内部质量。 这里比较好理解:架构搭得好,代码得写好,BUG少。BUG多而
前二讲了内部质量和外部质量,单是区分他们还远远不够,要理解他们的关系,才是软件工程质量改进的关键点。
下图表达了内部质量和外部质量的关系:内部质量决定外部质量,外部质量反映了内部质量。
这里比较好理解:架构搭得好,代码得写好,BUG少。BUG多而且收敛很难,代码就是一坨Shi。
我的架构师在代码走读的时候反复强调:软件工程的质量是代码一行行码出来的,这是硬核。
--内部质量决定外部质量--
糟糕的代码像一碗幼虫(worm臭虫的幼体),只要时机一到,就会变成臭虫(Bug 为缺陷)。
Worm向Bug的形成,只需要一定的条件和环境。一般内部质量足够好,外部质量表现不会太差,即使有问题,也能很快速的收敛和解决。
如开发团队实力比较强,测试版打回数趋向0、BUG重新激活率趋向0,BUG曲线是平稳向下走的。
--外部质量反映内部质量--
如果一个产品的轮次测试报告一片冒红:如BUG新增数量在几个迭代内还在一直上升、DI值居高不下、冒烟测试直接打回、BUG重新激活率大于10% 基本可以下结论:这个软件工程的内部质量是很有问题的。
BUG分布也很符合28定律,即80%的BUG由20%的代码引起的,以外部质量(测试报告、BUG Fixed时长、致命BUG等)为线索可以快速定位出问题的模块,快速修复。
内部&外部质量模型的指导意义:
外部质量的长期改进必须通过提高内部质量才可以实现;
内部质量的提升必须有针对性,外部质量可以辅助定位到核心修改点;
改进的效果最终要体现在产品的外部质量上。外部质量才是检验质量改进效果的标准。
(责任编辑:环球精益网)
|
- 上一篇:为什么质量问题会一而再、再而三?
- 下一篇:浅谈质量-精益品质落地实战应用篇
谈谈您对该文章的看