开发流程
接下来从以上六个阶段进行逐一拆解。
1 需求评审
作为技术人员肯定都参加过需求评审会,不知道有没有遇到这样的情况?
- 产品经理按照 PRD 文档读一遍,参会人员无动于衷。
- 产品经理刚讲了一个需求点,参会人员就产生了激烈的讨论,都在证明自己是对的。
- 参会人员对需求的目标不明确,对需求点进行发散思维讨论,最终偏离方向。
- 解决了什么问题?
- 提升了什么指标?
- 有什么商业价值?
- 技术选型(前端/后端框架、日志中间件、消息中间件、数据库...)
- 技术架构(组件与组件之间如何协同工作,如何部署)
- 技术难点预知(明确存在的技术难点,并确定解决方案)
- 性能瓶颈预知(明确可能存在性能瓶颈的地方,并确定应对措施)
- 上下游系统交互(明确在流程中的哪个位置,约定接口文档提供时间、接口联调时间)
- 功能模块划分(任务拆分和分配)
- 系统关系图、模块关系图、流程图的设计,画图工具根据自己爱好即可。
- 接口设计,需要考虑接口的 兼容性、扩展性、参数命名遵守 参数命名规范 等。
- 数据库设计,需要遵守 数据库设计规范,并记录 数据表变更文档。
- 详细设计,需要考虑公共类、公共方法、方法定义 遵守 项目框架目录规范。
- 规范性检查(是否符合代码规范、提交备注规范等)
- 健壮性检查(是否陷入死循环、资源未释放等)
- 安全性检查(是否存在SQL注入、XSS、SSRF、CSRF、越权、文件上传等)
- 性能检查(是否存在未加缓存频繁连接DB,是否需要连接池)