[转]服务端技术方案模版
1 需求分析
1.1 需求文档
本章节记录需求文档地址
1.2 需求背景
- 当前业务现状
- 本次需求内容
- 本次需求目标
2 概要设计
2.1 领域划分
本章节使用四色分析法划分领域
2.2 系统功能
本章节使用用例图描述系统功能
3 详细设计
3.1 流程视图
3.1.1 整体流程
本章节使用时序图描述整体流程
- 顺序维度:正向、逆向
- 调用方式:同步、异步
时序图应该着眼全局
不宜过多描述复杂逻辑分支
如果有需要可以根据不同维度画多张图
3.1.2 复杂流程
本章节使用活动图描述复杂逻辑分支
如果有需要可以结合多维表格分析
3.1.3 状态流转
本章节使用状态机图描述状态流转
3.2 数据视图
3.2.1 关系模型
本章节使用ER图描述实体关系模型
3.2.2 数据库表
本章节描述建库建表语句:
- 创建语句
- 索引语句
- 初始化语句
3.3 接口视图
本章节描述与前端交互接口:
- 接口路径
- 输入参数
- 输出参数
- 接口说明
- 老版本兼容性
4 非功能设计
4.1 安全设计
- 常见安全维度
- 系统安全
- 数据安全
- 业务安全
- 常见安全操作
- 校验操作权限
- 记录操作流水
- 记录业务快照
- 敏感字段不依赖前端(userId、金额)
4.2 性能设计
- 性能分析
- RT
- QPS
- 并发
- 压测
- 优化层级
- 数据层
- 缓存层
- 服务层
- 前端层
- 客户端
- 代理层
- 常用方法
- 减少请求
- 空间换时间
- 任务并行化
- 任务异步化
4.3 扩展性设计
- 数据表设计
- 二进制字段
- extend1、extend2
- bizType、bizSubType
- 接口设计
- bizType、bizSubType
- 松散参数
- 版本号
- 代码设计
- 设计模式
- 纵向做隔离
- 横向做编排
4.4 高可用设计
- 降级策略
- 延时策略
- 隔离策略
- 冗余策略
- 告警策略
- 系统错误(一次立刻感知)
- 业务错误(一定频次感知)
- 数据监控(数据异常感知)
5 项目排期
本章节使用表格记录负责人和排期:
- 端信息
- 服务端
- 客户端
- 前端
- 测试
- 项目经理
- 产品经理
- 表格内容
- 哪个端
- 负责人
- 开始时间
- 结束时间
- 是否完成
- 风险信息
- 备注信息
- 上线准备