需求工程课件:第13章数据建模

上传人:大米 文档编号:569982453 上传时间:2024-08-01 格式:PPT 页数:35 大小:963.50KB
返回 下载 相关 举报
需求工程课件:第13章数据建模_第1页
第1页 / 共35页
需求工程课件:第13章数据建模_第2页
第2页 / 共35页
需求工程课件:第13章数据建模_第3页
第3页 / 共35页
需求工程课件:第13章数据建模_第4页
第4页 / 共35页
需求工程课件:第13章数据建模_第5页
第5页 / 共35页
点击查看更多>>
资源描述

《需求工程课件:第13章数据建模》由会员分享,可在线阅读,更多相关《需求工程课件:第13章数据建模(35页珍藏版)》请在金锄头文库上搜索。

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 Chen1976年提出的实体关系建模方法 n没有标准的表示法 n基本元素q实体q关系q属性2.1 实

2、体n实例(Instance)q需要在系统中收集和存储的现实世界事物 n实体(Entity)q具有相同特征和属性的实例集的类别描述 2.1 实体n概念实体n逻辑实体StudentStudentIDNameDOB2.1 实体n进程实体q系统需要它们在某些时刻的快照或者它们的运行环境信息n不是它们所体现出来的功能和达成的效果 选课时间地点选课人被选课程2.2 属性n属性q实体的描述特征。q以数字、代号、单词、短语、文本乃至声音和图像的形式存在q一系列属性的存在集成起来就可以描述一个实体的实例 n属性是实体的特征,不是数据。属性会以一定的形式存在,这种存在才是数据,被称为属性的值(Value) 2.2

3、 属性n属性的值就应该是一个合法的或者有业务含义的值,这个合法的取值范围称为域(Domain) 数据类型类型说明域例子Number整数最小最大月份的域:112Real实数最小最大考试得分:0.0100.0Text文本TEXT(属性的最大长度)电话号码:TEXT(20)Date日期最早最晚出生日期:1900-01-01今天Time时间最早最晚Boolean布尔Enumeration枚举值1、值n性别:男、女、未知Binary二进制2.2 属性n标识符,又称为键(Key) q可以被用来唯一的确定和标识每个实例的属性或者属性组合n一个实体可能有多个键 ,都被称为候选键(Candidate Key)

4、q人们通常会从多个候选键中选择和使用固定的某一个键来进行实例的标识q这个被选中的候选键被称为主键(Primary Key)q没有被选做主键的候选键被称为替代键(Alternate Key) 2.2 属性n单值属性和多值属性 n简单属性和组合属性 n存储属性和导出属性 2.3 关系n存在于一个或多个实体之间的自然业务联系n所有的关系隐含地都是双向的 n关系表达的不是实体物理上的联系(例如车与车轮),而是逻辑上的链接(例如整体部分关系) 2.3 关系n度数q参与关系的实体数量 2.3 关系n基数(约束)q最大基数(键约束Key Constraint)n对关系中任意的其他实体实例,该实体可能参与关系

5、的最大数量 q最小基数(参与约束Participant Constraint)n对关系中任意的其他实体实例,该实体可能参与关系的最小数量 ProfessorClassteaches(1,1)(1,4)Cardinality2.3 关系n子类型关系q在多个实体大部分相似、少部分不同时,可以从相似的实体当中抽取共性,建立一个公共的超类型(Super-type),所有实体都是超类型的子类型 2.3 关系n被关系影响的实体q弱实体n指存在和标识需要依赖于其他实体的实体 q关联实体n实体间建立关系时的副产品 2. ERD表示法2. ERD表示法主要内容1.数据模型2.实体关系模型ERD3.ERD建模1.

6、简单情况下的ERD建模2.硬数据的ERD建模3.复杂情况下的ERD建模4.ERD与过程模型3.1 简单情况下的ERD建模n从描述信息中辨识实体 q可以重点关注描述信息中的名词,看系统是否需要收集其相关的特征n确定实体的标识符 n建立实体间关系q判断各个关系的建立是否会产生新的关联实体或者影响已有的实体特性 n添加详细的描述信息 q实体的详细属性和关系的基数3.1 简单情况下的ERD建模示例n研讨班在每个学年开始的时候开设,然后持续一个学年。n每个研讨班针对一个或几个研究方向。n每个研讨班由一位或几位教师主持。n在研讨班开设之后,学生可以根据主持教师(的姓名)和研讨班的方向来选择和参加某个研讨班

7、。n所有的学生必须且只能参加一个研讨班的学习。n研讨班时常会开展活动,由教师来决定活动的时间、地点、主题和做报告的学生(的姓名)。n每次活动时,由一位或多位同学围绕活动主题做学习报告,交流自己对新技术的学习心得。n每个学生一次活动最多只能作一个报告,但每个学生至少会在一次活动中做一个报告。n教师对每份活动中的学生报告进行一次点评和指导,提出建议和意见。 3.1 简单情况下的ERD建模示例3.1 简单情况下的ERD建模示例3.1 简单情况下的ERD建模示例3.1 简单情况下的ERD建模示例3.2 硬数据的ERD建模n分析表单内容,确定表单主题分析表单内容,确定表单主题 q每个主题描述为一个独立的

8、数据实体 n建立主题之间的关系建立主题之间的关系 n围绕主题组织表单的项目围绕主题组织表单的项目 3.2 硬数据的ERD建模示例3.2 硬数据的ERD建模示例3.3 复杂情况下的ERD建模1.发现系统的概念域发现系统的概念域 q指那些在系统业务中非常重要的概念,如果没有这个概念,组织就可能不会存在或者业务发生重大变化 q不能遗漏那些对业务有重大影响的概念,同时概念域的发现也不要太细节 q每一个概念域都会以星型发散的方式扩展为多个逻辑实体 3.3 复杂情况下的ERD建模2.建立对概念域的描述建立对概念域的描述 概念域同义词定义和描述资源相关的程序功能待确定的问题3.3 复杂情况下的ERD建模3.

9、展开概念域展开概念域 q简单情况下的ERD建模q或者进一步细分子域4.合并概念域的局部数据模型合并概念域的局部数据模型q消除冗余和冲突 3.4 ERD与过程模型n功能/实体矩阵(Function/Entity Matrix)q可以帮助验证过程模型和数据模块的正确性,发现其中的错误、遗漏、冗余和不一致 功能/实体学生课程注册修改课程信息RU注册课程RRC取消课程注册RRD本章小结n在结构化分析当中,数据建模是过程建模的有利补充。n数据建模也可能会单独发生,起到主导需求分析的作用nERD是最为常用的数据模型,它拥有完备的语法和语义nERD的建立过程通常是复杂的,但是复杂情况可以分为简单情况进而逐一治之

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 研究生课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号