质量保证(QA)是干什么的?

上一篇 / 下一篇  2012-08-20 09:19:26 / 个人分类:QA

Kx7k U)^"I3s8bF0  从事软件质量保证工作已有几个年头,经常有朋友问起软件质量保证到底是干什么的?每次总回答就是辅导和监督项目开发按照公司研发过程执行的,仔细想想实际并没有这么简单,为了让更多朋友了解质量保证这个岗位,在此结合这几年的工作经验进行如下总结,若有不对的地方欢迎大家指正与交流,谢谢!

dMN.W Nry0

'ZI p${;K0  1、什么是质量保证?

F(k+}e|[051Testing软件测试网!MH NB+|6t

  在CMMI中,质量保证的英文全称是Process and Product Quality Assurance,即过程与产品质量保证。一般大家更习惯叫质量保证或QA,它的目的是为员工和管理层提供过程和相关工作产品的客观洞察。之所以说它客观是因为:

.n^4bq K d051Testing软件测试网%b.XW:dP0h4mgH.t+V

  1)质量保证人员是一个独立于项目组之外的第三方审计人员,不能是直接参与开发、测试项目管理的人(当然实际也有例外,有些公司QA可能是兼职的);51Testing软件测试网w9u'jz*L)i?z

C-D/q9prWiM0  2)质量保证人员不受监督对象部门的绩效评价;51Testing软件测试网5{ G+ThaU'C

'X-@FJa/u%UD_0  3)质量保证人员具有独立的问题汇报渠道(可以跨级上报——QA很重要的特权)。

8tZWC#U[ n"Tw&k0

'fWl9jQTP'N5d0  2、软件质量保证工作内容?51Testing软件测试网"N U;Ldp8G0?-Kd1|1a-MW

0KW'k A F0  一般设有软件质量保证岗位的公司都有一套依据自己公司实际研发现状制定的完整研发过程体系,所有的软件质量保证人员入职一家新公司,首先需要做的事情就是学习和深刻了解该公司研发过程体系,否则后续工作是无法开展的。51Testing软件测试网$hN&?c-@*o

V9J+i1E*o7?0B0  一般软件质量保证工作内容主要分三大块:

]9Ip:n"hOj6_,Po0

Nu u4V G0  1)过程辅导51Testing软件测试网}m4~6ia(K4UB5r R+L e

51Testing软件测试网 wY rb0ur P#]

  依据研发过程体系辅导所有开发项目/版本前期及项目过程各个环节及各环节具体活动执行(含流程、方法、模板及过程中相关工具的使用)。51Testing软件测试网-T9Q }b4rJ G4H

51Testing软件测试网*{%W P|(LJn

  辅导时机:

n.H"i HXaco&Q0

EmF~0uJ,XJR0  ● 到达项目/版本计划中计划的时间点

v^t9z"dVc PN0

FivWH4N0  ● 触发事件驱动(如:邮件)

7]!@8Uv'iPP0

6hjb*sg+E0  辅导方式:51Testing软件测试网7Mu p5xZ e-l#s

51Testing软件测试网%y$mx Hk)\ |%F|

  ● 口头51Testing软件测试网/u!Kt)~+| Y9F!MQ

