产品:PM 后端:RD 前端:FE 测试:QA
人员 | 输入 | 输出 | 评审参与人员 | 备注 | |
需求分析 | 产品 | 客户需求 | 需求规格说明书(prd) | prd出完后,进行需求评审 全员参与评审 | |
UI设计 | UI、UE | prd | UI / UE图 | UI 、UE图出完后,进行评审 全员参与评审 | UI:侧重视图展示,主要体验样式和边距 UE:侧重交互,如:信息是弹窗展示还是跳转展示 |
总体设计 | 项目经理 | prd、(ui、ue) | ER图、数据库设计、模块间的依赖关系(微服务)、时序图 | 主要是从总体上串整个流程 | |
详细设计 | 开发人员 | prd、UI/UE图、总体设计结果 | 流程图、接口文档(思维导图)、设计模式、中间件选择 | 总体设计 和 详细设计 统称为 技术设计。 技术设计完后,进行技术评审 全员参与评审 | 主要为了描述如何实现功能 |
测试设计 | 测试人员 | prd、技术设计的结果 | 测试用例(case) | 全员参与评审 | 指导更好、更高效的测试 |
编码 | 开发人员 | 使用技术设计 写代码 | |||
单测 | 开发人员 | 主要测试某一个方法或者某一个功能(Junit,Mock), mock的功能是: (1)在需要调别人的接口,别人未开发完时,我开发完了,使用mock写一些死值方便我自己进行测试自己的功能是否正确. (2)mock出更多的可能性。别人的接口的作用可能就一种,但是我们自己模拟测试时,自己写的测试数据种类更多一些,白盒测试更完善。 | |||
联调 | 前端和后端 | ||||
集成测试 | 测试人员 | 使用测试设计(测试case)进行测试即可 | |||
上线 | 测试或后端 | (0)整理sql,整理要创建的消息队列及其他中间件或要申请的资源 (1)看是否要刷数(数据库)(如:新添加一个字段,之前的数据库表中没有该字段的数据,上线前要将之前的表中的数据迁移到新数据表中,即旧逻辑适配新逻辑) (2)输出上线过程(几点上线,几点申请资源,什么时候刷数,先上哪个服务,后上哪个服务,线上验证,如何回滚,回滚到哪个分支,上线过程中如何监控(看日志)) (3)上线 | |||
维护 | 开发人员 |
|
每一步设计(只出文档不干活)后都需要做评审