智慧油站全面解决方案专家
代码评审会流程及评审标准(草稿)
1.1 前言
在日常开发工作中,开发工程师是被代码缺陷驱赶着前进,开发者的工作节奏就是:编码、交付、修复缺
陷、再交付的循环中,在数不胜数的 bug 面前,程序员长期单独作战,无从全面了解设计与架构,也无法分享
经验和获得团队内知识共享,代码评审(code review)会是通过定期对代码的公开 review,来帮助大家提升士
气、激发热情、增强沟通、提高代码质量的有效方法。
代码评审也是软件评审的形式之一,可以帮忙我们进行过程的量化管理与分析。
1.2 代码评审会流程
1.2.1 会议时间(待定)
会议时间:每周三晚上 19:00-20:30
1.2.2 参与形式
1.2.2.1 开发团队根据评审课程表进行小组轮流评审,每次选取 2-3 个功能点进行代码 review;
1.2.3 参与人员
1.2.3.1 被评审的小组全员参加,其他小组自愿参与,专家评审团必须参与。
专家评审团选择标准待定
1.2.4 评审流程
1.2.4.1 会前:在评审开始之前,被评审的小组组长准备最近两周内待发布或已发布的 2-3 个功能点
参与代码评审会。
注:
a. 每个功能点代码不少于 30 行;
b. 组长不得提前通知代码所有人;
1.2.4.2 会议中:
被评审的小组组长作为主持人,注意控制会议时间、引导会议评论-不能让针对代码本
身的建议成为攻击,也注意避免过于深入讨论某个需求花费大量时间。
1.2.4.2.1 代码讲解 (15-30min)
代码作者从以下维度对功能点讲解:
a. 需求描述;
客服专线:400-870-0066 地址:深圳市南山区软件产业基地 5D 栋 2 楼 官网:www.zhihuiyouzhan.com
第 1 页 共 3 页
智慧油站全面解决方案专家
b. 代码作者对需求的理解和功能实现的思路;
c. 代码实现逻辑讲解;
1.2.4.2.2 代码评审 (15-30min)
a. 大众评审团提问及评价;
b. 专家评审团根据《评审打分表》进行打分;
1.3 代码评审结果呈现
1.3.1 根据综合得分评选每月的“代码之星”;
1.3.2 推出研发中心内部“代码质量排行榜”评比活动;
1.3.3 可通过企业微信点赞平台进行点赞金积累。
1.4 代码评审标准
流程清晰性:功能实现流程是否清晰,逻辑实现是否明确?
可读性: 代码是否清晰可读?程序员是否不必要的复杂化了代码?
可维护性:其他工程师可否维护该代码?文档和注释是否正确?
正确性: 代码是否实现了功能?算法是否得当?
可靠性和健壮性:代码是否容错力?异常情况如何处理?
安全性: 代码在非授权访问,恶意使用,非法修改上如何处理?
扩充性:当负载、用户、数据、输入等增长时,代码是否是系统扩充的瓶颈?
重用性:本代码能否被其他应用使用?
效率: 代码是否有效地使用的系统资源?并能被优化?
1.5 代码规范
由前后端组长提供
客服专线:400-870-0066 地址:深圳市南山区软件产业基地 5D 栋 2 楼 官网:www.zhihuiyouzhan.com
第 2 页 共 3 页
智慧油站全面解决方案专家
代码评审打分表
附:评审打分表
评审功能点
评审时间
代码作者
序号
检查项
详述
check 打分
1
2
3
4
5
6
7
8
9
10
流程清晰性
功能实现流程是否清晰,逻辑实现是否明确?
可读性
代码是否清晰可读?程序员是否不必要的复杂化了代码?
可维护性
其他工程师可否维护该代码?文档和注释是否正确?
正确性
代码是否实现了功能?算法是否得当?
可靠性和健壮性 代码是否容错力?异常情况如何处理?
安全性
代码在非授权访问,恶意使用,非法修改上如何处理?
扩充性
当负载、用户、数据、输入等增长时,代码是否是系统扩充
的瓶颈?
重用性
本代码能否被其他应用使用?
效率
简洁
评审人
代码是否有效地使用的系统资源?并能被优化?
远程调用数据传输是否有不必要的冗余数据?是否会造成
慢查询?
总分:
客服专线:400-870-0066 地址:深圳市南山区软件产业基地 5D 栋 2 楼 官网:www.zhihuiyouzhan.com
第 3 页 共 3 页