我不可以人云亦云,应为我是思考者;我不可以沿着别人的足迹前进,应为我怀疑迷失方向;我所能做的就是思考再思考,实践再实践。我不停的问自己也建议同道中人问问自己:难道我们所能做的只是copy现有的东西,不可以创新什么东西吗? 在我看来,测试仍然没有任何定论,一切看自己。

质量管理的思考

上一篇 / 下一篇  2008-12-18 11:28:26 / 个人分类:原创,严禁转载

51Testing软件测试网/J.lD;bM#})Yk

本文出自kuailederen的51Testing软件测试博客,严禁转载

4B"wd R ?2e8@/W)TO051Testing软件测试网(~^ bh,HQ

  产品部:负责需求采集,需求说明说编写,后期的需求变更。

v Je9V0Sys G0

uwv'F"F8bi{0  研发部:负责需求的具体实现,测试阶段负责对测试的支持和缺陷的修改。

8a&^6f'n ~~'d051Testing软件测试网,BMzaB&vkZr2T

  测试部:负责产品上线前的测试工作

;EU;L7Q ~0

"\[Yc8S)c%y+E:P0  每个部门在整个软件过程都肩负着不通的责任分工,但每个部门之间又形成了一个相互依存,相互促进的关系。就拿需求来说吧,需求真是反映了客户的需要,需求又是研发部技术实现的唯一标准,要求100%按照需求来实现代码,并且不多也不少;需求是测试人员设计测试用例时唯一正确的预期结果,一切与需求不符的都视为缺陷。相反,研发人员和测试人员作为产品的第一用户,又对需求起着诊断的作用,不断的发现不合理的需求或者是新增需求,并提出需求变更。51Testing软件测试网3E/T)n+R6^A

e1{/^l:Y,s0  同时,产品部还有跟踪测试进度,监督测试质量的职责,那么这些都怎么来保证有效的实施? 有什么样的标准去衡量质量?怎样跟踪进度?怎样来对需求做出科学合理的管理呢?

]8nse*E%\6O}o0

f3w\;u!y0  CMMI,大家所熟悉的名字,正是一些大公司在解决这些具体问题时所总结的经验,并形成了具体的管理过程,制定了有效的流程和标准,然后才得到世界的认可并成为一种标准。

M&c E8\ r*I8t0

0sqw2Y2l^4BC0  说这些的目的是,公司应该根据自己具体的情况来实施质量管理的整个过程,谁又能说我们的这套标准若干年后不能成为电信增值行业的标准呢?毕竟质量管理方面现在大家都处在探索阶段。我想这正是中国大部分软件企业所缺少的,不注重对理论知识的探索和知识产权的追求。(说的有点大,哈)51Testing软件测试网#~f#[u['I+_

C iai/d0  简而言之,目前我们所说的狭义的质量管理是刨去市场运营,单纯的就整个开发过程(指的是产品上线前的阶段,这里并没有忽视产品维护,而是分而谈之)而言,工作所围绕的中心是项目的整体进度和质量,也就是说怎么样在最短的时间内,把高质量的产品开发出来,然后投入市场。这样就存在两个矛盾,一个是时间上的,想把产品尽早的投入市场而缩短开发的周期;另一个矛盾是不断的担心质量问题的出现,因为产品上线后发现问题,去解决所需要花费的成本是成倍的增加。51Testing软件测试网;ah4wi*U(| jP

51Testing软件测试网G$R1S:q6m)?3_x

  我一直在思考,质量管理的过程可不可以以成本为导向?使各部门都以此为目标去参加质量管理。其实无论以质量为导向,还是以成本为导向,我们的最终目标都是一样的-----缩短开发周期,提高软件质量。就像教育孩子,爸爸告诉儿子说,期末考试不及格我打你屁股,而妈妈告诉儿子说,期末考试都几个了,我带你去公园玩。那个方法更有效呢,答案不言而明了。以成本为导向的软件管理,正是这种让管理者去主动的思考如何利用质量管理降低成本,而不是单纯的去承受质量管理所带来的压力。

2F3^.k1u _aI X6Y4y051Testing软件测试网kSzi!kntv$?

  下面我简单的就如何在保证软件质量的过程中,各部门所应该起到的作用说一下个人观点。51Testing软件测试网,csOU1c!TFS

