您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 项目/工程管理 > 3.4_数据及数据库需求分析
第三章需求分析11.需求分析的概念和任务2.获取需求的方法3.需求分析方法4.数据及数据库需求分析*第3章需求分析第三章需求分析24、数据及数据库需求分析*在数据词典中,强调对数据存储结构的逻辑设计,并用数据结构表达数据项之间的逻辑关系。但任何一个软件系统都可能有成千上万个数据项,仅仅描述这些数据项是不够的,更重要的是如何把它们以最优的方式组织起来,以满足系统对数据的要求。第三章需求分析3⑴有关数据库的基本概念在软件系统中需要处理的数据是现实世界中存在的事物及其联系的反映。通常将与数据处理有关的领域分为三个世界:现实世界信息世界数据世界第三章需求分析4现实世界现实世界是存在于人们头脑之外的客观世界,现实世界中的事物可分成对象和性质两大类。对象可以是人、是物,还可以是实际的东西或概念的东西,例如,大学、城市等。对象还可以指事物与事物间的联系。性质则是指事物的性质或特征。第三章需求分析5信息世界是现实世界在人们头脑中的反映客观世界中的事物在信息世界中叫做实体,反映事物之间联系的叫做实体模型。实体是由若干属性的属性值组成。属性是实体某一方面的特征,相应于事物的性质。信息世界第三章需求分析6例如:一个学生实体是如下的一个5元组:(951149,袁秋慧,女,19,软件);5元组中每一元素是学生的某一属性的属性值。他们对应的属性集合是:(学号,姓名,性别,年龄,专业)信息世界举例这些属性集合表征了“学生”实体的类型,叫做实体型。同一类型的实体的集合叫做实体集。第三章需求分析7数据世界则是信息世界中信息的数据化,现实世界中的事物及其联系在数据世界中用数据模型描述。描述每一实体的数据称为记录,描述属性的数据叫做数据项或字段。与实体集相对应的称为文件。例如:学生文件就由多个记录组成,这些记录放在一起构成一个二维表。表中每一横排叫做一个记录或元组,每一纵列叫做一个属性。数据世界第三章需求分析8数据世界举例第三章需求分析9记录由数据项组成,正如实体由若干属性的属性值组成一样。一般数据项沿用属性名。用做属性名时表示观念信息,用做数据项名时表示数据信息。每个数据项包括两个特征:即数据类型和数据长度。若干同类型的记录构成文件。为了对文件中的记录有效组织和存取,通常指定一个数据项进行区别,这个数据项叫做关键字。文件的组成第三章需求分析10⑵实体联系图在需求分析模型建立过程中,使用E-R图来建立数据模型。它描述了从用户的角度看到的数据,反映了用户的现实环境,而与在软件系统中的实现方法无关。在E-R模型中,信息由实体型、实体属性和实体间的联系三种概念单元来表示。第三章需求分析11实体型表示建立概念模型的对象,用长方形表示,在框内写上实体名商品第三章需求分析12E-R图中表示实体联系的符号方框表示实体型或属性,方框之间的连线表示实体之间,或实体与属性之间的联系。出现在连线上的短竖线可以看成是“1”,而圆圈隐含表示“0”。第三章需求分析13实体属性实体的说明用椭圆形表示实体的属性,并用无向边把实体与其属性连接起来商品编号名称规格类型第三章需求分析14实体间的联系-实体及其联系图是两个或两个以上实体类型之间的有名称的关联。实体间的联系用菱形表示,菱形内要有联系名,并用无向边把菱形分别与有关实体相连接,在无向边旁标上联系的类型。商品编号类型规格名称提供M供应商供应商号供应商名厂址电话N第三章需求分析15E-R方法和实体模型在需求分析阶段进行数据库逻辑设计过程中,使用E-R图,可定义一个实体模型。实体模型是现实世界的纯表示,它不涉及数据世界的数据结构、存取路径、存取效率等问题。因此,它可以转换成数据库中的数据模型。数据可以按相应数据模型进行组织。第三章需求分析16商品提供M供应商N简化的实体及其联系图第三章需求分析17例如:在教学管理中,一个教师可以教授零门、一门或多门课程,每位学生也需要学习几门课程。因此,教学管理中涉及的对象(实体型)有学生、教师和课程。E-R图举例用E-R图描述实体型之间的联系,得出右下图。其中,学生与课程是多对多的联系,而教师与课程的联系是一对零或一对多。第三章需求分析18确定属性例如:学生具有学号、姓名、性别、年龄、专业(其它略)等属性;课程具有课程号、课程名、学分、学时数等属性;教师具有职工号、姓名、年龄、职称等属性。此外,学生通过学号、分数与课程发生联系。如此可得教学实体模型。第三章需求分析19教学实体模型第三章需求分析20⑶数据结构的规范化信息域分析需要确定数据的内容,每个数据项要用表格列出,最后组织成文件的逻辑结构,即面向应用而不是面向存储的结构。为了便于数据库的设计,常常要对这种结构做一些简化,其中最常见的一种方法就是规范化技术第三章需求分析21数据结构的规范化“规范化”将数据的逻辑结构归结为满足一定条件的二维表(关系)。不满足上述要求的二维表或关系,叫做非规范化关系。必须将其规范化成单纯和规则的关系。①表中每个信息项必须是一个不可分割的数据项,不可是组项。②表格中每一列中所有信息项必须是同一类型,各列的名字(属性名)互异,列的次序任意。③表格中各行互不相同,行的次序任意。第三章需求分析22①消除数据冗余,即消除表格中数据的重复;②消除多义性,使关系中的属性含义清楚、单一;③使关系的“概念”单一化,让每个数据项只是一个简单的数或字符串,而不是一个组项或重复组;④方便操作。使数据的插入、删除与修改操作可行并方便;⑤使关系模式更灵活,易于实现接近自然语言的查询方式。规范化的目的第三章需求分析23规范化举例----教学管理用三个关系学生、教师、课程保存三个实体型的信息:学生(学号,姓名,性别,年龄,专业,籍贯)教师(职工号,姓名,年龄,职称,工资级别,工资)课程(课程号,课程名,学分,学时,课程类型)建立两个关系表示实体型之间的联系:选课(学号,课程号,听课出勤率,作业完成率,分数)教课(职工号,课程号)这五个关系,组成了数据库的模型。第三章需求分析24在每个关系中,属性名下加下划线指明关键字。并规定关键字能唯一地标识一个元组。关系规范化的程度,通常按属性间的依赖程度来区分,并以范式NF(NormalForm)来表达。常用的范式分为第一范式(1NF)、第二范式(2NF)和第三范式(3NF)。设R是一个关系,X和Y是R中的两个属性。若对于X的任一个值,Y仅有一个值与之对应,则称R的属性Y函数依赖于属性X。范式的概念第三章需求分析25教师(职工号,姓名,年龄,)属性姓名,年龄等函数都依赖于属性职工号。属性X可以是复合属性,如:选课(学号,课程号,听课出勤率,)如果属性Y函数依赖于复合属性X,而不与X的任何真子集函数依赖,则称属性Y完全函数依赖于复合属性X。范式举例----教学管理第三章需求分析26例如在“选课”关系中,属性“听课出勤率”、“作业完成率”和“分数”等表示某个学生学习某门课程时的学习情况。只有同时指定“学号”和“课程号”,才能准确地说明是哪位学生学习哪门课程时的学习情况。因此,“分数”等属性完全函数依赖于“学号,课程号”。范式举例----教学管理第三章需求分析27①关系中所有属性都是“单纯域”,即不出现“表中有表”②非主属性完全函数依赖于关键字③非主属性相互独立,即任何非主属性间不存在函数依赖。判断规范化程度的条件是:第三章需求分析28如果一个关系连条件都不满足,则这个关系是非规范化的。如果一个关系仅满足条件,则这个关系满足第一范式(1NF)。如果一个关系满足条件、,但不满足,则这个关系满足第二范式(2NF)。如果一个关系同时满足条件、和,则这个关系表满足第三范式(3NF)。当数据模型达到3NF,一般情况下就能满足数据库应用的需要。判断规范化程度的条件是:第三章需求分析29⑷数据库分析的过程在需求分析阶段进行数据库分析的流程第三章需求分析30为开发一个系统所使用的数据库,在开始分析数据库的需求前,分析员必须了解该系统的总目标和范围。然后建立一个完整并高度细化的信息模型。此信息模型应包括一个综合的数据词典,定义所有在开发数据库时用到的数据项。接着数据库分析定义数据库的逻辑特性和物理特性。以信息模型和系统规格说明为指导,定义数据库的逻辑数据结构。数据库分析的过程第三章需求分析31这种逻辑结构必须适应数据存取、修改、关联性及其它相关需求。一旦逻辑数据结构建立起来,就可以研制数据库的物理结构。物理数据库结构定义文件结构、记录格式、与硬件相关的处理方式以及数据库管理系统的特性。最后,要对模式和物理特性进行完全的评审。在数据库分析过程中所考虑的因素间存在着复杂的相互联系。改变其中的任何一个因素都会(潜在地)影响其它的因素。所以必须在各个因素之间进行折衷。数据库分析的过程第三章需求分析32这种折衷包括专用性和通用性的折衷,信息关联程度、扩充潜力及操作特性等方面的折衷。考虑信息关联程度和扩充潜力(包括信息规模和信息内容两方面)主要基于需求分析和设计阶段分派给数据库的专用性程度。专用的数据库要为系统特定的信息需求服务,因此信息结构要设计得能适应要求的关联性和预计的扩充。通用的数据库可以适应更为广泛的各种信息需求,但是为了获得通用性要付出代价。数据库分析的过程第三章需求分析33操作特性根据折衷的结果而定。数据库的结构、规模和逻辑设计都会对它的物理组织、硬件、存取方式以及性能产生重要的影响。数据库分析的过程
本文标题:3.4_数据及数据库需求分析
链接地址:https://www.777doc.com/doc-2927151 .html