概念数据模型

概念数据模型(Conceptual Data Model,CDM):表达的是数据整体逻辑结构,该结构独立于任何软件和数据存储结构,即它只是系统分析人员,应用程序设计人员,维护人员和用户之间相互理解的共同语言,并不针对具体的数据库平台(如Oracle或SQL Server)和工具(PowerBuilder)。CDM所包含的对象通常并没有在物理数据库中实现。

CDM可以完成以下工作:

  • 数据图形化,形象化
  • 数据表设计的合法校验
  • 转化为PDM(Physical Data Model,物理数据模型)
  • 生成OOM(Object-Oritented MOdel,面向对象模型)的类图

通常CDM采用实体-联系图(Entity-Relation Graph,E-R图)来表示("实体"和“联系”的概念)。目前,E-R图示CDM最流行的一种表达方式。

1.基本概念和约定

1.1实体与属性

实体是现实世界中可区别于其他对象的“物体”,它可能是有形或无形的,具体或抽象的,有生命或无生命的。

每个实体有一组特征,称为实体的属性,用来描述实体的状态和特征。如:某个员工,姓名:吊丝,性别:男,这些指标表示了吊丝这个实体的各项属性。

实体与属性之间的关系如图5-1所示。

图5-1

1.2联系

实体可以通过联系(Relationship)相互关联。按照实体之间的数量对应关系,通常可以将联系分为:一对一联系(One to One),一对多联系(One to Many),多对多联系(Many to Many),递归联系(Recursive Relationship)以及标识关系(Identify Relationship)等。

多对多联系                                                              递归联系

1.3域

域(Domain)是某个或某些属性的取值范围,定义域后可以被多个实体的属性共享使用,域的定义在模型设计中具有重要意义,使得不同实体中的属性标准化更加容易。

1.4业务规则

业务规则反映了信息系统所描述对象的特殊的数据完整约束。一个业务规则可以是一个行业标准,一个客户需求或一本软件开发规范手册。当实体中包含的信息发生变化时,

系统都会检查这些信息是否违反了特定的业务规则。因此在创建业务规则之前,必须首先明确数据之间存在的约束关系。

2.建立概念模型

2.1确定业务问题

在BPM中已经明确了业务流程问题,在此基础上从中提炼出需要存储的信息。其中包括与业务有关的实体,实体间的关系,特殊的业务规则等。这些问题将成为建立CDM的基础。

2.2建立概念模型

(1)选择File-New Model命令,弹出如图5-2所示的窗口。选择Conceptual Data Model(概念模型)。

图5-2

(2)单击“确定”按钮,打开如图5-3所示的CDM工作区。在工作区包括左侧的浏览器窗口,右侧的设计窗口,下侧的输出窗口和浮动的工具窗口(Palette),可以利用工具窗口中的图标在设计窗口中设计E-R图。

图5-3

(3)建立实体及实体间的联系。

  3.CDM生成LDM

LDM是PowerDesigner 15的新增模型,用于完成信息系统的逻辑设计。虽然LDM任然独立于DBMS的,但却可以进行外部键,索引,视图等对象的设计工作。

CDM生成LDM的具体方法如下:

(1)打开CDM模型,选择Tools-Generate Logical Data Model命令,打开如图5-4所示的LDM Generation Options(生成LDM的选项设置)窗口。

图5-4

(2)选择Detail选项卡,进行其他选项的设置。

(3)选择Selection选项卡,可以选择CDM,实体,如图5-5所示。

图5-5

(4)单击“确定”按钮,开始生成LDM。如图5-7所示。

图5-7

注:LDM的主要内容是介于CDM与PDM之间。

4.CDM生成PDM

CDM完成的是信息系统的概要设计,但在数据库的物理设计阶段必须在此基础上进行详细的后台设计,只有将CDM转换成PDM才能完成该阶段的设计工作。在CDM生成PDM之前必须要选择一种DBMS作为目标数据库,CDM中定义的实体属性的数据类型将转换为目标数据库对的数据类型。

CDM生成PDM时,其中的对象要转换成PDM中的对象,即物理数据库中的对象。

CDM生成PDM的具体过程如下:

(1)打开CDM模型,选择Tools-Generate Physical Data Model命令,打开如图5-8所示的窗口。在General选项中选择生成PDM的方式及参数。选中Generate new Physical Data Model单选按钮表示生成新的PDM,DBMS表示目标数据库管理系统(及版本),Name表示目标PDM的名称,Code表示目标PDM的代码。选中Update existing Physical Data Model单选按钮则表示与已经存在的PDM合并生成新的PDM。

图5-8

(2)选择Detail选项卡,进行详细选择设置。

(3)选择Selection选项卡,选择要转换为PDM表的实体,如图5-9所示。

图5-9

(4)单击"确定"按钮,开始生成PDM。如果在Detail选项卡中选中Check model复选框,则在Result List窗口中将显示在处理过程中出现的警告,错误和提示信息。

(5)根据提示对出现的警告和错误进行修改。

(6)生成PDM如图5-10所示。如果PDM中显示的信息过多,难以阅读,可以通过更改Tools-Display Preferences命令设置以减小信息的信息。

图5-10

 5.CDM生成OOM

当从CDM生成OOM时,PowerDesigner将CDM中的对象和数据类型转换成UML语言支持的OOM对象和数据类型。

CDM生成OOM的的具体步骤如下:

(1)打开CDM模型,选择Tools-Generate Object-Oriented Model命令,打开如图5-11所示窗口。

图5-11

(2)选择Detail选项卡,进行其他选项的设置。

(3)选择Selection选项卡,可以选择CDM,包和实体。

