数据库设计之需求分析
2021/12/31 2:10:40
本文主要是介绍数据库设计之需求分析,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
需求分析的任务
需求分析就是分析用户的要求
是设计数据库的起点
结果是否准确地反映了用户的实际要求,将直接影响到后面各个阶段的设计,并影响到设计结果是否合理和实用
需求分析的任务
详细调查现实世界要处理的对象(组织、部门、企业等)
充分了解原系统(手工系统或计算机系统)工作概况
明确用户的各种需求
在此基础上确定新系统的功能
新系统必须充分考虑今后可能的扩充和改变
调查的重点是“数据”和“处理”,获得用户对数据库的要求
(1)信息要求
用户需要从数据库中获得信息的内容与性质
由信息要求可以导出数据要求,即在数据库中需要存储哪些数据
(2)处理要求
用户要完成的处理功能
对处理性能的要求
(3)安全性与完整性要求
确定用户最终需求的难点
用户缺少计算机知识,不能准确地表达自己的需求,他们所提出的需求往往不断地变化。
设计人员缺少用户的专业知识,不易理解用户的真正需求,甚至误解用户的需求
解决方法
设计人员必须不断深入地与用户进行交流,才能逐步确定用户的实际需求
需求分析的方法
调查清楚用户的实际需求并进行初步分析
与用户达成共识
分析与表达这些需求
调查用户需求的步骤
(1)调查组织机构情况
(2)调查各部门的业务活动情况
(3)协助用户明确对新系统的各种要求,包括信息要求、处理要求、完全性与完整性要求
(4)确定新系统的边界
常用调查方法
(1)跟班作业
通过亲身参加业务工作了解业务活动的情况
(2)开调查会
通过与用户座谈来了解业务活动情况及用户需求
(3)请专人介绍
(4)询问
对某些调查中的问题,可以找专人询问
(5)设计调查表请用户填写
调查表设计合理,则很有效
(6)查阅记录
查阅与原系统有关的数据记录
进一步分析和表达用户需求
分析方法
结构化分析方法(Structured Analysis,简称SA方法)
SA方法从最上层的系统组织机构入手
采用自顶向下、逐层分解的方式分析系统
对用户需求进行分析与表达后,需求分析报告必须提交给用户,征得用户的认可
需求分析过程
数据字典
数据字典是关于数据库中数据的描述,即元数据,不是数据本身
数据字典在需求分析阶段建立,在数据库设计过程中不断修改、充实、完善
数据字典是进行详细的数据收集和数据分析所获得的主要结果
注意:
和关系数据库管理系统中数据字典的区别和联系
数据字典的内容
数据项
数据结构
数据流
数据存储
处理过程
数据项是数据的最小组成单位
若干个数据项可以组成一个数据结构
数据字典通过对数据项和数据结构的定义来描述数据流、数据存储的逻辑内容
数据项
数据项是不可再分的数据单位
对数据项的描述
数据项描述={数据项名,数据项含义说明,别名,数据类型,长度,取值范围,取值含义,与其他数据项的逻辑关系,数据项之间的联系}
“取值范围”、“与其他数据项的逻辑关系”定义了数据的完整性约束条件,是设计 数据检验功能的依据
可以用关系规范化理论为指导,用数据依赖的概念分析和表示数据项之间的联系
数据结构
数据结构反映了数据之间的组合关系。
一个数据结构可以由若干个数据项组成,也可以由若干个数据结构组成,或由若干个数据项和数据结构混合组成。
对数据结构的描述
数据结构描述={数据结构名,含义说明,组成:{数据项或数据结构}}
数据流
数据流是数据结构在系统内传输的路径。
对数据流的描述
数据流描述={数据流名,说明,数据流来源,数据流去向,组成:{数据结构},平均流量,高峰期流量}
数据流来源:说明该数据流来自哪个过程
数据流去向:说明该数据流将到哪个过程去
平均流量:在单位时间(每天、每周、每月等)里的传输次数
高峰期流量:在高峰时期的数据流量
数据存储
数据存储是数据结构停留或保存的地方,也是数据流的来源和去向之一。
对数据存储的描述
数据存储描述={数据存储名,说明,编号,输入的数据流 ,输出的数据流,组成:{数据结构},数据量,存取频度,存取方式}
存取频度:每小时、每天或每周存取次数,每次存取的数据量等信息
存取方法:批处理 / 联机处理;检索 / 更新;顺序检索 / 随机检索
输入的数据流:数据来源
输出的数据流:数据去向
处理过程
处理过程的具体处理逻辑一般用判定表或判定树来描述。数据字典中只需要描述处理过程的说明性信息
处理过程说明性信息的描述处理过程描述={处理过程名,说明,输入:{数据流},输出:{数据流},处理:{简要说明}}
简要说明:说明该处理过程的功能及处理要求
功能:该处理过程用来做什么
处理要求:处理频度要求,如单位时间里处理多少事务,多少数据量、响应时间要求等
处理要求是后面物理设计的输入及性能评价的标准
需求分析小结
把需求收集和分析作为数据库设计的第一阶段是十分重要的。
第一阶段收集的基础数据(用数据字典来表达)是下一步进行概念设计的基础。
强调两点
(1)设计人员应充分考虑到可能的扩充和改变,使设计易于更改,系统易于扩充
(2)必须强调用户的参与
欢迎大家加我微信交流讨论(请备注csdn上添加)
这篇关于数据库设计之需求分析的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23Springboot应用的多环境打包入门
- 2024-11-23Springboot应用的生产发布入门教程
- 2024-11-23Python编程入门指南
- 2024-11-23Java创业入门:从零开始的编程之旅
- 2024-11-23Java创业入门:新手必读的Java编程与创业指南
- 2024-11-23Java对接阿里云智能语音服务入门详解
- 2024-11-23Java对接阿里云智能语音服务入门教程
- 2024-11-23JAVA对接阿里云智能语音服务入门教程
- 2024-11-23Java副业入门:初学者的简单教程
- 2024-11-23JAVA副业入门:初学者的实战指南