测试是一个积累经验的过程,测试没有一学就会,只有越学越深,牛人是靠积累的,走的路多。 走别人的路让别人没路走。 牛C因为积累

过程改进及测试管理的一些想法

上一篇 / 下一篇  2009-04-16 08:30:28

通过个人在几家不同类型企业的工作经历和测试工作经验总结,以及学习相关资料和培训经历,大致有如下一些想法和总结。51Testing软件测试网N UAz!A;O B Cb

最大的感受是:管理过程比管理人更容易、更易于实现目标。有什么流程,就有什么结果,流程决定结果。51Testing软件测试网b'il;ue

目前国内大部分软件企业开发软件都是纯目标管理的思想核心,最快完成软件为目标,软件开发过程混乱、不规范、质量得不到保证、文档、数据不全后期维护困难。面对软件系统越来越大,用户质量要求越来越高,竞争越来越强烈的市场,这样的企业保住现有地位都很困难,想进一步扩大就更难。所以世界上许多牛企业、大企业、想进一步发展的企业都在进行业务流重组过程改进。即改变目标管理的思想,强调管理过程,实现从职能管理到面向业务流程管理。它们相信好的流程就能产生好的产品,有质量的过程就有有质量的结果51Testing软件测试网,rf~)WAozAO

进行过程改进可参考的典型过程模型有:

EJ Y)q%?`]0

1,           软件能力成熟度模型(CMM51Testing软件测试网oH)V&M4{9^|

2,           个体软件过程(PSP

\5V4p)@I!q!S?v0

3,           团队软件过程(TSP

)H^$P6V-s2E0

4,           能力成熟度模型集成(CMMI

CL+Hp(h~V X_P0

5,           IBM-Raional的统一过程(RUP51Testing软件测试网,z;Oy'X$SX%d

6,           极限编程过程(XP51Testing软件测试网0O|bUu&\

7,           微软解决方案框架(MSF

N6n5J|6@} m0

企业如果想进行过程改进要从何做起呢?

/{;[q ~n0

我这里把我的一些想法大致写一下:

g%^8zeoE}*}.j0N0

首先要调研明确企业目前的软件开发过程,是否有如下的软件开发过程?有是怎么样的?是否合理?是否规范?

o:iw VM_a0r0

1,           客户需求管理过程51Testing软件测试网JM[~&D Y4~y8\GN

2,           系统需求分析设计过程

2]8h-PA4HJ5Q0

3,           软件开发与设计过程

l$QDu*KHI0

4,           软件测试过程(单元测试、集成测试、系统测试、验证测试、确认测试)51Testing软件测试网K@#XY.QuER"I

5,           系统与软件维护过程

;n2u&HxvC0

6,           文档编制过程

aC!`o#M-yJ&w Iq0

7,           配置管理过程

@H'S7r5z2z[0

8,           质量保证过程

x,PY$ns:B;Lw0

9,           验收产品过程

eQ8e:w"v8cH2u%`+S:D0

10,       评审过程

/|_ Y:fU_(o\d#W0

11,       解决问题过程51Testing软件测试网 |)NU_E@o U2HD

12,       过程改进过程51Testing软件测试网u e q/O:C%x?

13,       培训过程51Testing软件测试网ee#u+w!\a%[[)k

14,       其它一些过程51Testing软件测试网QE0S{+s#l

然后再根据调研过程总结,建立适合本公司的过程,初期也许由于各方面原因达不到所有过程都规范,但是要有相应的过程就行,先建起来,然后定期收集大家的需求,确认合适的过程,逐步完善,逐渐做到所有过程规范化内容文档化,乃至最后形成系列过程规范。

6^"?2E orsc/d%i0

这些过程规范的建立除了参考上面的七个模型也可依一些国际国家标准如:《GB9585软件需求说明编制指南》、《GB9386测试文件编制指南》、《GB/T12505软件配置管理编制指南》、《GB8566软件开发规范》、《GB12504软件质量保证规范》等标准规范。

W)P5F8Id+GV0

在这些过程中我主要谈一下我最主要关注的过程,过程改进过程、配置管理过程、测试过程

@b-ue^iRL0

一,过程改进过程需要注意的是:

0K6s_ MtL-}z8~0