/Q2{s?&L%I0  ● 邮件

e @fzR0

,Rn4K7I0Mzkg0  ● 电话51Testing软件测试网deq(y,L"F#\9WG1E

&p.w!gd4W K-P0  ● 通讯工具(如:QQ、RTX等)

#j {}6RvJV051Testing软件测试网?-O:x1F-Hi

  ● 必要时可以开展正式的课堂培训(一般很少)

s:~D1x!aD0

ih[S5g:{&E0  2)过程检查51Testing软件测试网Ly@e8c1G

51Testing软件测试网%NAeGt `

  所有开发项目/版本开发过程中,依据当前的研发过程体系客观的对实际执行情况进行检查与评价。51Testing软件测试网*J!~W h_F#ui

Vib?}bCs:z4I0  检查的方式:

e,u0?bVQf.mA+hmb051Testing软件测试网W,ex,v+jWWv

  ● 参加项目会议(评审会、周会)51Testing软件测试网^-[|xP AWIQ

51Testing软件测试网}3a's!E;^q

  ● 与各个环节人员沟通

j:UobJjz051Testing软件测试网"NPZ;Ii;~k(O9EX

  ● 触发事件驱动(如:邮件)地进行检查51Testing软件测试网n3@e,B7L rQ)_ w

51Testing软件测试网2@ V\X_P G[E"b

  ● 检查工作产品51Testing软件测试网+t{ ft"B#? W:n;uc

51Testing软件测试网*zc#Z v!@ W4Oi

  3)过程问题记录与跟踪

-OJ#Ap&u051Testing软件测试网;NvZUCN|5a8W h2J

  记录过程检查过程中发现的不符合项,并与相关负责人进行沟通,了解产生问题的原因,跟踪不符合项确保问题得到解决。51Testing软件测试网'|(UX"x1|SXw

1fT'p3[5x`0  伴随上工作过程中还会有一些其他工作内容,如下:51Testing软件测试网L d@ |j#oQ2xr

P?'oU%P{0  4)向项目组和管理层提供质量保证活动结果——风险预警与问题报告。

~:I ]*m6_0

0JB4L@,L$LR0  预警风险、及早报告项目问题,使项目免受损失或少受损失,是质量保证的重要价值体现。51Testing软件测试网8m+TF3Sj1T

;D%H~3yHvf0  有经验的质量保证人员能够基于过程中了解到的项目过程质量状况和产品质量状况,及时识别出项目过程中存在的风险和发现过程问题,并定期(一般都是一周)向项目组与管理层预警风险、报告问题。51Testing软件测试网$Fr2Ve6Z_

51Testing软件测试网G-dp^t!]A~

  项目组必须在规定的期限内回复质量保证人员报告的问题。51Testing软件测试网{AlWG'\

51Testing软件测试网m*u*NM8kP(R

  对于无法协调一致的问题要及时升级。51Testing软件测试网w |*o&o UO,x G

51Testing软件测试网(m(GID#H |"S

  ● 就质量保证问题的认定双方不能达成一致。51Testing软件测试网Z@9iG-oD.N]

:~gqz'ns Al0  ● 就质量保证问题的解决计划双方不能达成一致。

-g EY9og#g&sk0

n2WVP(sJN7a^0  ● 项目组未按计划解决质量保证问题。51Testing软件测试网-O9WIT2M

CAW)]~)I[0  ● ……51Testing软件测试网Ee:iLo

g0]EX$KEl*Dg0  管理层必须及时处理升级的问题。51Testing软件测试网:jW3]!JNEi S

~0v"\(EQ i:g&N0  ● 强制项目组解决。51Testing软件测试网P-Jh e7S-j

51Testing软件测试网Z4`{NG)Xe X^:w

  ● 豁免。

K F;h#T8dNj f0jY0

t)KutvV&M0  5)严重问题根因分析

.h Y[ wMC @0

:Q:P7J4B MX+qt7Ri0  质量保证人员需要定期(如每月/季度)对记录的问题进行分类与分析,对于过程中发生的严重问题或事故,必须了解问题产生的根源才能够在后续进行 规避。一般若公司有多个质量保证人员,应以部门为单位开展问题根因分析活动,必要时还可以邀请EPG小组成员一起),问题根因分析活动结束后应向相关领导 出具根因分析报告,提出当前的对策及未来建议。

r eV;_)j S-b0

L"e!Bz8kj%R6K'L0  6)收集与反馈过程改进建议,协助过程改进

z"J(pyT `?z3K051Testing软件测试网6F7hl/KM1?)]N"V

  一般公司EPG(过程改进小组)大都由其它岗位人员兼职的,我就职的3家公司质量保证人员都会兼EPG中的某个角色。

&~%mM Q whdFI051Testing软件测试网:Cz}w Yyl!^

  质量保证人员在项目过程中会与软件生命周期各个环节的人员打交道,有心的质量保证人员在此过程中肯定能够发现很多研发过程体系不合理或不够完善 的地方,同时项目结项时质量保证人员要进行质量保证总结,在总结过程中也可以收集到很多过程改进建议,质量保证人员要定期将收集到的过程改进建议反馈给 EPG组长,由EPG组长规划过程的改进。51Testing软件测试网;T1o"kw.O:BhLeh

51Testing软件测试网9c H x L]C*h

  7)其它51Testing软件测试网"ha7F] |j