51Testing软件测试网&}Y+D7yJBw4|

  产品部:负责需求采集,需求说明说编写,后期的需求变更。另外还负责对整个项目进度的跟踪,及质量的监督。

4}.e|O#b]0

i VHgE4B@fx0  可以说,产品部在整个软件过程起着非常重要的作用。首先,产品部是最了解客户需求的人员,也是主动去采集客户需求的人员。如果产品部对客户的需求非常明确,就能写出非常详细且需求明确的需求说明书,一份这样的说明书,将对研发部和测试部有着极大的帮助。51Testing软件测试网T3KLV h7Q

G*D:rc#\W}0  据统计,有80%的缺陷直接来自需求,包括采集需求阶段对需求不了解,了解不全面,或者主观的判断错客户的需求;包括由于需求说明书不详细,不明确,导致开发人员对需求的理解有偏差或者错误,开发出不适合客户需要的功能;包括测试人员无法从需求说明书中获得正确的测试需求,以至于失去衡量功能点是否正确的标准。51Testing软件测试网+tOz tdTFC'_Bk3A

2kby`&T0  其次,客户的需求并不需要客户直接提出来,而有很多的隐含需求是需要我们产品人员去主动发掘的。比如网站产品的个人管理界面,客户没有提出美观大方的要求,但我们也要给他们这种美感,并且给予充分的提示信息,让客户轻松方便的进行配置管理;再比如,客户没有提出对通话清晰度的要求,但我们要在满足客户通话最低质量标准上,不断的提高通话质量,这些就是客户没有提出,但我们应该知道这正是客户需要的隐含需求。

;GhPX$R0

v,|@4S,HU0  第三,产品部还负责线上问题的采集。包括线上发现的缺陷,客户提出的新需求等。线上缺陷可以归位到我们的缺陷库,防止以后测试时遗漏。客户新需要为我们产品的升级提供参考价值。这些都需要慢慢的积累,是一笔宝贵的财富。

*\;C3yOb;]051Testing软件测试网"L;jsM,kq+yC*N

  具体实施的建议:

0t,G^V!t.RW.|051Testing软件测试网tI.P3L5AB9gt

  ● 制定符合公司的需求采集流程。公司个人产品,公司企业产品还有国际产品,用户群体的不通而获取需求的渠道就不通。51Testing软件测试网c-\#Cnv~

W'D"n iV0  ● 制动标准的需求说明书模板。

@P4J H-K5R-YB`|S0

W|6zi H8wTVD Vf"@0  ● 产品部对需求说明书初稿的评审,确认需求正确,明确。(保证需求说明书中的需求是客户真是的需要)

L.o fjf2P'[ i0

]j%I'G)|Y;lY0  ● 需求说明书移交研发部和测试部,并主动帮助研发人员和测试人员正确的理解需求。(保证向研发人员和测试人员准确转达了客户的需要)51Testing软件测试网Y(LY3I9^MG

51Testing软件测试网BJ,]~zXQ`

  ● 对项目进度的跟踪,对项目质量的控制。51Testing软件测试网ZZt&S:\3BPTV/a[

8vC T{*Q"cH \0  ● 对需求变更的管理51Testing软件测试网 aBGDf(]#Te

:Z_yB };P.nbp:w0  建议适当的时候启用需求管理工具,对需求的管理,对需求变更的管理将十分的清晰。

rae&N0?)shM s0

V? Oa-e'`M x0  研发部:前期负责具体需求的技术实现,测试阶段负责对测试人员的支持,缺陷的修改。

jg+f;n;v0b6R0

9p&Q&gK'{;oJ*p0  简单的说,只要对需求理解充分,代码实现就容易很多。 我只说些对质量管理和对测试部门比较重要的部分。

Rm l{h b051Testing软件测试网 M\%a!_ABg9h]

  1. 规范的开发流程,生成概要设计文档,详细设计文档及其他技术性文档,还包括产品安装卸载手册,配置手册,用户使用手册等。其中面向客户的文档也是需要经过测试部门测试的。

3Y'c"t7px)N051Testing软件测试网'F4eE? m9s

  2. 开发阶段的测试工作。由开发人员执行单元测试,集成测试等,保证移交到测试部门的产品符合测试启动标准(测试启动标准由测试部门制定)

