QA的产生过程
国外的软件行业比国内的软件行业成型大约要早30年左右,这30多年的历程让国外的研发团队走过了小团队到大团队到异地多团队的全过程。
于是,在这样复杂的配合场景下就遇到了很多很多的问题,于是,在研发管理和过程层面,大约是在上世纪九十年代初期出现了QA的职位。
QA的产生就是发现,在常规的管理过程中,项目经理对研发过程内部会因为种种原因进行一些妥协和内部的便利操作,而这些操作的结果肯定会造成研发过程与企业的标准过程产生较大的偏差,而带来一些不稳定的因素,也就是一些风险,这些风险往往是身在项目组内的技术人员刻意忽视或者没有意识到。于是,QA就需要根据自己的经验,配合公司规定的标准研发过程,对项目组内的执行方式进行验证和分析,确定是否有风险的存在。
而这个过程,就需要QA一方面对公司的研发过程要理解到位,另一方面必须有十分丰富的研发经验,以便于理解技术团队操作的原因,并将发现的问题与技术团队进行沟通,得到谅解(不是简单的对抗,需要很丰富的经验,也需要很高的情商,否则是无法有效的解决问题的),把风险告知团队和企业高层。
到这里,其实我们可以看到QA的职责对其经验的要求有多高了。
QA还是QC
QA与QC是不同的,但是都专注于质量,QA进入国内的时间是在2001年前后,而QC要早两年左右,主要是软件行业初步成形后,工作的分工合作而产生的基本要求使得QC必须出现。
QA则属于较高层面的管理诉求,其目的前面已经写了,由于其对软件工程过程的要求点不同,所以,一般来说,QA需要有丰富的软件研发经验,编码测试经验都需要有,否则,他往往无法判断所发现的过程问题是否是问题,也无法和技术人员有效的沟通交流,只是作为记录,那就不是QA了。
而QC是什么呢?这才是测试。
测试工作的目的就是产品结果的质量控制,所以,英文为QC,Quality Control。其实,我们在很多商品上都可以看到有个圆形的贴,上面写着:QC passed,讲得就是这个。