一、   PD简介

PowerDesigner 是一个集所有现代建模技术于一身的完整工具,它集成了强有力的业务建模技术、传统的数据库分析和实现,以及UML对象建模。通过了元数据的管理、冲突分析和真正的企业知识库等功能。

利用它可以制作数据流程图、概念数据模型、物理数据模型

帮助企业快速高效地进行企业应用系统构建及再工程(Re-engineer)。 IT专业人员可以利用它来有效开发各种解决方案,从定义业务需求到分析和设计,以至集成所有现代 RDBMS 和Java、.NET、PowerBuilder和 Web Services的开发等。

PDM定义了模型的物理实现细节。例如,所选RDBMS的数据类型特征、索引定义、视图定义、存储过程定义、触发器定义等。

二、数据完整性的分类

实体完整性   主键约束  唯一键约束

域的完整性   非空约束  检查约束  默认值约束

引用完整性: 外键约束

定义索引

定义视图

定义存储过程

三、创建PDM

1、约束的创建

2、定义视图与索引

3、定义存储过程

四、数据库的操作

连接数据库  (ODBC方式)

产生数据库或者脚本  (Sql 语句方式与ODBC方式)

同步数据库  (ODBC方式)

产生脚本数据

执行sql脚本

选择Database-> Configure Data Connections

选择Database-> Connect

选择数据源,并输入正确的用户名和密码,点Connect

选择Database-> Generate Database

可以生成到文件或者直接数据库

选择需要生成的对象

选择生成规则(选项)

五、逆向工程

逆向工程:将已存在的数据库产生进新的 PDM 之内。 数据来源可能是从脚本文件或一个开放数据库连接数据来源。 当你逆向工程使用脚本的时候,你能使用一个单一脚本文件或一些脚本文件。

File->ReverseEngineer->Database

Database->Reverse Engineer Database

六、UML统一建模语言

UML的本意是要成为一种标准的统一语言,使得IT专业人员能够进行计算机应用程序的建模。

UML成为"标准"建模语言的原因之一在于,它与程序设计语言无关。(被广泛应用于.NET 和J2EE开发)而且,UML符号集只是一种语言而不是一种方法学。

UML还提供了多种类型的模型描述图(diagram),当在某种给定的方法学中使用这些图时,它使得开发中的应用程序的更易理解

用例图:以一种可视化的方式理解系统的功能需求,适合需求定义阶段概要设计阶段。用例图通常用于表达系统或者系统范畴的高级功能

序列图:显示具体用例(或者是用例的一部分)的详细流程,特别适合在详细设计阶段

类图:显示了系统的静态结构。类图可用于表示逻辑类,也可以 表示实现类。一般用于详细设计阶段

活动图:活动图最适合用于对较高级别的过程建模,适合概要设计阶段

状态图:表示某个类所处的不同状态和该类的状态转换信息,适合详细设计阶段

组件图:显示系统中的软件对其他软件组件(例如,库函数)的依赖关系,适合概要设计阶段

部署图:表示该软件系统如何部署到硬件环境中,适合概要设计阶段

七、概要设计

1、耦合性:也称块间联系,指软件系统结构中各模块间相互联系紧密程度的一种度量。模块之间联系越紧密,耦合性越强,模块的独立性则越差。模块间耦合高低取决于模块间接口的复杂性、调用的方式及传递的信息

2、内聚性:又称块内联系,指模块的功能强度的度量,即一个模块内部各个元素彼此结合的紧密程度的度量。若一个模块内各元素(语句间、程序段间)联系的越紧密,它的内聚性越高

3、模块独立性指每个模块只完成系统要求的独立的子功能,并且与其他模块的联系最少且接口简单。

模块独立性概念是模块化、抽象、信息隐蔽这些软件工程基本原理的直接产物。只有符合和遵守这些原则才能得到高度独立的模块。良好的模块独立性能使开发的软件具有较高的质量。模块独立性强,则信息隐蔽性好,并完成独立的功能,且它的可理解、可维护性、可测试性好,导致软件的可靠性高。

根据模块的外部特征和内部特征,衡量软件独立的两个定性指标是:耦合性和内聚性。

在UML中包含9类图:

①  类图;②对象图;③用例图;④顺序图; ⑤协作图;⑥状态图;⑦活动图;⑧组件图;⑨部署图。
静态图有:类图、对象图、用例图、组件图、部署图。
动态图有:顺序图、协作图、状态图、活动图。

八、UML中的关系
   1、关联关系  关联关系连接元素和链接实例,它用连接两个模型元素的实线表示,在关联的两端可以标注关联双方的角色和多重性标记。

2、依赖关系  依赖关系描述一个元素对另一个元素的依附。依赖关系用源模型指向目标模型的带箭头的虚线表示。

3、泛化关系 泛化关系也称为继承关系,泛化用一条带空心三角箭头的实线表示,从子类指向父类。

