数据库设计报告
文件状态: [√] 草稿 [ ] 正式发布 [ ] 正在修改 | 文件标识: | Company-Project-SD-DATABASE |
当前版本: | X.Y | |
作者: | ||
完成日期: | Year-Month-Day |
版本/状态 |
作者 |
参与者 |
起止日期 |
备注 |
0. 文档介绍
0.1 文档目的
0.2 文档范围
0.3 读者对象
0.4 参考文献
0.5 术语与缩写解释
1. 数据库环境说明
2. 数据库的命名规则
3. 逻辑设计
4. 物理设计
4.0 表汇总
4.1 表A
4.n 表N
5. 安全性设计
5.1 防止用户直接操作数据库的方法
5.2 用户帐号密码的加密方法
5.3 角色与权限
6. 优化
7. 数据库管理与维护说明
0. 文档介绍
0.1 文档目的
0.2 文档范围
0.3 读者对象
0.4 参考文献
提示:列出本文档的所有参考文献(可以是非正式出版物),格式如下:
[标识符] 作者,文献名称,出版单位(或归属单位),日期
例如:
[AAA] 作者,《立项建议书》,机构名称,日期
[SPP-PROC-SD] SEPG,系统设计规范,机构名称,日期
0.5 术语与缩写解释
缩写、术语 |
解 释 |
SPP |
精简并行过程,Simplified Parallel Process |
SD |
系统设计,System Design |
… |
1. 数据库环境说明
提示:
(1)说明所采用的数据库系统,设计工具,编程工具等
(2)详细配置
2. 数据库的命名规则
提示:
(1)完整并且清楚的说明本数据库的命名规则。
(2)如果本数据库的命名规则与机构的标准不完全一致的话,请作出解释。
3. 逻辑设计
提示:数据库设计人员根据需求文档,创建与数据库相关的那部分实体关系图(ERD)。如果采用面向对象方法(OOAD),这里实体相当于类(class)。
4. 物理设计
提示:
(1)主要是设计表结构。一般地,实体对应于表,实体的属性对应于表的列,实体之间的关系成为表的约束。逻辑设计中的实体大部分可以转换成物理设计中的表,但是它们并不一定是一一对应的。
(2)对表结构进行规范化处理(第三范式)。
4.0 表汇总
表名 |
功能说明 |
表A |
|
表B |
|
表C |
4.1 表A
表名 |
|||
列名 |
数据类型(精度范围) |
空/非空 |
约束条件 |
补充说明 |
4.n 表N
表名 |
|||
列名 |
数据类型(精度范围) |
空/非空 |
约束条件 |
补充说明 |
5. 安全性设计
提示:提高软件系统的安全性应当从“管理”和“设计”两方面着手。这里仅考虑数据库的安全性设计。
5.1 防止用户直接操作数据库的方法
提示:用户只能用帐号登陆到应用软件,通过应用软件访问数据库,而没有其它途径操作数据库。
5.2 用户帐号密码的加密方法
提示:对用户帐号的密码进行加密处理,确保在任何地方都不会出现密码的明文。
5.3 角色与权限
提示:确定每个角色对数据库表的操作权限,如创建、检索、更新、删除等。每个角色拥有刚好能够完成任务的权限,不多也不少。在应用时再为用户分配角色,则每个用户的权限等于他所兼角色的权限之和。
角色 |
可以访问的表与列 |
操作权限 |
角色A |
||
角色B |
||
6. 优化
提示:分析并优化数据库的“时-空”效率,尽可能地“提高处理速度”并且“降低数据占用空间”。
(1)分析“时-空”效率的瓶颈,找出优化对象(目标),并确定优先级。
(2)当优化对象(目标)之间存在对抗时,给出折衷方案。
(3)给出优化的具体措施,例如优化数据库环境参数,对表格进行反规范化处理等。
优先级 |
优化对象(目标) |
措施 |
7. 数据库管理与维护说明
提示:在设计数据库的时候,及时给出管理与维护本数据库的方法,有助于将来撰写出正确完备的用户手册。