一 聊聊软件研发质量管理( 三 )


一个房子窗户破了,没有人去修补,隔不久,其它的窗户也会莫名其妙的被人打破 。在质量管理上,也很容易形成这种破窗效应 。很多工作轰轰烈烈地开了个头,然后越做声音越小,最后就悄无声息地结束,没有形成完整的闭环 。
举个例子,小Q在牵头一次重大的质量回溯工作,由于该问题涉及面广,且为历史遗留问题,所以他声势浩大地开了启动会议,乌泱泱坐了一屋子人 。后续又陆续召开几场专题分析会议,光改进措施就列了二十几条 。可因为有的措施需要长期跟踪落地、有的不具备可执行性、有的流于形式等,该回溯真正闭环的改进措施寥寥无几,改进效果可想而知 。
这种情况,建议小Q这样做:质量保证或质量改进活动中的改进措施不在多而在于精,挑选团队确实能改进或够一够能改进的,做一件成一件,有始有终;利用改进措施跟进表或借助跟踪工具,定期跟踪措施的实施情况,对于需要长期解决或者解决难度较大的措施,可以通过专项改进的形式推动 。
十、小结
以上只是总结了一些典型案例,类似的还有很多 。如果我们能做到“吾日三省吾身”:我是不是存在以上问题?我有没有针对问题做改进?我如何避免犯同样的问题?每天进步一点点,日积月累,相信量变一定会引起质变!
十一、什么是质量成本
质量成本的概念最早可以追溯到古代朴素的商品交易逻辑 。所谓“一分价钱一分货”,那时便萌发了质量成本的意识 。直到20世纪50年代,质量成本的概念才由美国质量专家A.V.菲根堡姆系统性地提出来,其定义是:为了确保产品(或服务)满足规定要求的费用以及没有满足规定要求引起损失,是企业生产总成本的一个组成部分 。
质量成本中可见的部分就像冰山上的一角,而大量的成本却隐藏在海平面以下,深不可测 。比如:某汽车制造商发现某款汽车发动机设计存在缺陷,需要全部召回 。这属于可见成本中的返工成本 。但是,因为该事件造成多起重大交通事故,引发广泛的社会舆论和关注 。该汽车的品牌美誉度一落千丈,销售量持续下滑 。这属于隐藏成本中的失去的顾客/商誉 。一般来说:隐藏成本损失至少是可见成本损失的4倍以上 。
十二、软件质量成本的构成
通常质量成本一般包括:为确保与要求一致而作的所有工作叫做一致成本,以及由于不符合要求而引起的全部工作叫做不一致成本 。其中预防成本和鉴定成本属于一致成本,而内部损失成本和外部损失成本,又统称为故障成本,属于不一致成本 。下图为一个公司收入、利润与质量成本的示意图:
与传统制造行业相比,软件行业的主要成本类型为人力成本,对外提供的是无形产品或服务,在质量成本子类划分上也有所区别 。下表为软件行业与传统行业质量成本活动和费用的构成:
增加预防成本和鉴定成本通常会提高产品质量,内部失效成本和外部失效成本也会随之减少 。反之,如果预防鉴定成本过少,将导致内外部损失成本剧增,利润急剧下降 。这就需要在成本和品质保证之间寻找一个最佳平衡点 。
十三、导致不良软件质量成本的主因
《美国不良软件质量成本:2020年报告》 中,对导致不良软件质量成本的原因进行了分析,主要原因如下图:
主因1:业务软件故障
业务软件故障主要是未解决的软件缺陷问题导致的 。这些缺陷隐藏在软件系统内部,在某个特定场景或条件下被触发,从而引发重大的软件事故,给社会、企业带来巨大的有形及无形损失 。
大家最熟知的莫过于“千年虫”问题,它与2000年开始的日历数据的存储和格式化有关 。它影响到了每天计算利率的银行、核电站、医院、交通运输等中心以及很多其他方面 。为纠正这一错误,全世界耗费了数十亿美元来升级计算机系统 。2020年在国内也发生了一起影响面较大的软件事故:当天用户打开某App,就会有一个告警弹窗提示:您使用的版本是内测版本,将于当地时间2020-03-28到期 。到期后将无法使用,请尽快下载最新版本 。虽然该问题不会对用户造成任何经济损失,但其严重影响了用户的使用体验 。