这是《落叶》文集里第 127 片落叶,希望你能喜欢,不为别的,只为这份坚持。
【背景】
随着很多软件企业的规模扩大化和市场需求的正规化,越来越多企业的招聘岗位里会出现“质量管理”或“质量保证”这样的岗位,这就让做测试的同学觉得有些困惑了,我每天从事的测试工作,不就是保证产品的质量吗?那“质量管理”又是个什么鬼呢?
【你问】
软件测试和质量管理是一回事吗?
【我答】
1、基本概念:
软件测试(Software Testing),是验证软件的逻辑是否正确、功能是否完整、系统是否安全和质量是否可靠的过程。软件测试的经典定义是:在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程。
质量管理(Quality Management),是指确定质量方针、目标和职责,并通过质量体系中的质量策划、质量控制、质量保证和质量改进来使其实现的所有管理职能的全部活动。并说明质量管理是各级管理者的职责,但必须由最高领导者来推动,实施中涉及到单位的全体成员。在质量管理活动中,必须考虑经济因素。
2、属性对比:
1)类型
“软件测试”是技术类型的岗位,如软件测试工程,自动化测试工程等,而“质量管理”是管理类型的岗位,如 QA(Quality Assurance)、QC(Quality Control)、QM(Quality Manager)、QE(Quality Engineer)。
2)面向的对象
“软件测试”面向的是产品,而“质量管理”面向的是过程。
3)生存周期
“软件测试”贯穿于整个产品研发生命周期(狭义上来说,它存在于“编码”之后。),而“质量管理”是贯穿于整个公司的流程体系,存在于公司所有部门的各个流程环节,软件测试只是其中一个环节而已。
4)强调
“软件测试”强调的是事后通过相应的技术活工具对产品做检查,从而保证质量,而“质量管理”强调的是在跟产品研发有关的所有环节做流程规范约束和检查,提前预防问题的发生,从而确保质量。
5)组织结构
“软件测试部门”,与“研发部门”和“项目管理部”在整个项目过程中形成三足鼎立之势,直接向技术总监汇报,而“质量管理部门”常见的则是公司级的部门,与任何部门都没有隶属关系,直接向公司管理层汇报。
3、个人补充:
1)质量管理体系是一种管理体系流程,也可以说是一种方法论,它采用的是 PDCA(戴明环) 这种核心基础方法,对大多数领域的产品质量管理都是可用且有效的;
2)我原来在公司做过2年的内审,简单说来,不管是 ISO 9000 还是 CMMI,要做的事其实“很简单”:
a)把你正在做事的流程说出来;
b)按你所说的流程去做事;
c)把你所做事和流程都记录下来;
d)检查你所做的事和流程;
e)根据检查出来的问题,持续改进并实践;
3)软件测试部门在质量管理体系里,其实可以作为一个承上启下的角色,市场/客服部门反馈上来的现网问题,测试统计分析之后,找到可以预防问题再次发生的改进点,再交由 QA 推动实施和检查,形成一个质量管理体系里的小闭环;
【无戒日更挑战营第六天】
《测试路上你问我答》里的 Q&A 1,如果是你要的,甚好!如果不是,你问,我答!
作者简介:14 年测试 + 11 年项目管理 + 11 年团队管理 = 一个测试老兵