• 什么是软件质量?什么是合格的软件?

  • 我们开发的软件满足涉众的需求吗?

  • 它易用吗?安全吗?可靠吗?容易维护吗?容易扩展吗?

对于任何一个组织,回答这样的问题是很重要的

虽然我们知道软件公司常常按照一种含糊的、大概的质量观念来运转,并且容忍了大多数工程学科不能允许的缺陷。

但是,产品质量也反映了产品背后的研发过程。一个高质量的研发过程可以使开发组织避免返工、反反复复修改设计/代码的时间

如果整个公司、整个团队在软件质量、质量管理上达成一致的、正确的认知,就会有更多的时间来思考如何增加产品价值和关注质量细节,促进创新和开发出创造性的功能特性,最终交付良好质量的产品,才能最大程度地降低浪费,提高研发效能。

在软件研发过程中,大家往往关注进度、交付速度,经常忽视质量。如果你提质量,容易被人挑战、被拷问。除了质量三问 :质量是谁(什么)?质量从哪里来?到哪里去?质量管理还遇到五大拷问。下面就来回答来自质量管理的五大灵魂拷问。

1. 质量究竟有哪些价值?

仅仅认为质量重要是不够的,必须认识到质量的价值。如果没有认识到质量的价值,久而久之也会忽视质量。

质量的价值在哪里?最明显的价值就是让用户喜欢使用你的产品和服务。因为质量越高,客户越满意。如果客户喜欢你的产品,就会愿意掏钱购买,而且形成好的口碑,一传十、十传百、...带来更多的客户,所以质量好,就会给公司带来客户和利润,提高公司的竞争力

质量好,还能体现自己公司和其它公司的差异性,为自己公司带来很高的利润率,苹果公司生产的iPhone手机就是一个典型的例子。从2010年开始,全球智能手机的利润,苹果公司占有率从40+%提高到2015年的92%,这是多么不可想象的事。

质量管理的作用是,为企业找利润,让企业更好地活下去。而且,当软件研发过程及其产品处在高质量水平,还能提升产品交付速度、部署速度,从而更好地对业务变化及时做出响应,维持或提高竞争优势。

质量好,有了更高的利润,生产的压力不会太大,在研发上投入也会加大,进一步促进企业和员工的创新

2. 质量的价值如何度量?

由美国商业部门的国家标准和技术机构(NIST)委托的一项研究发现,软件缺陷使美国经济每年付出近600亿美金的成本。研究也发现,大约百分之八十的软件资金都被软件开发人员确定和纠正缺陷消耗掉了。在另一项研究中,Standish 组织报告,每年被取消的软件开发项目花费了组织550亿美金。很明显,糟糕的软件质量--和糟糕的软件开发过程--是商业利益率的最大消耗

要度量质量的价值,挺难的,需要引入一个“劣质成本(COPQ)”的概念,即产生一个缺陷会给企业增加多大的成本。某需求缺陷,如果没在需求、设计发现,而是在编程时发现实现不了,然后需要改需求、设计,就造成返工,这返工的成本就属于COPQ。如果这个需求缺陷在系统测试时发现,那么就需要改需求、设计和代码,还要重新测试,这时会带来更大的成本。如果这需求缺陷在测试也没被发现,遗漏到生产线上,带来的COPQ会大得多。

通过劣质成本的核算,就能体现质量的价值。所以从这个角度看,测试也不是成本中心,当在测试上投入的成本低于COPQ时,测试就是利润中心,即保障性成本小于 劣质成本是合算的。

劣质成本常常被比作冰山一角,看不到的损失要大得多!因为直接看到的(能核算的)成本是很小的一部分,还要大量看不见的损失:如品牌、丢失订单、被客户抛弃。就像昨天谈到的“微盟系统遭恶性删库事件”,不仅仅是股票市值的损失、也不仅仅是几天不能提高服务而带来的营业额的损失,还有大量的损失(如公信力丧失、丢失客户等)无法计算。

为了提高质量的价值,提高管理的效益,美国质量大师提出“零缺陷质量管理思想”,就是一次把事情就做对,成本最低。甚至说“质量是免费的”,并不是人们常常所想的:质量越高、投入的质量保障成本越高。其实,不一定是这样,要求研发人员一次把事情就做对,在做之前会增加策划、思考的时间,但后续测试、改Bug时间会少多了,效率反而提高了,成本降低了,而不是提高。

3. 如何明确质量目标?

质量目标包括过程质量目标和所交付的产品质量目标。可以把重点放在产品质量的目标制定上,通过产品质量的目标来驱动过程质量。而产品质量的目标制定,主要依据下列质量模型,再结合自己特定的产品特性、应用场景和客户特定需求,进一步分解为特定的质量目标。可以参考我写的《全程软件测试(第3版)》第14章来制定。

4. 质量指标和业务指标如何衔接?

质量管理的成功最终要反映在业务上,所以质量指标必须和业务挂钩,这就是人们通常用KPI、OKR来确定个人或团队的绩效考核指标。业务目标会分解到某些质量指标上,最好的工具就是质量屋QFD(Quality Function Deployment, 质量功能展开)。

5.究竟如何能搞好质量管理?

首先是领导力:领导/管理层要拥有正确的质量价值观,如TQM、零缺陷管理等思想,重视质量,领导质量管理工作。其次,是整个组织的质量意识和质量文化,就像上面提到的“认可质量价值”,把质量放在第一位,而不是把进度放在第一位。

质量管理是一个系统的工程,从人与组织、流程、方法、技术和工具等各个方面去管理质量,做到全员、全过程的管理,还包括质量策划、质量控制、质量改进,详细可参考下个月出版的《软件质量保证与管理(第2版)》。

