除了质量三问,如何应对质量管理5大灵魂拷问?
什么是软件质量?什么是合格的软件?
我们开发的软件满足涉众的需求吗?
它易用吗?安全吗?可靠吗?容易维护吗?容易扩展吗?
对于任何一个组织,回答这样的问题是很重要的。
虽然我们知道软件公司常常按照一种含糊的、大概的质量观念来运转,并且容忍了大多数工程学科不能允许的缺陷。
但是,产品质量也反映了产品背后的研发过程。一个高质量的研发过程可以使开发组织避免返工、反反复复修改设计/代码的时间。
如果整个公司、整个团队在软件质量、质量管理上达成一致的、正确的认知,就会有更多的时间来思考如何增加产品价值和关注质量细节,促进创新和开发出创造性的功能特性,最终交付良好质量的产品,才能最大程度地降低浪费,提高研发效能。
在软件研发过程中,大家往往关注进度、交付速度,经常忽视质量。如果你提质量,容易被人挑战、被拷问。除了质量三问 :质量是谁(什么)?质量从哪里来?到哪里去?质量管理还遇到五大拷问。下面就来回答来自质量管理的五大灵魂拷问。
1. 质量究竟有哪些价值?
仅仅认为质量重要是不够的,必须认识到质量的价值。如果没有认识到质量的价值,久而久之也会忽视质量。
质量的价值在哪里?最明显的价值就是让用户喜欢使用你的产品和服务。因为质量越高,客户越满意。如果客户喜欢你的产品,就会愿意掏钱购买,而且形成好的口碑,一传十、十传百、...带来更多的客户,所以质量好,就会给公司带来客户和利润,提高公司的竞争力。
质量好,还能体现自己公司和其它公司的差异性,为自己公司带来很高的利润率,苹果公司生产的iPhone手机就是一个典型的例子。从2010年开始,全球智能手机的利润,苹果公司占有率从40+%提高到2015年的92%,这是多么不可想象的事。
2. 质量的价值如何度量?
由美国商业部门的国家标准和技术机构(NIST)委托的一项研究发现,软件缺陷使美国经济每年付出近600亿美金的成本。研究也发现,大约百分之八十的软件资金都被软件开发人员确定和纠正缺陷消耗掉了。在另一项研究中,Standish 组织报告,每年被取消的软件开发项目花费了组织550亿美金。很明显,糟糕的软件质量--和糟糕的软件开发过程--是商业利益率的最大消耗。
要度量质量的价值,挺难的,需要引入一个“劣质成本(COPQ)”的概念,即产生一个缺陷会给企业增加多大的成本。某需求缺陷,如果没在需求、设计发现,而是在编程时发现实现不了,然后需要改需求、设计,就造成返工,这返工的成本就属于COPQ。如果这个需求缺陷在系统测试时发现,那么就需要改需求、设计和代码,还要重新测试,这时会带来更大的成本。如果这需求缺陷在测试也没被发现,遗漏到生产线上,带来的COPQ会大得多。
通过劣质成本的核算,就能体现质量的价值。所以从这个角度看,测试也不是成本中心,当在测试上投入的成本低于COPQ时,测试就是利润中心,即保障性成本小于 劣质成本是合算的。
劣质成本常常被比作冰山一角,看不到的损失要大得多!因为直接看到的(能核算的)成本是很小的一部分,还要大量看不见的损失:如品牌、丢失订单、被客户抛弃。就像昨天谈到的“微盟系统遭恶性删库事件”,不仅仅是股票市值的损失、也不仅仅是几天不能提高服务而带来的营业额的损失,还有大量的损失(如公信力丧失、丢失客户等)无法计算。
为了提高质量的价值,提高管理的效益,美国质量大师提出“零缺陷质量管理思想”,就是一次把事情就做对,成本最低。甚至说“质量是免费的”,并不是人们常常所想的:质量越高、投入的质量保障成本越高。其实,不一定是这样,要求研发人员一次把事情就做对,在做之前会增加策划、思考的时间,但后续测试、改Bug时间会少多了,效率反而提高了,成本降低了,而不是提高。
3. 如何明确质量目标?
4. 质量指标和业务指标如何衔接?
质量管理的成功最终要反映在业务上,所以质量指标必须和业务挂钩,这就是人们通常用KPI、OKR来确定个人或团队的绩效考核指标。业务目标会分解到某些质量指标上,最好的工具就是质量屋QFD(Quality Function Deployment, 质量功能展开)。
5.究竟如何能搞好质量管理?
包括先进的质量管理平台
参考: