- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 2 局部视图的设计 概念模型设计的第一步就是利用前面的数据抽象机制对需求分析阶段收集到的数据进行分类、组织(聚集),形成实体(型)、实体的属性,标识实体的码、确定实体之间的联系类型,从而设计分E-R图。 ⑴ 选择局部应用 需求分析阶段,已用多层数据流图和数据字典描述了整个系统。 从多层的数据流图中选择一个适当层次的数据流图,让这组图中每一部分对应一个局部应用,然后以这一层次的数据流图为出发点,设计分E-R图。 以中层数据流图作为设计分E-R图的依据。原因: 高层数据流图只能反映系统的概貌; 中层数据流图能较好地反映系统中各局部应用的子系统组成; 低层数据流图过细。 ⑵ 逐一设计分E-R图 ① 确定局部应用的实体、属性、码、实体间的联系 将各局部应用涉及的数据分别从数据字典中抽取出来,参照数据流图,标定各局部应用中的实体、实体的属性、标识实体的码,确定实体之间的联系及其类型(1:1,1:n,m:n)。 ② 抽象实体和属性 实体:现实世界中一组具有某些共同特性和行为的对象就可以抽象为一个实体型。对象和实体之间是“is member of”的关系。 属性:对象类型的组成成分可以抽象为实体的属性。组成成分与对象类型之间是“is part of”的关系。 ③ 实体和属性的区分 实体与属性是相对而言的。同一事物,在一种应用环境中作为“属性”,在另一种应用环境中就必须作为“实体”。 区分实体和属性的一般原则是: “属性”不能再具有需要描述的性质。即属性不能再由另一些属性组成,是不可再分的数据项。 “属性”不能与其他实体具有联系。联系只发生在实体之间。 符合上述两条特性的事物一般作为属性对待。为了简化E-R图的处置,现实世界中的事物凡能够作为属性对待的,应尽量作为属性。 例:职称通常作为教师实体的属性,但在涉及住房分配时,由于分房与职称有关,也就是说职称与住房实体之间有联系,根据准则2,这时把职称作为实体来处理会更合适些。 ⑶ 设计分E-R图的步骤 ① 以数据字典为出发点定义E-R图。 数据字典中的“数据结构”、“数据流”和“数据存储”等已是若干属性的有意义的聚合。 ② 按上面给出的准则进行必要的调整。 4.5.2 视图的集成 各个局部视图即分E-R图建立好后,还需要对它们进行合并,集成为一个整体的数据概念结构即总E-R图。视图的集成有两种方式: 一次集成:一次集成多个分E-R图。通常用于局部视图比较简单时。 逐步累积式:首先集成两个局部视图(通常是比较关键的两个局部视图),以后每次将一个新的局部视图集成进来。 无论采用哪一种方式,集成局部E-R图都要经过合并、修改和重构两个过程,如图4-5所示。 1 合并分E-R图,生成初步E-R图 ⑴ 各分E-R图存在冲突 各个局部应用所面向的问题不同,由不同的设计人员进行设计,因此,各个分E-R图之间必定会存在许多不一致的地方,即冲突。各分E-R图之间冲突主要有: 初步E-R图 分E-R图 基本E-R图 合并 消除不必要的冗余 可能存在冗余的数据 和冗余的实体间联系 图4-5 视图集成的步骤 ① 属性冲突 属性域冲突:属性值的类型、取值范围或取值集合不同。 属性取值单位冲突。 属性冲突的解决方法:通过讨论、协商等办法加以解决。 ② 命名冲突 同名异义:不同意义的对象在不同的局部应用中具有相同的名字。 异名同义(一义多名):同一意义的对象在不同的局部应用中具有不同的名字。 命名冲突可能发生在属性级、实体级、联系级上。其中属性的命名冲突更为常见。 命名冲突的解决方法:通过讨论、协商等行政手段加以解决。 ③ 结构冲突 同一对象在不同应用中具有不同的抽象。 例:“课程”在某一局部应用中被当作实体,在另一局部应用中则被当作属性。 解决方法:通常是把属性变换为实体或把实体变换为属性,使同一对象具有相同的抽象。变换时要遵循两个准则。 同一实体在不同局部视图中所包含的属性不完全相同,或者属性的排列次序不完全相同。 产生原因:不同的局部应用关心的是该实体的不同侧面。 解决方法:使该实体的属性取各分E-R图中属性的并集,再适当设计属性的次序。 实体之间的联系在不同局部视图中呈现不同的类型。 解决方法:根据应用语义对实体联系的类型进行综合或调整。 2 修改与重构 修改与重构的基本任务是消除不
文档评论(0)