51Testing软件测试网M(q)[Y%jX$s2G

  其它依据各个公司具体情况而定,如:定期进行交叉检查,开展研发过程体系培训,度量项目过程,协助项目经理监控项目进展。

"[V\WLtc051Testing软件测试网V ?I,g@nH L

  软件质量保证工作的开展是有计划有序进行的,一般项目初期(如:项目计划阶段)质量保证人员要制订质量保证计划,质量保证计划要得到项目经理、质量部门负责人的评审/审批。51Testing软件测试网r.Aux{;B

51Testing软件测试网MB bS,t%zh

  同时在实际检查过程中也是有依据的——QA检查单,一般公司研发过程体系中都会制订一份完整的QA检查单模板,各个项目要依据项目过程定义进行裁剪。51Testing软件测试网psXq(y q;h'k/S

51Testing软件测试网V5I;~6~\f

  3、质量保证人员的素质和能力要求51Testing软件测试网DK9]L lF

Tx {:O_%eD0  软件质量保证工作涉及到软件工程的各个方面,软件质量保证人员要与不同角色的人员进行沟通,因此软件质量保证人员除了要有较高的智商和情商外,还有具备如下的素质和能力:

'\CbX,l$rK0

,p z+|,R4J`0  1)要有控制软件质量的能力51Testing软件测试网p_zTmu;FU

51Testing软件测试网km4bh{"K

  也就是说要熟练掌握公司各种流程、标准和规范,做好第三方独立审计的工作并及时发现、纠正问题。在必要时可以利用向高层领导直接汇报的权力来 “威慑”相关人员,以确保软件质量朝好的方向发展。在控制软件质量发展方向的同时要学会控制自己的情绪,因为并不是所有人员都很了解公司的研发流程、软件 质量保证的工作以及如何从根本上去提高软件质量,工作中很多时候有“秀才遇到兵,有理说不清”的感觉,这时就更加需要控制自己的言语和情绪,找到合适的方 式进行沟通,使问题最终得到解决。

b"d }%Fu0^-P g051Testing软件测试网k+Wn0?]#[X[

  2)对问题根源识别和归纳的能力,即透过现象看本质的能力。

R u*r#A G%~051Testing软件测试网A;qnL w]!] ^7`#y

  3)举一反三的能力。51Testing软件测试网qq-t,M0w{CNt/O

51Testing软件测试网J Q ~(\Z!ivf

  4)很强的沟通能力。51Testing软件测试网dG8q%Oaq2A

JJ"|)w#`0  5)要适当强势,做好灵活性与原则性间的平衡的能力51Testing软件测试网'~3? HU k\#y

51Testing软件测试网\ K!RB r9I/k

  6)客观、对事不对人的职业素养51Testing软件测试网]$tV,\xSe7ES!B

N A?` ]Em:U[0  4、质量保证人员的技能要求51Testing软件测试网9AAw%}G _i+d7M

6ol _eu:X2] R0  ● 软件工程/系统工程的理论、方法51Testing软件测试网Rra7K)t V2I

c*ia:N[4qH0  ● 工作过程标准51Testing软件测试网9{E0hVX^7C

2Q#BTy,E#HB0  ● 沟通、协调技能

e2s:xP^ O~8Oi0

m4S4r:e`aIJ0  ● 基本的管理知识和技能

V(L#?(_0lrB0

#}8ayV2l#V3z&G0  ● 项目管理的理论、方法

i+n,jbs4^.jf5@051Testing软件测试网v"U.p-yr`r;U#T

  ● 质量保证工作的原理、方法

.Q? };]K051Testing软件测试网|i |,[(G

  5、软件质量保证岗位等级51Testing软件测试网0Ii+eRBA

'ZOR z2l-boG{;F0  1)交警(初级)51Testing软件测试网#i,a6iE"l8wJT

&qQ]b*?"l9M0  像交警查处交通违章那样,直接向所发现的不符合项贴“罚单”即可。

e5M``1a5v.H0

t0`-F:G6n{lC:Gb0  2)医生(中级)51Testing软件测试网i7z6WcUE2Ek"D;d&| h

51Testing软件测试网Z B6T"D7nD

  像医生那样对项目进行检查和诊断,发现问题并可以开出“药方”。

gF/h6? s$a-R051Testing软件测试网FuE*\U2@)N,z

  3)老师(高级)

C*mf Kuq3Y"J0

Hs0Z*tIb[MAta0  像老师那样发现学生的弱项,并找到如何提高学生能力的方案,然后对学生进行辅导和培训。

i\Z+|j9J _`0

:`1[ |NU8Ge0版权声明:本文出自 mandy.wang 的51Testing软件测试博客:http://www.51testing.com/?417295

pykeq-gZg0

TAG:

 

评分:0

我来说两句

Open Toolbar