版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、主要内容1.数据模型2.实体关系模型ERD3.ERD建模1. 数据模型n数据模型q描述数据的定义、结构和关系等特性的模型q说明了问题域和解系统共享的事物、对共享事物的描述和共享事物之间的关系 q能够反映企业业务的核心知识 n建立数据模型的过程被称为数据建模q模型建立:ERDq数据规范化q面向对象分析中的类图也可以建立数据描述模型1. 数据模型规划分析维护设计实现概念数据模型(仅仅是概念)概念数据模型(概念属性)逻辑数据模型规范化的逻辑数据模型物理数据模型演化的数据模型主要内容1.数据模型2.实体关系模型ERD1.实体2.属性3.关系3.ERD建模2.实体关系模型ERDn起源于Peter Che
2、n1976年提出的实体关系建模方法 n没有标准的表示法 n基本元素q实体q关系q属性2.1 实体n实例(Instance)q需要在系统中收集和存储的现实世界事物 n实体(Entity)q具有相同特征和属性的实例集的类别描述 StudentIDNameDOBName: Sandra DeeID: 205-7123DOB: Jan 17, 1962实例实体2.1 实体n概念实体n逻辑实体StudentStudentIDNameDOB2.1 实体n进程实体q系统需要它们在某些时刻的快照或者它们的运行环境信息n不是它们所体现出来的功能和达成的效果 选课时间地点选课人被选课程2.2 属性n属性q实体的描
3、述特征。q以数字、代号、单词、短语、文本乃至声音和图像的形式存在q一系列属性的存在集成起来就可以描述一个实体的实例 n属性是实体的特征,不是数据。属性会以一定的形式存在,这种存在才是数据,被称为属性的值(Value) 2.2 属性n属性的值就应该是一个合法的或者有业务含义的值,这个合法的取值范围称为域(Domain) 数据类型类型说明域例子Number整数最小最大月份的域:112Real实数最小最大考试得分:0.0100.0Text文本TEXT(属性的最大长度)电话号码:TEXT(20)Date日期最早最晚出生日期:1900-01-01今天Time时间最早最晚Boolean布尔Enumerat
4、ion枚举值1、值n性别:男、女、未知Binary二进制2.2 属性n标识符,又称为键(Key) q可以被用来唯一的确定和标识每个实例的属性或者属性组合n一个实体可能有多个键 ,都被称为候选键(Candidate Key) q人们通常会从多个候选键中选择和使用固定的某一个键来进行实例的标识q这个被选中的候选键被称为主键(Primary Key)q没有被选做主键的候选键被称为替代键(Alternate Key) 2.2 属性n单值属性和多值属性 n简单属性和组合属性 n存储属性和导出属性 StudentStudentNoLastFirstNameyearProgramDOBemailAddres
5、sStreetCityPCage2.3 关系n存在于一个或多个实体之间的自然业务联系n所有的关系隐含地都是双向的 n关系表达的不是实体物理上的联系(例如车与车轮),而是逻辑上的链接(例如整体部分关系) 学生课程选择2.3 关系n度数q参与关系的实体数量 雇员管理学生课程选择雇员时间在.工作项目一元关系(递归关系)二元关系三元关系(a)(b)(c)2.3 关系n基数(约束)q最大基数(键约束Key Constraint)n对关系中任意的其他实体实例,该实体可能参与关系的最大数量 q最小基数(参与约束Participant Constraint)n对关系中任意的其他实体实例,该实体可能参与关系的最
6、小数量 Sales Staff#Employee IDEmployee NameEmployee PhoneSales Organizational Structure#Manage ID#Subordinate ID#Team nameAssignment DatemanageReports to0:N0:N1:11:12.3 关系n子类型关系q在多个实体大部分相似、少部分不同时,可以从相似的实体当中抽取共性,建立一个公共的超类型(Super-type),所有实体都是超类型的子类型 员工管理者销售人员财务人员ISA2.3 关系n被关系影响的实体q弱实体n指存在和标识需要依赖于其他实体的实体
7、q关联实体n实体间建立关系时的副产品 考试课程考试对.评价学生课程选择2. ERD表示法实体弱实体关联实体关系属性标识符属性多值属性组合属性导出属性子类型关系E1RE2E1强制参与,E2可选参与E1RE21NE1最多一个实例参与,E2最多N个实例参与实体关系属性基数2. ERD表示法实体弱实体关联实体关系属性标识符属性子类型关系Mandatory OneMandatory ManyOptional OneOptional Many实体关系属性基数.attr1attr2.#attr_id.主要内容1.数据模型2.实体关系模型ERD3.ERD建模1.简单情况下的ERD建模2.硬数据的ERD建模3.
8、复杂情况下的ERD建模4.ERD与过程模型3.1 简单情况下的ERD建模n从描述信息中辨识实体 q可以重点关注描述信息中的名词,看系统是否需要收集其相关的特征n确定实体的标识符 n建立实体间关系q判断各个关系的建立是否会产生新的关联实体或者影响已有的实体特性 n添加详细的描述信息 q实体的详细属性和关系的基数3.1 简单情况下的ERD建模示例n研讨班在每个学年开始的时候开设,然后持续一个学年。n每个研讨班针对一个或几个研究方向。n每个研讨班由一位或几位教师主持。n在研讨班开设之后,学生可以根据主持教师(的姓名)和研讨班的方向来选择和参加某个研讨班。n所有的学生必须且只能参加一个研讨班的学习。n
9、研讨班时常会开展活动,由教师来决定活动的时间、地点、主题和做报告的学生(的姓名)。n每次活动时,由一位或多位同学围绕活动主题做学习报告,交流自己对新技术的学习心得。n每个学生一次活动最多只能作一个报告,但每个学生至少会在一次活动中做一个报告。n教师对每份活动中的学生报告进行一次点评和指导,提出建议和意见。 3.1 简单情况下的ERD建模示例3.1 简单情况下的ERD建模示例学生研讨班教师活动学号工号班号班号活动顺序号学习报告班号活动顺序号学生的学号3.1 简单情况下的ERD建模示例学生研讨班教师活动学号工号班号活动顺序号学习报告参加主持开展点评和指导3.1 简单情况下的ERD建模示例3.2 硬
10、数据的ERD建模n分析表单内容,确定表单主题分析表单内容,确定表单主题 q每个主题描述为一个独立的数据实体 n建立主题之间的关系建立主题之间的关系 n围绕主题组织表单的项目围绕主题组织表单的项目 3.2 硬数据的ERD建模示例3.2 硬数据的ERD建模示例3.3 复杂情况下的ERD建模1.发现系统的概念域发现系统的概念域 q指那些在系统业务中非常重要的概念,如果没有这个概念,组织就可能不会存在或者业务发生重大变化 q不能遗漏那些对业务有重大影响的概念,同时概念域的发现也不要太细节 q每一个概念域都会以星型发散的方式扩展为多个逻辑实体 3.3 复杂情况下的ERD建模2.建立对概念域的描述建立对概
11、念域的描述 概念域同义词定义和描述资源相关的程序功能待确定的问题3.3 复杂情况下的ERD建模3.展开概念域展开概念域 q简单情况下的ERD建模q或者进一步细分子域4.合并概念域的局部数据模型合并概念域的局部数据模型q消除冗余和冲突 3.4 ERD与过程模型n功能/实体矩阵(Function/Entity Matrix)q可以帮助验证过程模型和数据模块的正确性,发现其中的错误、遗漏、冗余和不一致 功能/实体学生课程注册修改课程信息RU注册课程RRC取消课程注册RRD本章小结n在结构化分析当中,数据建模是过程建模的有利补充。n数据建模也可能会单独发生,起到主导需求分析的作用nERD是最为常用的数
12、据模型,它拥有完备的语法和语义nERD的建立过程通常是复杂的,但是复杂情况可以分为简单情况进而逐一治之数据建模数据建模补充资料补充资料6.1 数据建模与数据建模与E-R图图nE-R图只能着眼于数据,不能对行为建模。如图只能着眼于数据,不能对行为建模。如数据库中的触发器、存储过程等。数据库中的触发器、存储过程等。nUML中的类图可看作是中的类图可看作是E-R图的扩充。关系数图的扩充。关系数据库可用类图描述数据库模式,用类描述数据据库可用类图描述数据库模式,用类描述数据库表,用类的操作描述触发器和存储过程。库表,用类的操作描述触发器和存储过程。nUML类图用于数据建模可看作是类图的一个类图用于数据
13、建模可看作是类图的一个具体应用的例子。具体应用的例子。6.2 数据库设计的基本过程数据库设计的基本过程n数据库设计的基本流程:数据库设计的基本流程: 图图6.1(P72)n数据库概念与数据库概念与UML建模元素的对应关系:建模元素的对应关系: 表表6.1(P73)6.3 数据库设计的步骤数据库设计的步骤1)创建数据库对象。创建数据库对象。2)创建模式(创建模式(schema)。)。3)创建域包(创建域包(damain package)和域)和域( damain )。)。4)创建数据模型图(创建数据模型图(data model diagram)。)。5)创建表(创建表(table)。)。6)创建
14、列(创建列(column)。)。7)创建关系(创建关系(relationship)。)。8)在必要的情况下对数据模型进行规范化,如从第在必要的情况下对数据模型进行规范化,如从第二范式转变为第三范式。二范式转变为第三范式。9)在必要的情况下对数据模型进行优化。在必要的情况下对数据模型进行优化。10)实现数据模型。实现数据模型。6.4 对象模型和数据模型的相互转换对象模型和数据模型的相互转换nROSE中,对象模型(类图)和数据模型可以相中,对象模型(类图)和数据模型可以相互转换。互转换。n对象模型转换为数据模型:对象模型转换为数据模型: 简单的说,就是把类转换为表,类与类之间的简单的说,就是把类转换为表,类与类之间的关系转换为表与表之间的关系,或者也转换为表。关系转换为表与表之间的关系,或者也转换为表。 ROSE2003可将逻辑视图下的包直接转换为可将逻辑视图下的包直接转换为数据模型。转换时将要转换的类要放在某个包中,数据模型。转换时将要转换的类要放在某个包中,然后把整个包中的所有类都转换过去。然后把整个包中的所有类都转换过去。 具体步骤:具体步骤:
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 物理化学下册中期复习-基本概念
- 人教版九年级化学第三单元过关训练课件
- 人教版九年级化学第七单元燃料及其利用1燃烧和灭火课时1燃烧的条件灭火的原理和方法教学课件
- 新员工到岗培训流程文档
- 药业员工年终总结
- 挖机转让合同模板
- 延期协议合同范本
- 手术室护士职称竞聘
- 2024年度健身房保洁服务合同范本3篇
- 护理中的法律问题
- 《美丽的小兴安岭》学情分析方案
- 轻度损伤的自我处理课件讲义
- 低压电工作业(复审)模拟考试题及答案
- 通信工程投标专家继续教育题库(附答案)
- 直播带货-直播控场-带货直播间如何控场
- 【幼儿区域活动环境创设中存在的问题及其对策开题报告文献综述(含提纲)3000字】
- C++程序设计智慧树知到答案章节测试2023年咸阳师范学院
- 口腔颌面外科学 功能性外科
- 加油站全年12月消防灭火疏散应急演练
- 道德与法治新课标研读心得体会-道法新课程标准2022版-学习感悟总结
- 2023年2月广州金碧雅苑维修部应知应会考试附有答案
评论
0/150
提交评论