项目简介
需求信息
MRD链接: PRD链接: Aone链接: 交互设计稿:
文档变更记录
日期,修订人
【修订内容】
日期,修订人
【修订内容】
项目背景
【系统做此次迭代的背景介绍,基于什么目的,解决什么问题】
项目目标
业务目标
【本次项目的业务目标,可以是新增功能、提升数据、提升体验等,如果是数据指标,需备注指标计算逻辑】
技术目标
【本次项目的技术目标,可以是新增xx能力、系统重构、架构模型升级等】
项目成员
【项目成员&角色清单】
期望里程碑节点
【对齐后的期望的各里程碑时间节点】
关键术语
术语A:说明
术语B:说明
整体方案说明
架构设计(容器/领域级别本次的改动点)
【展示系统概览,包含分层架构、应用系统间的关系变动,若系统间依赖关系、交互逻辑均没有变动,则置空】
系统设计(内部模块级别本次的改动点)
【展示应用内部的调用链路、类模型、ER模型设计,若链路、模型均没有变动,则置空】
表模型设计
【包含线上表和离线表的表结构、表字段的变更,如有表关系的变更,则需附上ER图,注明变动内容;若没有则置空】
核心接口/消息设计(包含错误码)
【包含核心接口的新增/变更/废弃;附对应的错误码;此部分内容需同步补充至知识库#技术方案#对外接口文档|消息模型文档|错误码清单】
接口名称
接口
- 入参 a.
- 返回 a.
- 可能的异常/错误码
a.
【示例】实例一个LanguageHandler
LanguageFactory.getInstance
- 入参 a. PositionEnum枚举,用户当前所处页面 b. SiteDO枚举,用户当前所选国家站 c. userID,用户id d. deviceID,设备id e. SiteDO枚举,设备当前所选语言 ⅰ. 通过LanguageFactory.getLanguageByDeviceLanguage获取
- 返回 a. LanguageHandler实例
- 可能的异常/错误码 a. 无,兜底返回null
功能子任务拆解
功能点 对应场景 优先级 开发人员 备注
业务流程拆解
场景A
行为描述
【基于用户或平台视角的行为描述,从而保障与需求所表述的理解一致】
落地方案
【改动点、时序图、状态活动图(复杂场景)、模型设计、接口设计、异常情况、备注说明】
场景B
行为描述
【基于用户或平台视角的行为描述,从而保障与需求所表述的理解一致】
落地方案
【改动点、时序图、状态活动图(复杂场景)、模型设计、接口设计、异常情况、备注说明】
稳定性分析
核心风险(异常流)
涉及到的影响面评估,可预测到的核心风险,可能的异常情况说明以及可能的版本兼容问题; 分析是否可能对线上机器的内存、磁盘、load有影响; 包含场景、表现、影响、处理方式
预案
针对本次变更可能需要的降级方面的预案
强弱依赖
对上下游强依赖的监控、说明等 对上下游弱依赖的监控、兜底策略等
容灾
针对本次变更可能需要的容灾方案
上线计划
包含发布顺序、上线后SOP(配置项、灰度计划)、相关日志监控、数据监控等
附录
项目选型
调研过程记录,比如遇到的难点、最终决策的理由 场景 - xxxx 备选方案A 备选方案B 优势 劣势 注意点 相关资料 最终结论
相关文档
涉及的其他系统文档,便于查阅
问题记录
【项目过程中的核心问题记录,TODO和最终解决方案】