(F!?0NfE8Z0

#g-@\NIBB0  3. 严格的需求管理与版本管理。如果开发人员觉得某个需求应该改动,必须与产品部沟通,严格走需求变更流程,不允许私自更改需求。 版本管理,没有经过测试的产品不私自线上部署。

-[!rb]^V"i0

PO-s*[3I"Zsk,L ` L/C0  建议有一名专门的配置管理,版本管理人员。

f$T+im M o_:B4y9O \Z0

hu'D"kZ-z iin @1F0  测试部门:执行产品上线前的测试工作,保证产品达到上线标准方可通过测试。51Testing软件测试网6O,^+h2_$e,R)a*r&u

CEE:id9Fh,~U6?0  一个优秀的测试团队至少应该包括以下三个方面:

sQ(^0M3\2^6t3hL0

b E3j!G9BQO5J0  1. 合理的测试技能搭配。51Testing软件测试网9Q Q7\,pG

#W7Id2l)?I0  一个测试团队并不都需要经验丰富,技术过硬的“全才”,有一个梯度是最好的选择。51Testing软件测试网xWp|(I.Y `

51Testing软件测试网8iT(g\1Nhj%e

  毕竟让一个经验丰富的高几工程师去测试简单的功能测试,时间久了他就会失去兴趣。而让他写一些测试方案,把经验传授给初级测试工程师,却迎合了他的技术特点,这对测试新人也是一种成长。

1x-k I9Hf7fw6y0

bD}&Sf?r;oJ5C0  还有功能测试,性能测试自动化测试等,都需要合理的技能搭配。51Testing软件测试网|\+l5bA\R(Ie

51Testing软件测试网FA hlqf [.D"K

  2. 建立合理的测试流程,测试标准。51Testing软件测试网*f iQY~t\.{v%\ ko/x

Q%e9eC6hqT0  包括:

`dbVZ'E0

V@+t+?{)}D9S0  ●启动测试标准: 定义了可以接收测试项目的标准

yf LX"WE051Testing软件测试网xn6MohuH

  研发部把产品提交测试部之前,需要组织人员测试,保证基本功能,基本业务流程没有错误,保证实现了需求说明书中的全部内容。这样可以避免把带有严重的却容易发现的缺陷的产品提交给测试,而启动了测试资源,生成了测试成本后,却无法执行下去。51Testing软件测试网AAO!s{z:j

-|_,s&t?A Q0  ●中止测试标准: 定义了可以中途停止测试的标准

prb*O CA+j2a ~ y051Testing软件测试网m xm0H+zV$\&LT7r

  在测试进行过程中,当发现有严重缺陷而导致基本功能,基本流程无法执行时,应中止测试,返回研发人员。

8w7UX9|d,aq(i'@r051Testing软件测试网LZc5BK

  ●通过测试标准: 定义了通过测试,可以上线的标准51Testing软件测试网4w1o&VHcp7y9D!i

(J,asSo?F}#jWgJo0  当所有high以上的缺陷均被修复,而其他缺陷均不影响产品的功能,使用时,可视为测试通过。

q3K!GJp| z051Testing软件测试网9\/I js3~`

  ●设计用例标准:定义了以个规范的编写用例标准和属性

1\z;M.ae+q5o'R3|w&{051Testing软件测试网['os/K@ oS,^gC

  规范了用例的外在属性:测试目的,测试环境,测试数据,测试前提,备注等。

4yE7o/NfOytpPh051Testing软件测试网)h-p&vl;K-Zp

  规范了用例的内在属性:用例标题,用例步骤,用例期望,用例执行结果。

QI8D0^ a;N0N0

+C ]xff2nf@8x'}0  ●缺陷生命周期:定义了一个缺陷被处理的整个过程51Testing软件测试网S.UI:SDwi

S B-|qk*x)M6h8}G,x0  QC管理工具为缺陷提供了一个在测试和开发人员之间的交流平台,交流的过程以改变缺陷的状态为标示,并要求双方写明处理的理由。便于缺陷的跟踪和修复确认。

I+ZN P)K8{0

(H;M Z8N:T+s-\+Uqj0  ●缺陷级别划分: 定义了缺陷的等级,及等级的划分标准51Testing软件测试网.`LX!X0R7vC7G j1Rp

51Testing软件测试网&aYk*BW

  根据缺陷对系统的影响程度,赋予了不通的等级,等级高的会被优先处理。等级高的缺陷越多,说明系统的质量越差。51Testing软件测试网 uw/C!n-T8[z)C

U7k'`cy~a2g(w!L v9F0  ●测试计划模板51Testing软件测试网Pf9|h4T O

51Testing软件测试网I$}er en

  测试计划一般包括:测试的时间安排,测试资源的划分,测试风险的应对等主要内容。51Testing软件测试网2M4Ew"aL\2m pwfF

51Testing软件测试网?8WoZC [7N

  ●测试方案模板

jU @#e5r/q3kq0

|gsC6N!E!e%v2^0  测试方案写明本次测试应该被怎么执行,怎么来测试才能效果更好,它写明测试的内容,测试的方法,测试的重点和一些注意事项,供测试人员在实际测试过程中参考。

(oeF](o051Testing软件测试网L*{3Mi d4WU

  ●阶段测试报告模板51Testing软件测试网'_i)H7G*r

51Testing软件测试网Hxa7z7C }

  测试人员对自己负责测试的项目,内容进行总结,是对自己工作的一个回顾总结的过程。

D(Nh'P2Nfnfa0

mC%n~y|0  ●总结性测试报告模板51Testing软件测试网O C,K:?z

51Testing软件测试网0H#TgDg['K

  一般由项目的主要测试负责人负责编写,分析整个项目的测试过程,测试覆盖,用例执行情况,缺陷修复情况,提一些建议或者新需求等,供与项目有关的所有人员清楚的看到测试的整个过程,清楚的认识项目的质量,从而评判产品能否上线。

;^i-b"bv}C051Testing软件测试网6X'A c%v0P-J

  3. 测试团队组织建设与培训51Testing软件测试网w n,D~J#f

51Testing软件测试网 ]@ vC$T4Z!C;]

  组织建设包括一些集体活动51Testing软件测试网|u*D7V'`.Y \&Y

&a[&D+O h2FI\dC0  培训包括测试素质培训,测试技能培训。51Testing软件测试网$G?Lu3{*gq B'q)K$A

51Testing软件测试网%sw"^5MFd#R N

  还可以进行每周一问一答活动,由所有测试人员共同思考测试有关的某一问题,集众人智慧,建设公司自己的测试知识体系。51Testing软件测试网xZs Wk

im'a!vHE0  这些都是有利于测试团队的成长,融洽的团队氛围,积极的团队精神面貌,提高测试水平,增加忠诚度等。51Testing软件测试网K&NrUq+kf%{O

51Testing软件测试网:{9a^p+vZ

  总结:测试的质量管理只要抓住从整体角度入手,发挥各部门协调处理问题的能力,对整个过程制定一系列流程和约定,对整个实施过程都要有文字记录,对每一个结果都要进行总结和存档。一句话,使整个质量管理过程变成一个可看得见的,可控制的,能够预测规避风险的过程,这也是CMMI的精髓所在。51Testing软件测试网&OW:_,b ZZWx4fW

/\#l1d$q,?4j\D0本文地址:http://www.51testing.com/?117068/action_viewspace_itemid_100141.html

(Yu~ ogbn)D0

TAG:

test_memory 引用 删除 51fangfang   /   2015-11-16 15:25:03
写的很好
引用 删除 lijuanz   /   2015-10-14 14:13:21
5
引用 删除 christine200   /   2013-03-25 14:44:24
写的挺好~
积累从此刻开始 引用 删除 蘑菇猫   /   2012-03-31 17:50:41
我不可以人云亦云,应为我是思考者;我不可以沿着别人的足迹前进,应为我怀疑迷失方向。楼主很有创新思想哦,把因为写为 应为, 让看客们琢磨半天
taotao95527的个人空间 引用 删除 taotao95527   /   2010-09-14 17:17:40
引用 删除 aqi947   /   2010-09-13 10:41:48
燃灯斋 引用 删除 zengyixun   /   2008-12-22 18:07:57
好文!
bht2000的个人空间 引用 删除 bht2000   /   2008-12-22 15:38:54
有点想法,但是许多说法从专业角度来讲还有不少偏差.
 

评分:0

我来说两句

Open Toolbar