4、实现关系 实现关系描述一个元素实现另一个元素。

5、聚合关系 聚合关系描述元素之间部分和整体的关系,即一个表示整体的模型元素可能由几个表示部分的模型元素聚合而成。

PowerDesigner与UML建模应用的更多相关文章

  1. Rose与PowerDesigner:两款UML建模工具的对比

    声明 本文转载自:Rose与PowerDesigner:两款UML建模工具的对比 正文 本文和大家重点讨论一下Rose与PowerDesigner:两款UML建模工具的对比,Rose和PowerDes ...

  2. PowerDesigner(数据建模)使用大全

    什么是PowerDesigner 引入百度百科的说法是: power designer是能进行数据库设计的强大的软件,是一款开发人员常用的数据库建模工具.使用它可以分别从概念数据模型(Conceptu ...

  3. 三大UML建模工具Visio、Rational Rose、PowerDesign的区别

    本文源自http://developer.51cto.com/art/201006/207993.htm UML建模工具Visio .Rational Rose.PowerDesign的比较   RO ...

  4. 【转】三大UML建模工具Visio、Rational Rose、PowerDesign的区别

    本文转自http://developer.51cto.com/art/201006/207993.htm UML建模工具相信大家有所了解,那么你对UML建模工具Visio .Rational Rose ...

  5. uml建模工具介绍

    应用最广的由两种种1. Rational Rose,它是ibm的 .2.Microsoft的 Microsoft Office Visio® 2003 3.Enterprise Architect.还 ...

  6. UML建模工具Visio 、Rational Rose、PowerDesign的比较

    UML建模工具Visio .Rational Rose.PowerDesign的比较   ROSE是直接从UML发展而诞生的设计工具,它的出现就是为了对UML建模的支持,ROSE一开始没有对数据库端建 ...

  7. 三大UML建模工具Visio、Rational Rose、PowerDesign

    UML建模工具Visio .Rational Rose.PowerDesign的比较 应用最广的由两种种1. Rational Rose,它是ibm的 .2.Microsoft的 Microsoft ...

  8. 本节向大家介绍一下UML建模误区

    本节向大家介绍一下UML建模误区,这里向大家介绍九个误区,希望通过本节的学习,你对UML建模有清晰的认识,以免在以后使用过程中产生不必要的麻烦.下面让我们一起来看一下这些建模误区吧. UML建模误区 ...

  9. UML建模类型(转载)

    区分UML模型, UML建模用于不同类型的不同的图.有三个重要类型的UML建模: 结构建模: 系统结构建模捕捉静态功能.它们包括下列各项: 类图 对象图 部署图 包图 复合结构图 组件图 结构模型代表 ...

随机推荐

  1. SQL从入门到基础 - 05 数据分组、Having语句

    一.数据分组 1. 按照年龄进行分组统计各个年龄段的人数: Select FAge,count(*) from T_Employee group by FAge; 2. Group by子句必须放到w ...

  2. RDD 重新分区,排序 repartitionAndSortWithinPartitions

    需求:将rdd数据中相同班级的学生分到一个partition中,并根据分数降序排序. 此实例用到的repartitionAndSortWithinPartitions是Spark官网推荐的一个算子,官 ...

  3. window程序设计1

    int WINAPI WinMain(HINSTANCE HInstance,HINSTANCE HPreInstance,LPSTR szCmdLine,int CmdShown) { Massag ...

  4. Java中int和String互相转换的多种方法

    1 如何将字串 String 转换成整数 int? A. 有两个方法: 1). int i = Integer.parseInt([String]); 或 i = Integer.parseInt([ ...

  5. 【vc】5_文本编程

    1.插入符(Caret): (1) 文本插入符 函数的原型声明:(CWnd类) void CreateSolidCaret ( int Nwidth, int nHeight ); ·nwidth:指 ...

  6. JS中,如何查询一个对象的所有属性

    var res = ""; for(var p in object) { res += p + ","; } alert(res);

  7. Dede文章列表

    文章列表标签的使用: {dede:arclist flag='h' typeid='' row='' col='' titlelen='' infolen='' imgwidth='' imgheig ...

  8. js实现网页收藏功能,动态添加删除网址

    <html> <head> <title> 动态添加删除网址 </title> <meta charset="utf-8"&g ...

  9. Swift字符串的插入、删除和替换-备

    对应可变字符串可以插入.删除和替换,String提供了几个方法可以帮助实现这些操作.这些方法如下: splice(_:atIndex:).在索引位置插入字符串. insert(_:atIndex:). ...

  10. 【转】sublime text 2 中文乱码解决办法

    sublime text 2是一款非常优秀的跨平台文本及源代码编辑器,本人非常喜欢,但是不支持GB2312和GBK编码在某些时候比较麻烦.可以通过向sublime text 中添加编码类型转换包(比如 ...