数据库设计:数据库设计步骤
概念设计工具-ER图,UML图
逻辑设计工具-范式-1NF,2NF,3NF,BCNF
数据库设计和ER模型
数据库设计(Database Design,简记为DBD):构造最优的数据模型,建立数据库及其应用系统的过程。
目前数据库已用于各类应用系统,MIS、DSS、0AS等。
数据库设计的优劣将直接影响应用系统的质量和运行效果。
数据库设计和ER模型
1数据库设计的全过程
2ER模型
3 UML模型
数据库设计过程
数据分析-数据建模-关系数据模式-关系数据库管理系统
用户需求(数据分析,现实世界)-概念模型(数据建模,信息世界)-三层架构二级映象(关系数据库模式,机器世界)
1数据库设计的全过程(数据库系统生存期)
1.1 规划阶段
1.2需求分析阶段
1.3概念设计阶段
1.4逻辑设计阶段
1.5 物理设计阶段
1.6数据库的实现
1.7数据库的运行与维护
问题的提出
为了解决“软件危机”,在1968年首次提出“软件工程”的概念。
软件生存期是指从软件的规划、研制、实现、投入运行后的维护,直到它被新的软件所取代而停止使用的整个期间。
以数据库为基础的信息系统通常称为数据库应用系统,它一般具有信息的采集、组织、加工、抽取、综合和传播等功能。
数据库应用系统的开发是一项软件工程,但又有自己特有的特点,所以特称为“数据库工程”。
1.1 规划阶段
对于数据库系统,特别是大型数据库系统,规划阶段是十分必要的。
规划的好坏将直接影响到整个系统的成功与否。
规划阶段的步骤:
1.系统调查
·对应用单位作全面的调查,发现其存在的主要问题
·画出组织层次图,以了解企业的组织机构
2.可行性分析
从技术、经济、效益、法律等方面对建立数据库系统的可行性进行分析。
写出可行性分析报告
组织专家进行讨论其可行性
3.确定数据库系统的总目标
对应用单位的工作流程进行优化和制订项目开发计划
在得到决策部门批准后,就正式进入数据库系统的开发工作
1.2需求分析阶段
计算机人员(系统分析员)和用户双方共同收集数据库所需要的信息内容和用户对处理的需求。
以需求说明书的形式确定下来,作为以后系统开发的指南和系统验证的依据。
需求分析工作的步骤(系统功能)
1.分析用户活动,产生业务流程图
2.确定系统范围,产生系统关联图
3.分析用户活动涉及的数据,产生数据流图
4.分析系统数据,产生数据字典
1.3概念设计阶段
概念设计的目标是产生反映用户需求的数据库概念结构,即概念模型概念模型具有硬件独立、软件独立的特点。
概念设计的主要步骤
1.进行数据抽象,设计局部概念模型
·从实际的人、物、事和概念中抽取所关心的共同特性,忽略非本质的细节,并把这些特性用各种概念加以精确描述
·概念结构是对现实世界的一种抽象
2将局部概念模型综合成全局概念模型
·综合各局部概念结构就可得到反映所有用户需求的全局概念结构·在综合过程中,主要处理各局部模式对各种对象定义的冲突(属性冲突、命名冲突、结构冲突)
3.评审
·消除了所有冲突后,就可把全局结构提交评审
·评审分为用户评审与DBA及应用开发人员评审两部分
概念设计的方法
概念设计中最著名的方法就是实体联系方法(ER方法)
概念设计的结果是得到一个与DBMS无关的概念模型。
1.4逻辑设计阶段
逻辑设计的目的是把概念设计阶段设计好的概念模型转换成与选用的具体机器上的DBMS所支持的数据模型相符合的逻辑结构(包括数据库逻辑模型和外模型)。
对于逻辑设计而言,应首先选择DBMS,但往往数据库设计人员没有挑选的余地,,都是在指定的DBMS上进行逻辑结构的设计。
逻辑设计的主要步骤
1.把概念模型转换成逻辑模型
2.设计外模型
3.设计应用程序与数据库的接口
4.评价模型
5.修正模型
1.5 物理设计阶段
对于给定的基本数据模型选取一个最适合应用环境的物理结构的过程,称为物理设计。
物理设计的步骤
物理结构设计
⑴存储记录结构设计
(2)确定数据存放位置
⑶存取方法的设计
约束和具体的程序设计
(4)完整性和安全性考虑
(5)程序设计
1.6 数据库的实现
1.用DDL定义数据库结构
2.组织数据入库
3.编制与调试应用程序
4.数据库试运行
1.7数据库的运行与维护
对数据库经常性的维护工作主要是由DBA完成的
-数据库的转储和恢复
-数据库安全性、完整性控制
-数据库性能的监督、分析和改进
-数据库的重组织和重构造
若应用变化太大,已无法通过重构数据库来满足新的需求,或重构数据库的代价太大,则表明现有数据库应用系统的生命周期已经结束,应该重新设计新的数据库系统,开始新数据库应用系统的生命周期了。
小结
数据库各级模式的形成
-数据库的各级模式是在设计过程中逐步形成的
-需求分析阶段综合各个用户的应用需求(现实世界的需求)。
-概念设计阶段形成独立于机器特点、独立于各个DBMS产品的概念模式(信息世界模型),用E-R图来描述。
-在逻辑设计阶段将E-R图转换成具体的数据库产品支持的数据模型如关系模型,形成数据库逻辑模式。然后根据用户处理的要求,安全性的考虑,在基本表的基础上再建立必要的视图(VIEW)形成数据的外模式。
-在物理设计阶段根据DBMS特点和处理的需要,进行物理存储安排,设计索引,形成数据库内模式。
整个数据库设计过程体现了结构特征与行为特征的紧密结合。
目前很多DBMS都提供了一些辅助工具,为加快数据库设计速度,设计人员可根据需要选用。
-例如需求分析完成之后,设计人员可以使用工具画E-R图,将E-R图转换为关系数据模型,生成数据库结构;画数据流图,生成应用程序。
-利用CASE工具生成的仅仅是数据库应用系统的一个雏形,比较粗糙,数据库设计人员需要根据用户的应用需求进一步修改该雏形,使之成为一个完善的系统。
-早期就选择某种CASE工具固然能减少数据库设计的复杂性,加快数据库设计的速度,但往往容易将自己限制于某一个DBMS上,而不是根据概念设计的结果选择合适的DBMS。
总结:
数据库设计步骤:1.需求分析
2.概念设计(ER/UML)
3.逻辑设计(范式-1NF,2NF,3NF,BCNF)
4.物理设计
5.数据库就实现了