适用于中小型团队的简单研发管理规范
研发管理的最终目标是满足业务需求,实现用户或商业价值
研发团队通过持续交付和维护高质量的软件服务来达成上述目标
- 需求应该由业务的利益相关方提出
- 需求必须经过需求评审,和业务利益挂钩,明确回答“是什么”和“为什么”
- 需求应该进入需求池,实现全生命周期管理
- 需求必须有优先级,优先实现优先级高的需求
- 需求可能发生变更,变更后的需求必须重新经历全部或部分生命周期
- 开发必须经过技术方案评审,和需求挂钩,明确回答“怎么做”
- 代码库必须使用版本控制系统
- 代码提交记录应该遵守团队统一的规范
- 代码风格应该遵守团队统一的规范
- 软件设计应该遵守 SOLID 原则,提高可维护性
- 代码应该通过单元测试,提高软件质量
- 代码合并到主干之前应该经过 code review
- 测试必须经过用例评审,和需求规格、技术方案挂钩,确保“所得为所需”
- 软件缺陷应该进入缺陷池,实现全生命周期管理
- 软件缺陷必须有优先级,优先修复优先级高的缺陷
- 软件缺陷可能被忽略,如果它造成的损失足够小
- 典型的互联网企业,业务利益相关方包括监管、用户、客户、老板、市场、销售、运营、产品、设计、开发、测试、运维
- 本规范主要以开发的视角梳理研发流程,提升业务参与各方的协作效率