资源简介 (共47张PPT)教学单元1.2第2章 需求分析与数据库概念设计(E-R)案例1-2-1 教务管理系统需求分析案例1-2-2 教务管理数据库概念设计需求分析与数据库概念设计 学习导航需求分析与数据库概念设计 知识框架能力目标能够阅读系统需求分析报告能够使用OfficeVisio绘制DFD数据流图能够根据系统需求分析进行数据库概念设计(E-R)能够使用OfficeVisio工具建立E-R概念模型能够阅读并理解数据模型有关的英文术语知识目标系统需求分析(组织结构图、数据流图DFD、功能说明、数据字典DD)数据库概念设计(E-R方法)概念模型有关的英文术语素质目标通过系统需求分析,培养与用户沟通的能力通过学习Office的Visio建模工具,培养学习新技术的能力单元1.2需求分析与数据库概念设计(E-R)案例1教务管理系统案例1-2-1教务管理系统需求分析案例1-2-2教务管理数据库概念设计(E-R)工作任务单元1.2需求分析与数据库概念设计(E-R)需求分析一数据库概念设计概述二E-R方法概念设计三单元1.2需求分析与数据库概念设计(E-R)一、需求分析工作任务案例1-2-1教务管理系统需求分析对某学校教务管理部门进行系统需求分析。首先了解该部门的组织结构和工作岗位,然后了解各部门要处理的数据和业务流程,绘制数据流图DFD。分析用户的数据管理要求,写出系统功能需求说明。分析所有的数据项,建立数据字典DD。数据库应用系统需求分析方法1数据库应用系统需求分析案例2一、需求分析(一)需求分析方法需求分析的重点数据需求、功能需求、完整性与安全性需求。数据流图(Data Flow Diagram,DFD)用于描述数据处理的业务流程。→:数据流:外部实体○:数据处理〓:数据存储数据字典(Data Dictionary,DD)关于数据的信息集合,是关于数据定义的描述,即元数据,而不是数据本身。通常包括数据项、数据结构、数据流、数据存储和处理过程5个部分。DFD数据流图和DD数据字典一、需求分析数据库应用系统需求分析方法1数据库应用系统需求分析案例2(二)教务管理系统需求分析组织结构——用户业务流程与信息的载体,对分析人员理解企业的业务、确定系统范围具有很好的帮助教务管理组织结构(二)教务管理系统需求分析数据流图——表达了数据和处理过程的关系教务管理数据流图(DFD)(二)教务管理系统需求分析功能需求——用户的数据处理需求,通常指用户要完成什么处理功能及处理方式。教务管理功能需求班级管理功能:能够插入、更新和删除班级信息,查询和分类统计班级信息。学生管理功能:能够插入、更新和删除学生信息,查询和分类统计学生信息。课程管理功能:能够插入、更新和删除课程信息,查询和分类统计课程信息。教材管理功能:能够插入、更新和删除教材信息,查询和分类统计教材信息。(二)教务管理系统需求分析功能需求——用户的数据处理需求,通常指用户要完成什么处理功能及处理方式。教务管理功能需求教师管理功能:能够插入、更新和删除教师信息,查询和分类统计教师信息。本功能属于人事管理部门的职工管理范围。成绩管理功能:能够插入、更新和删除学生选课以及所选课程的考试成绩信息,查询和分类统计学生选课以及考试成绩信息。授课管理功能:能够插入、更新和删除教师授课以及所授课程的教学评价信息,查询和分类统计教师授课以及教学评价信息。对于以上功能需求按照自顶向下逐步求精的方法进行模块划分,按照用户的需求和习惯,应用C#、Java等程序设计语言和数据库接口技术、JDBC或ODBC等实现各功能模块的界面设计与数据访问(二)教务管理系统需求分析描述信息需求——各类数据描述的集合教务管理数据字典(DD)班级信息:班级号、班级名称、年级、教室、人数等。学生信息:学号、姓名、性别、出生日期、专业、入学录取分等。课程信息:课程号、课程名、学分、课程类型、课程性质等。教材信息:教材号、教材名、出版社、价格、订书数量、发放数量等。(二)教务管理系统需求分析描述信息需求——各类数据描述的集合教务管理数据字典(DD)教师信息:职工号、姓名、性别、出生日期、职称、学历、学位、所属系部。本信息属于人事管理部门的职工信息范畴。学生选课信息:学号、课程号、成绩等。教师授课信息:职工号、课程号、专业、班级、授课任务、评价等。课程选用教材信息:课程号、教材号、数量等。学生属于班级信息:班级号、学号、职责等。需求分析一数据库概念设计概述二E-R方法概念设计三单元1.2需求分析与数据库概念设计(E-R)二、数据库概念设计概述概念模型的基本要素1概念设计的一般步骤2(一)概念模型的基本要素实体集具有相同属性或特征的客观现实和抽象事物的集合一个班级的学生实体实例客观存在并且可以相互区别的事物和活动的抽象 一个学生实体型对同类实体的共有特征的抽象定义学号,姓名,性别实体值符合实体型定义的每个具体实体2020216001,赵成刚,男实体(Entity,E)在不会混淆的情况下一般简称为实体(E)联系集实体之间相互关系的集合例如:每位学生选各门课程的相互关系联系实例客观存在并且可以相互区别的实体之间的关系例如:实体“学生”中学号为“2020216001”的学生“赵成刚”,选择了实体“课程”中课程号为“16020010”的课程“微机组装与维护”成绩为“96”。联系型对同类联系共有特征的抽象定义例如:联系型——选课(学号,课程号,成绩)联系值符合联系型定义的每个具体联系实例例如:联系值——选课(2020216001,16020010,96)联系(Relationship,R)在不会混淆的情况下一般简称为联系(R)(一)概念模型的基本要素属性描述实体和联系的特征例如:学号,姓名,性别等属性值属性的具体取值例如:2020216001,赵成刚,男等属性(Attribute,A)(一)概念模型的基本要素(一)概念模型的基本要素候选键(Candidate key,CK)能够唯一标识实体集或者联系集中每个实例的属性或属性组,可以有多个。例如:实体“学生”中的学号、身份证号码、姓名(如果无重名)主键(Primary Key,PK)能够唯一标识实体集或者联系集中每个实例的属性或属性组。主键只能有一个,可以从多个候选键中选择。主键中的属性称为主属性,其他属性称为非主属性。例如:实体“学生”的主键为属性“学号”,实体“课程”的主键为属性“课程号”,联系“选课”的主键为属性组“学号+课程号”键(key,K)自然键:一些原本就可以唯一标识实例的属性,可直接选择作为主键例如:学号、员工编号、社会保险号、驾照号码、发票号、订单号、产品号等智能键:用几部分信息构造起来的属性,属性内部包含多种信息,帮助人们识别真实世界的某些事物例如:身份证号用于唯一标识公民,某公民的身份证号为23000019990101671*前6位:地址代码。230000代表黑龙江。中间8位:代表出生日期。19990101代表1999年1月1日出生。第15位和第16位:顺序码。67为证件顺序。第17位:性别码:如果是奇数就是男,如果是偶数就是女。此处1代表男。最后一位:验证码,根据校验公式由本体码生成,用来验证前面身份证号码正确与否的验证码。例如:图书馆某册图书编号为978-7-115-19345-2TP311.138/269图书-中国-人民邮电出版社-书序号-校验码,计算机技术大类、程序设计小类.数据库系统/书次号(一)概念模型的基本要素外键(Foreign key,FK)一个实体或联系的属性或属性组不是本实体或联系的主键,而是另一个实体的主键,则被称为是本实体或联系的外键,用于实现实体之间的联系与参照完整性。例如:联系“选课”中的属性“学号”和“课程号”,它们不是本联系的主键,它们分别是实体“学生”和“课程”中的主键,因此,属性“学号”和“课程号”是本联系的外键。实现实体之间的联系:联系“选课”的外键“学号”和“课程号”分别可以关联到实体“学生”和实体“课程”中的相应实例,得到此学生和所选课程的具体信息,从而实现实体之间的联系。实现参照完整性:联系“选课”的外键“学号”和“课程号”的取值必须分别在所关联的实体“学生”的主键“学号”和实体“课程”中的主键“课程号”的取值范围之内,从而实现参照完整性控制。键(key,K)联系分类(一)概念模型的基本要素实体集间或一个实体集内的各实体存在的联系一对一联系(1:1):如果对于实体集A中的每一个实体,实体集B中至多有一个(也可以没有)实体与之联系,反之亦然,则称实体集A与实体集B具有一对一联系,记为1:1。例如:课程与教材,公司和总经理,学校和校长一对多联系(1:n):如果对于实体集A中的每个实体,实体集B中有n个实体(n≥0)与之联系,反之,对于实体集B中的每一个实体,实体集A中至多只有一个实体与之联系,则称实体集A与实体集B具有一对多联系,记为1:n。例如:班级和学生,家庭和成员,班长与学生多对多联系(m:n):如果对于实体集A中的每一个实体,实体集B中有n(n≥0)个实体与之联系,反之,对于实体集B中的每一个实体,实体集A中也有m(m≥0)个实体与之联系,则称实体集A与实体集B具有多对多联系,记为m:n。例如:课程和学生,工人和零件,读者和图书联系分类(一)概念模型的基本要素概念设计的一般步骤1概念模型的基本要素2二、数据库概念设计概述(二)概念设计的一般步骤初始化工程。这个阶段的任务是从目的描述和范围描述开始,确定建模目标,开发建模计划,组织建模队伍,收集源材料,制定约束和规范。其中收集源材料是这阶段的重点。通过调查和观察结果,由业务流程、原有系统的输入输出、各种报表、收集的原始数据形成了基本数据资料表。定义实体。实体集合的成员都有一个共同的特征和属性集,可以从收集的源材料—基本数据资料表中直接或间接标识出大部分实体。根据源材料名字表中表示物的术语以及具有“代码”结尾的术语,如客户代码、代理商代码、产品代码等将其名词部分代表的实体标识出来,从而初步找出潜在的实体,形成初步实体表。(二)概念设计的一般步骤定义联系。根据实际的业务需求、规则和实际情况确定连接联系、联系名和说明,确定联系类型。即在前述三种联系(1:1,1:n,m:n)的基础上,进一步确定是标识联系、非标识联系(强制的或可选的)还是分类联系。如果子实体的每个实例都需要通过和父实体的联系来标识,则为标识联系,否则为非标识联系。在非标识联系中,如果每个子实体的实例都与而且只与一个父实体的一个实例关联,则为强制的,否则为非强制的。如果父实体与子实体代表的是同一个现实对象,那么它们为分类联系。定义主键。为实体标识候选键属性,以便唯一识别每个实体,再从候选键中确定主键。为了确定主键和联系的有效性,通过非空规则和非多值规则来保证,即一个实体的一个属性不能是空值,也不能在同一个时刻有一个以上的值。(二)概念设计的一般步骤定义属性。从源数据表中抽取说明性的名词开发出属性表,确定属性的所有者。定义非主键属性,检查属性的非空及非多值规则。此外,还要检查完全依赖函数规则和非传递依赖规则,保证一个非主键属性必须依赖于整个主键且仅仅是依赖于主键。以此得到了至少符合关系理论第三范式。定义其他对象和规则。定义属性的数据类型、长度、精度、非空、默认值和约束规则等。定义触发器、存储过程、视图、角色、同义词、序列等对象信息。需求分析一数据库概念设计概述二E-R方法概念设计三单元1.2需求分析与数据库概念设计(E-R)三、E-R方法概念设计工作任务案例1-2-2教务管理数据库概念设计学习Microsoft Office Visio制图软件。根据教务管理系统的需求分析,采用E-R方法建立教务管理数据库的概念模型。概念模型的E-R表示方法1概念设计的E-R设计过程23使用Visio建立E-R概念模型三、E-R方法概念设计(一)概念模型的E-R表示方法基本构件实体:矩形联系:菱形属性:椭圆形相连关系:连接线E-R图(Entity-Relationship Diagram)实体“教材”“课程”“班级”“学生”分别用矩形表示,课程与教材1∶1的“选用”联系用菱形表示班级与学生1∶n的“属于”联系用菱形表示学生与课程之间m∶n的“选课”联系用菱形表示(一)概念模型的E-R表示方法实体本身也有内在的联系,实体职工(教师)集内部有领导和被领导的联系,即某职工为部门领导,领导若干职工,而一名职工仅被另外一名职工(领导)直接领导。职工领导1n职工实体内1:n的E-R图(一)概念模型的E-R表示方法三、E-R建模方法概念设计概念设计的E-R设计过程1概念模型的E-R表示方法23使用Visio建立E-R概念模型(二)概念模型的E-R设计过程设计出局部E-R图。局部E-R模型设计从需求分析的数据流图和需求文档出发,确定实体和属性,并根据数据流图中表示的对数据的处理确定实体之间的联系。综合成初步E-R图。局部E-R图设计完成之后,综合所有局部E-R图为全局概念模型。综合E-R图不仅要支持所有的局部E-R图,而且必须合理地表示一个完善、一致的概念模型。一般同一个实体只出现一次,可进行两两合并,消除合并带来的一些属性、命名和结构冲突,逐步产生综合E-R图。优化成基本E-R图。初步E-R图是在对现实世界进行调查研究之后综合出来的全局和整体概念模型,但并不一定是最优的。需要经过仔细分析找出潜在的数据冗余,再根据应用需求确定是否消除冗余的属性或者冗余的联系。三、E-R建模方法概念设计使用Visio建立E-R概念模型1概念模型的E-R表示方法23概念设计的E-R设计过程(三)使用Visio建立E-R概念模型菜单“文件”→“新建”→“流程图”→“基本流程图”模板,单击“创建”按钮(三)使用Visio建立E-R概念模型在【形状】窗格下的【基本流程图形状】中,分别将矩形(流程)、菱形(判定)和椭圆形(开始/结束)拖动到绘图页上。在功能选项卡【开始】/【工具】组中单击“连接线”按钮组绘制直线(无向边)。(三)使用Visio建立E-R概念模型使用复制、粘贴的功能绘制相同的形状,单击功能选项卡【开始】/【排列】组中的按钮进行形状的位置对齐等格式化操作。单击或双击绘图页上的图形即可在其中输入文字,单击功能选项卡【开始】/【工具】组中的“A文本”按钮,也可在绘图页上输入文字。单击功能选项卡【开始】/【字体】组、【段落】组、【形状】组的按钮对形状和文字进行格式化。教务管理数据业务流程(DFD)(阅读需求分析)(三)使用Visio建立E-R概念模型根据管理系统需求分析得到:学生和课程实体“学生”,属性有学号(主键)、姓名、性别、出生日期和专业等。实体“课程”,属性有课程号(主键)、课程名和学分等。实体“学生”与“课程”之间通过联系“选课”建立关联,并派生出新的属性“成绩”。了解到一门课程有若干名学生选修,而一名学生可以选修多门课程,课程和学生之间具有多对多联系。学生选修课程局部E-R图学生选修课程局部E-R图学生选修课程局部E-R图(三)使用Visio建立E-R概念模型教师和课程实体教师 ,属性有职工号(主键)、姓名、性别、出生日期和职称等实体“教师”与实体“课程”之间通过联系“授课”建立关联,派生出新的属性“评价”。了解到一门课程可以有若干名教师讲授,每一名教师可以讲授多门课程,教师和课程之间具有多对多联系。教师授课局部E-R图(三)使用Visio建立E-R概念模型教材和课程实体“教材”,主键为“教材号”。实体“教材”与实体“课程”之间通过联系“选用”建立关联,并派生出新的属性“数量”。了解到一门课程选用一种教材,一种教材被一门课程选用,教材和课程之间具有一对一联系班级和学生实体“班级”,主键为“班级号”。实体“班级”与实体“学生”之间通过联系“属于”建立关联,并派生出新的属性“职责”。了解到一名学生属于一个班级,一个班级有多名学生,班级和学生之间具有一对多联系。(三)使用Visio建立E-R概念模型综合课程选用教材、学生属于班级、学生选修课程、教师讲授课程的局部E-R图,构成教务管理系统综合E-R图,为了简单起见,图中学生、课程和教师实体只保留其主键属性。教务管理系统数据库的综合E-R图(三)使用Visio建立E-R概念模型需求分析与数据库概念设计 小结1.系统需求分析组织结构图DFD数据流图(DFD)功能说明 数据字典(DD)2.数据库概念设计基本要素:实体、联系、属性、候选键、主键、外键、联系分类(1:1,1:n,m:n)一般步骤:初始化,定义实体、联系、主键、属性、规则等3.E-R建模方法概念设计设计方法:矩形(实体E)、椭圆形(属性A)、菱形(联系R)设计步骤:局部—综合—优化 展开更多...... 收起↑ 资源预览