Changes between Initial Version and Version 1 of code_review


Ignore:
Timestamp:
11/29/2013 02:01:12 PM (12 years ago)
Author:
dingjianyong
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • code_review

    v1 v1  
     1= 代码审查方案 =  
     2 
     3代码审查的目的 
     4 
     5- 检查代码规范,保证团队编码风格的一致性 
     6- 保证代码逻辑符合需求,减少测试bug的数量 
     7- 提高代码的质量,促使团队成员编码能力共同进步 
     8 
     9代码审查的参与对象 
     10 
     11- 代码的编写人员,简称作者 
     12- 代码审查的执行人员,简称审查者,可以为一个或多个 
     13 
     14代码审查的前提条件 
     15 
     16- 代码可以顺利运行 
     17- 作者已经做过单元测试 
     18- 审查者对需求有基本的了解 
     19 
     20代码审查的审查点 
     21 
     221. 代码规范,符合团队统一的代码规范 
     232. 单元测试,保证代码已经编写对应的单元测试 
     243. 代码逻辑,审查代码符合需求 
     254. 代码安全,检验是否存在xss漏洞和sql注入漏洞,权限漏洞等安全性问题 
     265. 代码设计,包括对数据库设计,对象设计,方法设计,性能消耗等方面进行评审,提出优化和重构的建议 
     27 
     28代码审查的要求 
     29 
     30- 审查者必须对第1,2点进行审查 
     31- 审查者可以根据个人时间及需求和代码的复杂程度决定是否审查第3,4点 
     32- 第5点不作强制要求,建议有时间的审查者及有经验的同事对第5点进行审查 
     33 
     34代码审查的工具和流程 
     35 
     36- 使用ReivewBoard进行代码审查,安装及初次使用请参考:[http://svn.demo.pc.com.cn/svn/bbs7/docs/dev/ReviewBoard.wps ReivewBoard插件安装文档] 
     37- 完成需求后,作者需要先提交代码审查,再提交代码到svn  
     38- 由作者视具体情况决定本次提交审核的审核员,建议至少为2人 
     39- 审查者可以根据自己的时间安排,登陆[http://ci.pc.com.cn/rb/dashboard ReviewBoard面板]进行代码审查 
     40- 审查者进行代码审查后,可以对代码进行提问或提出review的意见,作者需要就问题进行回答或修复对应的问题 
     41- 作者修改问题后,需要重新提交审核 
     42- 审核人员认为代码通过,则可点击ship it。否则继续与作者进行review的交互沟通。 
     43- 所有审核人员都对代码通过审核后,作者可以把本次审查纪录关闭,这样则完成了代码审查的一个生命周期 
     44 
     45代码审查实施中的问题与总结 
     46 
     47- ReivewBoard工具暂时只支持eclipse,建议习惯使用其他IDE的同事可以继续用原有工具进行开发,单独用eclipse进行代码审查的提交 
     48- 审查者的审查时间固定在每天早会以后,每个需求大概在15分钟以内,既保证自身时间,也不会耽搁提交者的时间。 
     49- 目前ReivewBoard工具对代码规范的检查还不能完全支持,例如空格和换行,利用工具无法检查到。 
     50 
     51 
     52=== 定期回顾与总结 === 
     53---- 
     54各人总结出代码审查过程中发现或思考的问题,提交对应的问题和代码,进行交流和讨论。以促成以下2点: 
     551. 达成代码规范和代码设计编写的共识,避免日后犯同样错误。 
     562. 在交流中发现项目代码已有问题,项目负责人自行安排时间修改,以更好地改善各项目代码质量。 
     57