修订记录
| 序号 | 需求 | 修订人 | 修订内容 | 时间 |
|---|---|---|---|---|
| 1 | 题库 | xxx | 题库系统设计 | 2023-12-06 |
术语说明
背景
技术背景
业务背景
目标
非目标
是一些可以作为目标而被刻意选择不作为目标的项目
整体架构
描述该方案支持的架构特征,以及模块、模块间的依赖关系、模块间的数据依赖关系。
一些可选择的架构特征如下:
可维护性、可配置、高可用、高性能、安全性、可靠性、数据一致性。
架构特征的支撑最终由我们的架构设计来提现,包含在结构、模块内的服务走向和核心流程设计里面。
其中可维护性几乎是所有架构设计都要支撑的特征。
整体架构设计
模块间的依赖关系
模块间的数据依赖
模块内服务依赖(可选)
详细设计(必选)
在这一节中,除了介绍设计方案的细节,还应该包括在产生最终方案过程中,主要的设计思想及考虑过的权衡(trade-off)。这一节的结构和内容因设计对象(系统,API,流程等)的不同可以自由决定,可以划分一些小节来更好地组织内容,尽可能以简洁明了的结构阐明整个设计。
有一些设计思考点应该贯穿于设计的始终,在以下每个小节中体现。包括但不限于:
l未来如何扩展(特别是水平扩展)?如果不支持,瓶颈是什么,解决方案是什么?
l是否需要自动弹性扩缩容?需要的话如何实现?
l是否需要支持多租户?需要的话,是否需要做隔离,方案是什么?
通常可以包含以下内容(注意,小节的命名可以更改为更清晰体现内容的标题):
核心流程设计(必选)
核心流程设计是对业务场景,制定控制规则,是针对服务的功能和交互的具体约束说明,这一部分的编写应该关注核心抽象,以保持交互的稳定性。通常建议使用UML时序图或者UML交互图来表达。
API设计(可选)
数据存储设计(可选)
数据库设计(可选)
NoSQL存储设计(可选)
数据上报(可选)
这里描述需要上报哪些数据,上报哪些字段,如何上报,如何存储,以及如何使用。
以及相关预估数据:单条记录大小预估、每天新增记录条数和空间占用等。
配置字段设计(必选)
需考虑配置的键设计的整个生命周期,避免冗余、过期字段的出现。
最小配置
编码安全涉及(必选)
需考虑如何防止 xss 、csrf、ssrf、SQL注入攻击等漏洞攻击
其他设计考虑(可选)
相关非功能性需求描述,围绕安全性,可用性,可靠性,性能,可支持性主题,项目对涉及到的主题进行描述,例子如下:
概要设计文档指南
2万+

被折叠的 条评论
为什么被折叠?



