带你读《代码管理实践10讲》——五、重评审还是轻评审,企业该如何选择代码评审模式?

简介: 带你读《代码管理实践10讲》——五、重评审还是轻评审,企业该如何选择代码评审模式?

代码评审带来的好处不言自明, 但企业业务快速发展的诉求与代码评审推动落地两者之间, 往往存在矛盾。到底选择重评审,还是轻评审?今天我们继续跟着云效代码团队同学一起认识下轻重评审,探讨下企业如何选择适合现在发展阶段的评审模式。

 

我们可以基于评审过程的严格程度,把评审分为轻/重两类,可以根据自身业务情况选择最合适的评审方式。

 

 

轻评审

重评审

卡点

合并时走评审,但不设强制卡点

合并必须走评审流程,设强制卡点

评审严格度

评审者自行决定

严格度高,评审人必须审阅且通过

评审追求

迭代速度优先

安全质量优先

适用团队

敏捷研发、质量风险要求不高的团队

迭代速度稳定、质量风险要求高的团队

 

1. 轻量级评审

轻评审即轻量级评审,适合将迭代速度放在第一优先级的产研团队,对代码质量和上线后的风险方面有一定包容度。

 

在研发资源极度紧张,业务需求井喷的场景下,质量和速度是鱼和熊掌不可兼得的事,很多初创企业的管理者或者是技术Leader都选择接受一定的技术债务。在研发流程上,不要求一定满足严格的评审合入准则, 在这种情况下,轻评审是不错的选择。

 

 

 

2. 重量级评审

重量级评审与轻量级评审采取不同的策略,有严格的卡点规则,通常见于以下场景:

 

∙        业务类:对于代码质量要求较高的业务模块

∙        服务类:基础类应用、中台类应用、通用性工具

∙        开源类:开源贡献场景通常对于代码质量的要求较高

3. 灵活的卡点支持

不同的企业对于代码评审的卡点支持上,通常主要关注通用性、扩展性和灵活性三个维度。

1 通用性

通用卡点主要包括:

 

∙        支持代码冲突检测结果作为合并卡点 。

∙        待解决评论作为合并卡点 。

∙        评审人评审是否通过作为合并卡点 。

2 扩展性

扩展性主要体现在,根据自身业务诉求,在基础卡点类型基础之上,支持扩展平台内置或者三方接入的自定义卡点:

 

∙        代码风格:支持 code-style 检测结果作为合并卡点。

∙        代码规范:支持代码规范类检测结果作为合并卡点。

∙        代码测试:支持单元测试、集成测试、可交付测试等测试结果作为合并卡点。

∙        安全合规:支持依赖包漏洞检测、代码漏洞检测、代码扫描检测、开源合规检测等检测结果作为合并卡点。

∙        其他自定义卡点类型。

3 灵活性

通常在一些特殊的场景下,尽管设置了代码评审的相关卡点,你可能仍旧希望在特定规则下,可以灵活的控制卡点的生效逻辑,包括:

可灵活选择观测项结果是否作为卡点,例如只希望对代码风格进行检查和结果查看,但
是不作为真正卡点阻碍代码的合并过程。

 

在紧急发布情况下,本地已经验证通过,希望临时将某些卡点检查自动跳过,从而尽快进行合并从而修复线上缺陷。

 

基于以上通用性、扩展性、灵活性的卡点考虑,代码评审应该灵活支持企业内不同的团队对于轻量级评审和重量级评审的不同诉求。

 

云效 Codeup 的新版代码评审通过对于合并卡点的理解和抽象,支持常见基础卡点以及自定义卡点(灰度中),进而提供该方法论的支撑落地方案:

 

image.png  

云效 Codeup 新版代码评审支持常见基础卡点以及自定义卡点(逐步开放中)

目录
相关文章
|
5天前
|
Kubernetes 开发工具 git
带你读《代码管理实践10讲》——一、量体裁衣,寻找适合你团队的代码协同模式(1)
带你读《代码管理实践10讲》——一、量体裁衣,寻找适合你团队的代码协同模式(1)
57 1
|
5天前
|
持续交付 开发工具 Android开发
带你读《代码管理实践10讲》——一、量体裁衣,寻找适合你团队的代码协同模式(2)
带你读《代码管理实践10讲》——一、量体裁衣,寻找适合你团队的代码协同模式(2)
48 0
|
5天前
|
安全 测试技术 开发工具
带你读《代码管理实践10讲》——三、评审协同如何提效,我们团队的4点思考
带你读《代码管理实践10讲》——三、评审协同如何提效,我们团队的4点思考
25 1
|
5天前
|
Java Serverless Maven
云效代码管理问题之代码仓库配置需要评审如何解决
云效仓库是阿里云提供的代码托管和版本控制服务,支持Git等多种版本管理工具;本合集聚焦于云效仓库的使用技巧、团队协作流程以及常见问题解答,旨在帮助开发者更高效地进行代码管理和协作开发。
1759 0
|
5天前
|
Shell 开发工具 git
云效代码管理可以通过以下步骤统一更换地址链接
【1月更文挑战第21天】【1月更文挑战第102篇】云效代码管理可以通过以下步骤统一更换地址链接
124 1
|
8月前
|
运维 安全 数据可视化
免费托管代码到云效代码管理Codeup
本场景介绍如何提交代码到云效代码管理Codeup。云效Codeup提供免费、不限容量的云上代码托管服务,您无需担心计费问题。
747 0
|
5天前
|
敏捷开发 Serverless 测试技术
云效产品使用常见问题之代码管理单文件超过200m无法上传如何解决
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
5天前
|
Shell 开发工具 git
云效代码管理可以通过以下步骤统一更换地址链接
云效代码管理可以通过以下步骤统一更换地址链接
42 3
|
架构师 开发工具 开发者
《开发者评测》之云效代码管理Codeup评测活动获奖名单
云效代码管理Codeup评测活动获奖名单出炉啦!
|
安全 前端开发 Java
阿里云产品测评 云效代码管理 Codeup
阿里云产品测评 云效代码管理 Codeup
328 1