(4)单击“确定”按钮,开始生成OOM。效果如5-12所示。

图5-12

6.小结

以上通过CDM生成LDM,PDM和OOM模型,只是将系统的概要设计转化成相关的内容,为系统的详细审计生成了框架,此后还需要再LDM,PDM和OOM中进一步设计,例如:在PDM中添加存储过程,触发器,在OOM中设计用例图等。

PowerDesigner(五)-概念数据模型(CDM生成LDM,PDM和OOM)(转)的更多相关文章

  1. PowerDesigner(五)-概念数据模型(CDM生成LDM,PDM和OOM)

    概念数据模型 概念数据模型(Conceptual Data Model,CDM):表达的是数据整体逻辑结构,该结构独立于任何软件和数据存储结构,即它只是系统分析人员,应用程序设计人员,维护人员和用户之 ...

  2. 五、概念数据模型(CDM生成LDM,PDM和OOM)

      概念数据模型 概念数据模型(Conceptual Data Model,CDM):表达的是数据整体逻辑结构,该结构独立于任何软件和数据存储结构,即它只是系统分析人员,应用程序设计人员,维护人员和用 ...

  3. PowerDesigner概念数据模型 CDM

    目标:本文主要介绍PowerDesigner中概念数据模型 CDM的基本概念. 一.概念数据模型概述数据模型是现实世界中数据特征的抽象.数据模型应该满足三个方面的要求:1)能够比较真实地模拟现实世界2 ...

  4. PowerDesigner 概念数据模型(CDM)

    大   中   小 PowerDesigner 概念数据模型(CDM) 说明 2014-05-07  大数据深...  来源  阅 51   转藏到我的图书馆   微信 分享: QQ空间 QQ好友 新 ...

  5. 物理数据模型(PDM)->概念数据模型 (CDM)->面向对象模型 (OOM):适用于已经设计好数据库表结构了。

    物理数据模型(PDM)->概念数据模型 (CDM)->面向对象模型 (OOM):适用于已经设计好数据库表结构了.   步骤如下: 一.反向生成物理数据模型PDM 开发环境 PowerDes ...

  6. 概念数据模型CDM基础

    概念数据模型CDM 概念数据模型是设计数据库不可或缺的一步,是整个数据库设计的关键,CDM的主要作用如下: 1)能够真实地模拟真实世界,是需求分析人员和数据库设计人员沟通的桥梁.2)将系统需求分析得到 ...

  7. PowerDesigner 概念数据模型(CDM) 说明

        ref: https://blog.csdn.net/tianlesoftware/article/details/6871179 关于PowerDesigner的说明参考: PowerDes ...

  8. PowerDesigner 概念数据模型

    (转自:http://www.cnblogs.com/yxonline/archive/2007/04/09/705479.html) 目标:本文主要介绍PowerDesigner中概念数据模型 CD ...

  9. PowerDesigner教程系列(一)概念数据模型

    目标: 本文主要介绍PowerDesigner中概念数据模型 CDM的基本概念. 一.概念数据模型概述 数据模型是现实世界中数据特征的抽象.数据模型应该满足三个方面的要求:1)能够比较真实地模拟现实世 ...

随机推荐

  1. Flex 4.0及4.6发布的网络应用在内网内会访问很慢的解决方案

    Flex 4.x 开发的程序部署在外网在能访问到www.adobe.com的时能够很快加载完成,但是部署在本地局域网,不能访问外网的服务器上,用浏览器访问应用需要加载几分钟的时间,这种等待时间客户几乎 ...

  2. python基础学习笔记第四天 list 元祖 字典

    一 LIST方法 列表操作包含以下函数:1.cmp(list1, list2):比较两个列表的元素 2.len(list):列表元素个数 3.max(list):返回列表元素最大值 4.min(lis ...

  3. Python 2.7的安装(64位win10)

    Python 2.7.12 下载地址:https://www.python.org/downloads/release/python-2712/ 安装路径D:\Program Files\Python ...

  4. python time 模块详解

    Python中time模块详解 发表于2011年5月5日 12:58 a.m.    位于分类我爱Python 在平常的代码中,我们常常需要与时间打交道.在Python中,与时间处理有关的模块就包括: ...

  5. Ruby求出数组中最小值及其下标

    其实很简单 Ruby的Array类自带了min方法可以求出最小值,然后调用Array的index方法传入元素值就可以求出下标 a = [1, 2, 3, 4, 5, 6] theMin = a.min ...

  6. 银行卡BIN码大全

    BIN号即银行标识代码的英文缩写.BIN由6位数字表示,出现在卡号的前6位,由国际标准化组织(ISO)分配给各从事跨行转接交换的银行卡组织.银行卡的卡号是标识发卡机构和持卡人信息的号码,由以下三部分组 ...

  7. echo换行的蛋疼事

    openstack@openstack:~$ echo "abc" | shasum03cfd743661f07975fa2f1220c5194cbaff48451  -而使用Ja ...

  8. iOS8 无法设置定位服务

    针对iOS8系统,需要在plist文件中添加这两个参数 NSLocationAlwaysUsageDescription = YES NSLocationWhenInUseUsageDescripti ...

  9. javascript常用方法函数收集

    收集了一些比较常用的javascript函数. 1.字符串长度截取 function cutstr(str, len) { var temp, icount = 0, patrn = /[^\x00- ...

  10. 无法加载一个或多个请求的类型。有关更多信息,请检索 LoaderExceptions 属性

    一解决方法: 问题的主要原因出在:跨程序集反射. 即我们需反射的A.dll的程序集引用B.dll程序集,而在反射工具项目中却不存在对B.dll程序集的引用.因此我们只需在反射工具项目中添加对B.dll ...