软件质量保证的最佳实践之一:Code review和Case review
2008-01-25 11:37
246 查看
Bug分析:为bug预防奠定基础, 强调软件缺陷的预防。软件质量是构建起来的,由软件开发的整个过程质量所决定的,软件质量肯定不是通过测试测出来的。所以软件缺陷的预防自始至终是重要的。除了缺陷分析,另外一个很重要的实践就是:代码复审(code review)和测试用例的复审(Test Case review)。
[align=left]1.Code review[/align]
[align=left]在IBM、微软等很多公司都有一个很好的实践,那就是Code review - 代码复审。这种代码审查的过程,不是将代码发给某一个人或某几个人去看,而是强调程序员自己定期走上台,向其他人讲解自己源程序的活动。因为要向大家讲解自己的程序,show code to other guys, 程序员会极其重视自己的工作进度、代码质量,在写代码时,就时刻想着——可能随时会被选中去做code review, 所以非常认真对待每一行代码。这种Code review 方式还有其它好处:[/align]
可以互相学习程序设计思想、方法和技巧,共同提高;
可以及时发现代码的问题,包括代码的Dependency的问题;
更多的人明白他人写的代码,今后代码的维护也变得容易。
[align=left]所以这种Code review 方式,被证明是一种行之有效的方法。
<!--[if !supportLineBreakNewLine]-->
<!--[endif]-->[/align]
[align=left]2.Test Case review[/align]
[align=left] 与Code review对应的,在测试/QA这边进行Case review. 每一个QA工程师,都有机会被选中,通过投影机做Presentation,向大家讲清楚他/她是如何设计测试用例(Test Case)的, 包括产品新特性的理解、对测试范围的分析,考虑了哪些因素、哪些user scenario, 用例设计的思路是怎样的?测试的覆盖率如何?把主要的测试用例从头到尾Show 一遍,等等。
每个人都有且必须有机会,这是关键。其次,Case review时,被选中的QA Engineer必须讲解他/她如何写Test case.
通过这样的实践和活动,可以更早地发现test case中的问题,相互启发,相互学习test case design的技巧和方法,交流经验。也督促每个人把测试用例设计好。好处也一样多: [/align]
设计Test case之前,就会好好考虑各种因素、想清楚设计思路——覆盖率提高。
认真写好每一个Test case——单个case质量提高
更早地发现Test case的问题,包括相互影响的区域。
相互学习
Test case维护更容易
Code review和Test Case review同样蕴含了“缺陷预防”的思想。要提高质量,就如克劳士比所说,第一次就要把事情做对!如果系统分析员、架构设计师、设计人员、编程人员等所有人员都在第一次就要把事情做对,测试人员也许就不需要了。有一个例证,几千人的印度软件公司,只有5-6个真正的QA人员,但
[align=left]1.Code review[/align]
[align=left]在IBM、微软等很多公司都有一个很好的实践,那就是Code review - 代码复审。这种代码审查的过程,不是将代码发给某一个人或某几个人去看,而是强调程序员自己定期走上台,向其他人讲解自己源程序的活动。因为要向大家讲解自己的程序,show code to other guys, 程序员会极其重视自己的工作进度、代码质量,在写代码时,就时刻想着——可能随时会被选中去做code review, 所以非常认真对待每一行代码。这种Code review 方式还有其它好处:[/align]
可以互相学习程序设计思想、方法和技巧,共同提高;
可以及时发现代码的问题,包括代码的Dependency的问题;
更多的人明白他人写的代码,今后代码的维护也变得容易。
[align=left]所以这种Code review 方式,被证明是一种行之有效的方法。
<!--[if !supportLineBreakNewLine]-->
<!--[endif]-->[/align]
[align=left]2.Test Case review[/align]
[align=left] 与Code review对应的,在测试/QA这边进行Case review. 每一个QA工程师,都有机会被选中,通过投影机做Presentation,向大家讲清楚他/她是如何设计测试用例(Test Case)的, 包括产品新特性的理解、对测试范围的分析,考虑了哪些因素、哪些user scenario, 用例设计的思路是怎样的?测试的覆盖率如何?把主要的测试用例从头到尾Show 一遍,等等。
每个人都有且必须有机会,这是关键。其次,Case review时,被选中的QA Engineer必须讲解他/她如何写Test case.
通过这样的实践和活动,可以更早地发现test case中的问题,相互启发,相互学习test case design的技巧和方法,交流经验。也督促每个人把测试用例设计好。好处也一样多: [/align]
设计Test case之前,就会好好考虑各种因素、想清楚设计思路——覆盖率提高。
认真写好每一个Test case——单个case质量提高
更早地发现Test case的问题,包括相互影响的区域。
相互学习
Test case维护更容易
Code review和Test Case review同样蕴含了“缺陷预防”的思想。要提高质量,就如克劳士比所说,第一次就要把事情做对!如果系统分析员、架构设计师、设计人员、编程人员等所有人员都在第一次就要把事情做对,测试人员也许就不需要了。有一个例证,几千人的印度软件公司,只有5-6个真正的QA人员,但
相关文章推荐
- 软件质量保证的最佳实践之一:Code review和Case review
- 软件质量保证的最佳实践之一:Code review和Case review (转)
- 软件质量保证的最佳实践之一:Code review和Case review
- 软件质量保证的最佳实践之一:Code review和Case review
- 软件质量保证的最佳实践之一:Code review和Case review
- 说与做,读《软件质量保证的最佳实践之一:Code review和Case review 》感
- [CTO札记]Yew敏捷软件项目管理最佳实践
- 软件项目最佳实践: 可编程的权限控制
- Code Review最佳实践
- 软件开发项目的最佳实践。
- [敏捷最佳实践]从玩扑克到软件开发
- 技术人生:史上最最佳软件开发实践指导(转载)
- 软件需求最佳实践之需求的沟通与分析
- 某行“软件最佳实践与沙盘演练”企业内训开始!
- CMMI最佳实践之同行评审提升软件品质
- 公开课:超越敏捷-软件研发项目管理最佳实践(2012-5-12 广州)
- 对抗软件瑕疵的最佳实践(一)
- 史上最最佳软件开发实践指导
- 深入理解软件构造系统:原理与最佳实践
- 彼之蜜糖,吾之砒霜——聊聊软件开发中的最佳实践