wea123 发表于 2009-10-22 16:05:07

浅谈软件开发过程中BUG产生的原因

软件开发是一个系统工程,无法完全做到步调一致,各种情况都是有可能发生的,无法做到零缺陷。在软件测试过程目的就是
找BUG,如果知道BUG从何而来,对于快速发现问题解决问题是有很大帮助的。今天的测试不再是简单的页面测试,边界值测试这样的表面功夫就可以发现问题了。而是应该因人而异,知道问题产生的根源在哪里,有计划有目的的去测试软件。软件开发过程中产生的缺陷一般有以下几种原因
产生:
1、开发人员的开发能力。一般体现为:低级性错误较多,而且反反复复,改来改去。一般情况下,资深开发人员经验积累较刚入门人员丰富,对问题的认识和理解能力也较深,在与测试人员的较量中,在开发过程中逐渐形成了测试思维,自觉地意识到哪个地方可能会出问题,问题原因是什么。
2、设计人员理解认识上的差距。设计人员在程序设计过程中,缺乏大局意识,对问题的理解和研究,认识不够深入。从而导致程序在设计流程中出现缺陷。这个问题主要是设计人员在处理问题流程中存在的视觉盲区导致。
3、开发人员对任务理解的错误。开发人员没有认真理解和贯彻设计思路,凭借自己的个人好恶进行工作,从而导致结果与目标大相径庭。

[ 本帖最后由 wea123 于 2009-10-22 16:25 编辑 ]

kxllr 发表于 2009-10-23 10:51:05

有道理,面对不同的开发人员,测试的重点也不同,经验少的开发人员做的东西,要从页面显示、易用性、实现的功能与需求的一致性、功能正确实现、对程序有一定的理解,靠自己发现更多更深的测试点,这样对测试人员的要求较高。测试资深的开发人员做的东西,他们一般想的比较全,页面显示和易用性都做做的比较好,一般理解需求也会比较清楚,如果测试人员水平一般,还可以多和他们沟通,一些比较深的测试点他们也会有针对的提醒。我的经验是,如果这个开发的经验少,那么一定要有一个资深的测试人员去测试或者把关,否则系统会有很BUG发现不了。

游丐天下 发表于 2009-11-2 11:23:42

开发需要创新,创新过程越多BUG 多有新意,所以企业需要有多种思维方法的开发人员.满足一个需求有很多种实现途径,企业并不惧怕开发犯错,就怕开发不敢犯错,这里的错误当然是越有新意越好,这就要求测试人员知识面广阔,对本行业市场有透彻理解并有创新、前瞻意识。

alexguo 发表于 2009-11-2 18:43:52

关键还是看开发人员对于软件需求的理解度认真与否!

yolander 发表于 2009-11-2 19:10:32

其实lz总结的三条可以结合软件产品的生命周期来看,就会发现测试其实是伴随整个开发过程始终的——
一、需求阶段:
1、需求引导的不足,没有将用户的深层次需求引导出来,只有一些表面上的要求,需求文档无法体现出用户的真正意图
2、系统分析做的不够好,虽然有了用户需求文档,但是在系统分析时没能将用户需求分解并建立成很好的系统需求,也就是说没能将用户的需求与实际工程相结合
对于上述问题,就需要一位非常有经验的资深测试人员,参与到需求分析过程,为需求把关
二、设计阶段:
设计人员对需求理解不到位,导致设计与需求有偏差
此时要加强设计文档的评审,聘请有经验的设计人员从技术角度提意见和建议,并且让需求分析人员以及资深的测试工程师也参与其中
三、编码阶段
1、开发人员的coding能力不强,比如是开发新手,经验不足,可能会导致问题的反复,此时就需要加强配置管理,利用配置管理中的变更管理过程,来规范代码的提交,还要增加coding review步骤
2、开发人员对设计文档的理解不够,同样的,需要参与设计文档的评审,但此时开发人员是作为学习的目的,能够尽早的开始理解设计的过程
也可以让开发人员阅读测试设计文档,去了解系统中的薄弱点,从而提高自己的编码能力

xiaoxin36 发表于 2010-5-12 08:48:17

还是因人而异吧~~~~~
页: [1]
查看完整版本: 浅谈软件开发过程中BUG产生的原因