1,         过程改进要符合企业的现状,不能盲目照抄其它过程模型;51Testing软件测试网mo5| m z#z7iH$@%Rv

2,         过程改进是一个不断完善不断升级的活动,要按阶段进行,定期总结评审;

:|W&X.E0yz([0

3,         过程改进要得到组织、管理层领导、开发人员、测试人员的支持,因为过程改进的变化引起员工的反感就不好了。开发人员和测试人员要做好过程改进的挑战和冲击准备;

r#@5I"BQ#gt/Zt0

4,         过程监控、日报、周报制度要建立,这样实际数据能够准确收集,并进行分析;

6L6W u%q{9m v4m0

5,         过程改进要及时调整;51Testing软件测试网D,n8F!_0DbU*QS

6,         过程改进需要看结果,更要看到过程改进过程中的创新。创新就应该得到奖励。

nV3_~'} L-[&[ lH0

二,配置管理过程:51Testing软件测试网(v)_m'PiA%baJh

1,基线控制流程:

/p;r&|bK0

2版本控制:51Testing软件测试网e`(~&V)C&q

是对系统软件不同版本进行标识和跟踪的过程,是对软件开发过程中所有文件系统对象,包括源代码、文档、数据、执行文件、位图、目录变更的控制和跟踪。51Testing软件测试网0}$Kc S6iQ C3E

3,变更控制流程:51Testing软件测试网Y#q1I){-S$p cs0X

51Testing软件测试网dO#fL Q7g|

     三,测试过程

Ym!F%O}:e0

      确定测试过程模型:多V模型或叫W模型

B1L bJl D5u(x0

k&P~$r2o;E8Cc O$E,g0

起步阶段先从确认测试和业务功能测试做起。逐步增加其它测试过程。比如电力系统对生产安全特别重视,可以引进保密安全性测试和可靠性测试.再次对逻辑组态的准确性进行测试,GUI测试也很重要。

n SgPt0

嵌入式测试和普通软件测试的目的也是一样的,都是为验证或达到用户要求的可靠性测试。但是它有很多和普通测试不一样的地方.比如:

|$x8^U)p+p:z0

1,         嵌入式测试要在特定的硬件环境、物理环境(如工业强磁场干扰)上进行测试;51Testing软件测试网4hT&H6u&h8m0yF.y

2,         必要的可靠负载测试,如:连续长时间不断电工作测试;

&EL5g CR1oU"^0

3,         还需要对实时性进行测试,如:在规定的时间内输入输出某些数据等。51Testing软件测试网3T9l]_Q3G

但是不管做什么类型的测试,具体的测试过程都由以下流程进行。

4^0QEc3{6LQ ^#n0

1,         测试需求分析:测试工程师对用户原始需求、软件功能需求进行测试分析,对分析结果进行测试分解的过程。首先确定测试需求分析来源:开发需求、用户需求、协议规范、测试经验;其次明确测试类型,如:功能测试、一致性测试、安全性测试、性能测试、压力测试、恢复测试、系统指标测试、备份测试、大容量测试、抗干扰测试、互操作测试和Web测试;再次进行功能分解,最后进行功能测试分解。51Testing软件测试网3OS]ZCMK

2,         测分评审:评审测试需求分析的准确性、完整性、一致性。

&A)g'_,B$_(i+Oq p-F0

3,         测试计划:明确测试目标、测试范围;测试任务分解、工作量估计;明确测试依据、测试策略、测试内容和方法;制定人员角色和进度安排;了解测试环境;风险分析。51Testing软件测试网e6l/l_ x1u;_7eF

4,         测试计划评审:评审测试计划的准确性、完整性、一致性、可行性。51Testing软件测试网-c Z,[+hs

5,         测试设计:测试用例编写、黑盒测试白盒测试内容和方法,测试脚本开发。

"Q6p,}#n yuC2} Z-N-U0

6,         测试设计评审:评审测试用例的准确性、完整性、一致性、可行性。

K$x4U\^g0F9N#x[0

7,         测试执行:根据测试设计进行操作执行。

cJ5k&IS Q0

8,         测试报告:完成整个测试项目总结、缺陷报告、缺陷跟踪报告。51Testing软件测试网D Q+n[B0c*eG

9,         测试报告、缺陷报告评审。

C o cUR6D#@0

10,     回归测试设计、测试执行。51Testing软件测试网x9kz2iza

11,     回归测试报告、缺陷报告。51Testing软件测试网.r r!JM/~`

12,     项目总结报告,项目提交发布。

hXr.R'l1Jj(u p0

由于项目各种原因影响可以调整简化相关步骤.以至达到最适合公司本身的流程。

+?.G%SPfy0

有这样一个流程,那又怎样搭建一个测试团队呢,怎样将上面的过程有序的执行下去呢?团队各人员又需要哪些能力呢?

k l SO Rk+E`0

测试团队的搭建,首先要有一个优秀的测试团队管理者。怎样的测试管理者才能算好51Testing软件测试网j]!I:Xu&s(\

1,            也许不需要在某些技术上研究的很深的能力,但是要有对软件测试政策、标准、测试过程、测试工具、测试培训、测试度量、测试策略和方法理解的能力;51Testing软件测试网+k5OR,Mo&T&t

2,            领导的测试团队必须是坚强有力、积极向上、勇于挑战、敢于报错、独立自主、办事规范没有偏见的;51Testing软件测试网}Uh:Kk_mV]

3,            吸引并留住杰出测试专业人才的能力,让整个团队的工作气氛非常乐观、和谐;51Testing软件测试网#^e~$BLR.{ `

4,            领导、勾通、协调、支持和控制的能力;

8`i8K yUT0

5,            测试时间、质量和成本控制的能力,:51Testing软件测试网s8?LS nq MZ

其次就是要有合格的测试人员,他们要有:

s RJ bOk~uy!ih3D0

1,         正常能力:表达清楚、思路清晰,交流、协调和学习能力强、质量意识要强,过程方法、软件工程基础扎实;51Testing软件测试网&` suE:YX:iryN

2,         具有测试技能:测试基本概念及方法、测试工具及环境、熟悉编程语言、操作系统、网络及数据库等基础知识;

L\3LwT.}.S _0

3,         测试规化能力:测试风险分析及防范、软件接收/放行准则、测试计划和设计;51Testing软件测试网[g8q6L;H(Z

4,         测试执行能力:测试数据/脚本/用例的准备,测试比较分析、缺陷记录及跟踪、自动化工具;51Testing软件测试网&~N9j9B8D`:tB

5,         测试分析、报告和改进能力:测试度量、统计技术、测试报告、过程监控及持续改进。51Testing软件测试网'a)ly-n'm(w:T5Z/F L

然后就是团队的培训

4kufUXz.[|o0

1,         测试基础知识和技能培训;51Testing软件测试网[\ \2zn0G'fj^

2,         测试设计和测试工具培训;

U!TqmT4x0

3,         测试对象-软件产品培训;51Testing软件测试网 fe p)`n(`K

4,         测试过程培训;51Testing软件测试网%\ CAS&H&M;qD1M

5,         测试管理培训;

o^!] @ o{-rV0

6,         测试人员与开发人员、质量保证人员、项目经理及客户勾通协调培训。

_n*?eR-{ Fk;ga0m#@0

 

%D'wx0]~g/{ {I0

说的很少但要做的很多,过程改进是一个长期的过程、一个长期的工作、它需要长期的积累、需要创新、需要规范。由于个人经验所限有很多不足之处,请各位老大以后多多教益.这对于我个人来说也是一个过程积累,一次提高.更是一次挑战!

;}^0?p4}7u0

TAG:

牛C是怎样练成的? 引用 删除 平凡子   /   2009-04-16 11:55:13
所以需要过程改进,过程改进是一个不断完善不断升级的活动,要按阶段进行,定期总结评审,找到不符合公司现状的过程,逐渐改进。过程也是需要测试验证的。
kuailederen 引用 删除 kuailederen   /   2009-04-16 11:07:49
如果公司部门建制没那么全呢?
你继承了cmmi严格的评审与目标监督的思想,它也有很大的弱点,过程复杂,周期延长直接增加了公司的成本,很多公司不能接受
 

评分:0

我来说两句

日历

« 2024-04-19  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 10812
  • 日志数: 19
  • 图片数: 1
  • 建立时间: 2008-10-17
  • 更新时间: 2013-09-23

RSS订阅

Open Toolbar