包括先进的质量管理平台

参考:

  • QECon演讲话题征集令到了,欢迎来接

  • 解锁人生的第三种状态

  • 质量三问

  • 软件测试灵魂三问,如何怼回去?

  • 如何做好软件工程质量管理

  • Deming的质量管理十大原则

  • 软件质量管理谁主沉浮?

  • 敏捷开发模式下的质量管理

  • ISO 9000 质量管理八项原则

  • 质量管理新理念——以员工为中心

除了质量三问,如何应对质量管理5大灵魂拷问?相关推荐

  1. 88道BAT Java面试题 助你跳槽BAT,轻松应对面试官的灵魂拷问

    88道BAT Java面试题 助你跳槽BAT,轻松应对面试官的灵魂拷问 前言: 备战金九银十逃脱不了面试官的灵魂拷问,笔者整理了88道Java面试,由于面试题太多文章没有包含答案,需要领取这些面试题答 ...

  2. 软件测试灵魂三问,如何怼回去?

    (的确有一个错别字,测试人员一眼就能发现) 这是上周参加一个闭门小型质量创新研讨会议所看到的一个slide,我拍了之后,发到朋友圈,很快被疯狂转发.风靡整个测试界,因为大家感同身受,太有共鸣了! 灵魂 ...

  3. 数据分析 - 基础原理 之 第三章:数据质量管理 - 第一节:数据质量评估

    请参考原创:https://mp.weixin.qq.com/s/ovSa7Uhv5IyKzyb-l3PHaA 前言 数据资产的重要性 数据资产是企业或组织拥有或控制,能带来未来经济利益的数据资源.越 ...

  4. 数据治理(三):数据质量管理

    ​​​​​​ 目录 ​​​​​​ 数据质量管理 一.数据质量概述 二.数据质量问题根源 三.​​​​​​​数据质量保障原则 1.​​​​​​​完整性 2.​​​​​​​准确性 3.​​​​​​​一致性 ...

  5. 软件测试灵魂三问,如何回怼?

    灵魂三问: 第 1 问:为什么这个 Bug 测不出来? 第 2 问:测试怎么测得?到底会不会测? 第 3 问:测试快点啊!为什么总是测试拖后腿,最后才报 Bug? 有朋友说: 对测试新人则是" ...

  6. 两问表和三问表哪个更少_[三问三解]关于问表和三问表的区别

    问表通过按下按掣或滑动螺栓可在需要时进行报时.最复杂的是"三问表",可对小时.刻钟和分钟报时.这一令人惊叹的功能是最难以制造和最具独占性的精密机芯之一. 问表是报时表的衍生品种.1 ...

  7. “工赋”三问:从青岛到德阳,卡奥斯如何实现跨区域复制?

    5月15日,"四川德阳·青岛海尔"共建西南工业互联网高地座谈会暨合作项目签约仪式在成都举行.海尔和卡奥斯的相关负责人与德阳市领导围绕"工赋西南"综合服务平台如何 ...

  8. 数字化转型服务管理与VeriSM(1):灵魂三问

    正在上传-重新上传取消 最近,在与一些朋友探讨企业IT未来的治理和发展时,多次谈及"数字化时代"."数字化转型"等话题.昨天(3月19日)晚上,玥悉商务咨询有限 ...

  9. 体素科技丁晓伟:医疗影像的哲学三问

    撰文 | 邱陆陆 医疗,是「死生亦大矣」层面的讨论.这个鲜少「跟风」.转变审慎到近乎迟滞的行业,领域内研究通常要落后工程技术业界五年. 而这一次深度学习的高热从自然影像蔓延到医疗影像,只用了不到两年. ...

最新文章

  1. linux多进程条件变量,Linux 多线程条件变量同步
  2. svn添加钩子hook
  3. 笔记-高项案例题-2016年上-整体管理+风险管理
  4. 链路层 ---《TCP/IP协议》卷一
  5. LeetCode_108.将有序数组转换为二叉搜索树
  6. HDU - 6184 Counting Stars(思维+三元环)
  7. php 空模块,tp5.1配置空模块,空方法
  8. matplotlib(一):散点图
  9. 二十四、Java集合框架(一)
  10. Github客户端下载以及使用方法
  11. 添加内核驱动模块(2)(mydriver.c+ Konfig+Makefile )
  12. python27安装第三方抓包库(包括libdnet)
  13. python中除法运算_python除法运算
  14. Hyperic HQ产品功能列表
  15. Essay Writing Guide
  16. python重命名异常_Python:如何忽略异常并继续?
  17. python求奇偶数和_用Python返回偶数和奇数
  18. java jstat m ccs,jstat命令使用
  19. c语言写照明系统的代码,无线LED照明系统设计(ZigBee)的设计与实现(C语言)
  20. 递推算法题:王小二刀工之王小二切大饼

热门文章

  1. 通过修改注册表优化win7性能
  2. 《论法的精神》序阅读随笔
  3. windows的dockerDesktopService在360杀毒后,无法启动的问题,
  4. 藏头诗php网站源码,四、中英翻译、歌词、藏头诗、智能聊天
  5. 宏基笔记本预装软件中英文对照表
  6. 团结AAVE挑战大空头?又热起来的老DeFi CRV 近日惊险复盘
  7. 逆向培训1——稀奇古怪
  8. latex CJK 中文字体的显示问题
  9. Ubuntu18.04 添加 windows 共享的打印机
  10. 大数据信息资料采集:58同城赶集百姓网分类网二手物品信息采集