what' the 开发流程
前言
开发流程主要目的是提高产品质量,减少扯皮情况的发生。
公司大小不同、行业不同、管理不同,相对应的开发流程也不同,这边梳理一下通用的较为实用的开发流程。主要分为 6 个阶段:需求评审、技术评审、需求开发、跟进测试、跟进上线、线上问题复盘
1.需求评审
参加需求评审之前需要先做充分的准备,如果在这一步偷懒,就会对需要目标不明确、评审过程中因为各种发散思维导致偏离方向,或者参会人员各执己见难以达到统一口径。
评审前
首先需要产品同事对以下三个问题有详细解析,拒绝一拍脑袋就想出来的需求
- 解决了什么问题?
- 提升了什么指标?
- 有什么商业价值?
这三个问题搞清楚了,再进行评审。产品经理发出原型和 prd 初稿后,开发人员要有 1-2 天时间(具体时间根据项目大小而定),熟悉文档,有任何疑问可以反馈给开发经理,由开发经理统一收集再反馈给产品经理,产品经理逐一进行答疑。
熟悉完文档后,开发人员和开发经理需要一起确定:
- 技术选型(前端/后端框架、日志中间件、消息中间件、数据库...)
- 技术架构(组件与组件之间如何协同工作,如何部署)
- 技术难点预知(明确存在的技术难点,并确定解决方案)
- 性能瓶颈预知(明确可能存在性能瓶颈的地方,并确定应对措施)
- 上下游系统交互(明确在流程中的哪个位置,约定接口文档提供时间、接口联调时间)
- 功能模块划分(任务拆分和分配)
技术方案确定后,需要输出技术设计文档,包括:总体设计、概要设计、详细设计、接口设计 等。
评审中
开发人员和产品人员必须参加,有需求不明确的地方当场提出,同时开发人员也需要思考产品需求是否合理,可适当提出自己的产品意见。
一般评审至少有两次,得到相关的初稿和终稿。
评审后
如有需更新技术文档的请及时进行更新。
开发经理首先需要考虑团队现有的资源及项目的优先级,然后根据技术设计文档进行评估排期。
排期模板如下:

2.技术评审
评审前
开发人员一定要重视技术设计!
技术评审主要评审什么?
系统关系图、模块关系图、流程图的设计,画图工具根据自己爱好即可。接口设计,需要考虑接口的 兼容性、扩展性、参数命名遵守 参数命名规范 等。数据库设计,需要遵守 数据库设计规范,并记录 数据表变更文档。详细设计,需要考虑公共类、公共方法、方法定义 遵守 项目框架目录规范。
评审中
开发人员和开发经理必须参加,涉及到总体设计和概要设计时,需要邀请 架构师 参与,涉及到数据库调整时,需要邀请 DBA 参与。
一般评审至少有两次,得到相关的初稿和终稿。
评审后
评审后,如有需更新排期文档的请及时进行更新。
排期确定后,通过邮件方式进行回复排期,使用标准化的 回复排期邮件模板。
按部就班,按计划行事。
3.需求开发
编码
开发人员编码过程中,需要遵守团队的 编码规范,同时严格按照设计文档中的技术方案执行,除了保证代码逻辑的正确性外,还需要考虑代码封装性、可维护性、可扩展性,当编码阶段发现技术方案需要调整时,需要及时通知开发经理,经过同意后才能实施,涉及到引入新框架和新技术,也需要提前通知开发经理。
代码审查
开发人员需要控制代码提交的频次和粒度,每次代码提交之后 24 小时内,需要主动联系代码审查人完成检查,开发经理负责检查是否执行到位。
代码审查主要审查什么?
- 规范性检查(是否符合代码规范、提交备注规范等)
- 健壮性检查(是否陷入死循环、资源未释放等)
- 安全性检查(是否存在SQL注入、XSS、SSRF、CSRF、越权、文件上传等)
- 性能检查(是否存在未加缓存频繁连接DB,是否需要连接池)
联调
开发人员积极主动地推动联调工作,如果遇到阻碍及时通知技术经理进行协调。
自测
联调完毕后,开发人员需要同时完成自测,并将标准化的 自测报告 发给测试团队。
对于有性能要求的项目,需要开发人员进行性能测试,并出具标准化的 性能测试报告。
提测
自测完毕后,通过邮件方式进行提测申请,使用标准化的 申请提测邮件模板。
开发人员根据公司运维提供的发布方式,进行部署到测试环境。
4.跟进测试
测试用例评审
开发人员必须参加,避免出现测试与开发对需求理解不一致的情况。
Bug 修复
开发人员及时关注 Bug 列表,快速修复迭代发布,如果测试进度存在延期风险,需要及时通知开发经理。
5 跟进上线
开发人员首先确认 Bug 全部关闭,同时产品人员在测试环境验收通过,然后需要主动推动相关团队理清上线依赖和上线顺序,同时确定回滚预案,最后根据公司运维提供的发布方式,进行部署到线上环境。
线上环境部署完成后,通过邮件方式进行通知产品人员和测试人员,使用标准化的 上线完毕邮件模板,同时积极推动测试人员和产品人员完成线上验证,线上出现问题后第一时间通知开发经理。
6 线上问题复盘
需求在测试环境和正式环境,均未测试出 Bug,上线一段时候后出现 Bug,这种问题用什么制度约束?出现问题后开发人员及时修复,修复完了就完事了。仅仅做到这些还远远不够。
建议使用如下模板进行复盘。

结尾
仅供参考!!!
本文来自博客园,作者:''竹先森゜,转载请注明原文链接:https://www.cnblogs.com/zhuminghui/p/19548784
浙公网安备 33010602011771号