概念数据模型

概念数据模型(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中设计用例图等。

转载于:https://www.cnblogs.com/ShaYeBlog/p/6772763.html

五、概念数据模型(CDM生成LDM,PDM和OOM)相关推荐

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

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

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

    步骤如下: 一.反向生成物理数据模型PDM 开发环境 PowerDesigner 15 ,SQL Server2005 (1)在开始逆向生成PDM图之前,需要为指定的数据库创建ODBC数据源.以Win ...

  3. PowerDesigner--创建概念数据模型;并生成逻辑数据模型/物理数据模型/数据库SQL脚本

    PowerDesigner–创建概念数据模型 Conceptual Data Model 概念数据模型(CDM)帮助您分析信息系统的概念结构,以识别要表示的主要实体.它们的属性以及它们之间的关系. C ...

  4. mysql生产cdm文件_PowerDesigner 概念数据模型(CDM) 说明

    Conceptual Data Model:概念数据模型,它以实体-联系(Entity-RelationShip, E-R)理论为基础,并对这一理论进行了扩充.它从用户 关于PowerDesigner ...

  5. 三、概念数据模型CDM(Conceptual Database Model )

    最后整理一下正确的是: 脚本1: .set_value(_First, true, new)  .foreach_part(%Name%, "'#'")  .if (%_First ...

  6. 05.概念数据模型CDM

    文章目录 CDM概念 实体(entity) 域(domain) 联系(relationship) 一对一双向关联模型 一对一单向关联模型 一对多关系 多对多 实体继承 法一 :生成各自子表 法二:只生 ...

  7. mysql生产cdm文件_几种模型文件(CDM、LDM、PDM、OOM、BPM)

    概念数据模型 (CDM): 帮助你分析信息系统的概念结构,识别主要实体.实体的属性及实体之间的联系.概念数据模型(CDM)比逻辑数据模型 (LDM)和物理数据模型(PDM)抽象.CDM 表现数据库的全 ...

  8. 概念建模(CDM)-------数据建模(一)

    在网上也看了很多有关概念建模的理解和表述,但是都很难理解,非常的空洞,所以我决定写这个博客.谈谈我对概念建模的理解,希望大家能够提一些意见,大家一起进步. 概念 概念数据模型(CDM)中包含概念以及定 ...

  9. Apache Atlas精讲:由浅入深,从概念,原理,使用,到自定义数据模型,生成血缘关系,带你玩转Atlas

    文章目录 引言 Atlas 原理及相关概念 Altas 使用 Atlas Rest Api 详解及示例 结语 引言 Apache Atlas 是托管于 Apache 旗下的一款元数据管理和治理的产品, ...

最新文章

  1. MySQL查询随机数据的4种方法和性能对比
  2. C# GUID的使用
  3. .net 基于Jenkins的自动构建系统开发
  4. c语言饭卡管理系统链表文件,C语言《学生信息管理系统》链表+文件操作
  5. MATLAB_8-边缘检测_demo.m[课堂齿轮作业]其他的在文章末尾
  6. 总结 贪心算法_这几道经典例题帮你轻松搞透贪心算法
  7. 机器学习实用指南:如何从数据可视化中发现数据规律?
  8. 港科大教授张晓泉:目前AI多做预测分类,还需经济学发现因果关系
  9. 这个开源好用的数据库建模工具,让我眼前一亮
  10. 2018蓝桥杯 明码 解题方法
  11. 不同介质中的运动目标检测(虚拟潜望镜)
  12. 不靠广告联盟也能月赚万元
  13. mysql 作为服务启动_mysql系列-安装及服务启动
  14. 重磅!2023 IEEE Fellow名单出炉:唐立新、宗成庆、朱军、姬水旺、刘威等入选
  15. [Debug] 法语输入
  16. 基于SPringBoot的玩具销售商城管理系统
  17. python多元回归分析_多变量分析:多元回归分析
  18. Cesium - 地图下载器(python)
  19. Java实战项目之 [含文档+PPT+源码等]精品基于ssm的足球联赛管理系统的设计与实现
  20. 英语音标怎么发音 48个英语音标正确读法

热门文章

  1. javaweb中解决中文乱码问题
  2. 2、网络编程之基于UDP示例
  3. ★LeetCode(784)——字母大小写全排列(JavaScript)
  4. 浅谈面向对象编程与面向过程编程
  5. 【博客项目】—登录功能实现( 四)
  6. 【jQuery学习】—jQuery对象的串联
  7. SQL67 牛客每个人最近的登录日期(二)
  8. 人要抱着希望才能活得好
  9. 50mm定焦,f1.8与1.4有什么不同?
  10. “很多人,到了一定年龄才明白:不要与任何人走的太近”你怎么看?