第1页共35页PowerDesigner使用手册1PowerDesigner整体框架介绍1.1PowerDesigner介绍PowerDesigner是Sybase公司的CASE工具集,是图形化、易于使用的企业建模环境。使用它可以方便地对管理信息系统进行分析设计,它几乎包括了数据库模型设计的全过程。利用PowerDesigner可以制作数据流程图、概念数据模型、物理数据模型,可以生成多种客户端开发工具的应用程序,还可为数据仓库制作结构模型,也能对团队设计模型进行控制。它可与许多流行的数据库设计软件,例如:PowerBuilder、Delphi、VB等相配合使用来缩短开发时间和使系统设计更优化PowerDesigner主要包括以下功能:集成多种建模能力,能建立的模型包括:数据模型(E/R,Merise)业务模型(BPMN,BPEL,ebXML)应用模型(UML)第2页共35页1.2PowerDesigner环境介绍1.2.1对象浏览器介绍工作空间(Workspace)它是浏览器中树的根,是组织及管理所有设计元素的虚拟环境。你可以通过保存工作空间保存自己的设计空间信息以便再次打开时可以还原到保存前的状态。项目(Project)作为容纳你所有开发出的制品的容器,项目中的所有对象可以作为一个单元存到PowerDesigner库中。每个项目自动维护一张图用以显示模型以及文档之间的依赖。文件夹(folder)工作空间可以包含用户自定义的文件夹用以组织模型和文件。例如,你有两个独立的项目,希望在一个工作空间中处理,此时可以使用文件夹。模型(Model)模型是PowerDesigner中的基本设计单元。每个模型中有一个或多个图以及若干模型对象。包(Package)当模型较大时,可能需要把模型拆分成多个“子模型”以便于操作,这些子模型就叫做包,今后可以把不同的包分配给不同的开发组。图(Diagram)展现模型对象之间的交互。可以在模型或包中创建多个图。模型对象(ModelObject)第3页共35页模型对象泛指与模型相关的所有术语。一些模型对象(比面向对象模型中的类)图形化符号,但另一些对象(比如业务规则)无法显示在图中,只能通过对象浏览器或对象列表访问。1.2.2PowerDesigner几种模型文件概念数据模型(CDM)概念数据模型(CDM)帮助你分析信息系统的概念结构,识别主要实体、实体的属性及实体之间的联系。概念数据模型(CDM)比逻辑数据模型(LDM)和物理数据模型(PDM)抽象。CDM表现数据库的全部逻辑的结构,与任何的软件或数据存储结构无关。一个概念模型经常包括在物理数据库中仍然不实现的数据对象。CDM可生成LDM、PDM和OOM逻辑数据模型(LDM)逻辑数据模型(LDM)帮助分析信息系统的结构,它独立于具体物理数据库的实现。LDM比概念数据模型(CDM)具体,但不允许定义视图、索引以及其他在物理数据模型(PDM)中处理的细节。可以把逻辑数据模型作为数据库设计的中间步骤,它在概念数据模型与物理数据模型之间。物理数据模型(PDM)PDM帮助分析数据库中的表、视图及其他对象,还包括数据仓库所需的多维对象。可针对目前主流数据库进行建模、逆向工程以及产生代码。面向对象模型(OOM)一个OOM包含一系列包、类、接口和他们的关系。这些对象一起形成所有的(或部份)一个软件系统的逻辑的设计视图的类结构。一个OOM本质上是软件系统的一个静态的概念模型。使用PowerDesigner面向对象模型建立面向对象模型(OOM),能为纯粹地面向对象的系统建立一个OOM,产生Java文件或者PowerBuilder文件,或使用一个来自OOM的物理数据模型(PDM)对象,来表示关系数据库设计分析。业务流程模型(BPM)BPM描述业务的各种不同内在任务和内在流程,而且客户如何以这些任务和流程互相影响。BPM是从业务合伙人的观点来看业务逻辑和规则的概念模型,使用一个图表描述程序、流程、信息和合作协议之间的交互作用。2主要模型文件的介绍和使用2.11.BPM业务处理模型的介绍业务处理模型是从业务人员的角度对业务逻辑和规则进行详细描述的概念模型,并使用流程图表示从一个或多个起点到终点间的处理过程、流程、消息和协作协议。通过BPM可以描述系统的行为和需求。可以使用图形表示对象的概念组织结构,然后生怕民需求的文档。作为一个概念层次的模块,BPM适用于应用系统的系统分析阶段,完成系统需求分析和逻辑设计。BPM与PowerDesigner其他模块之间的关系如图2-1所示第4页共35页BPM是用系统提供的各种对象来描述系统需求,下面简要介绍这些对象。BPM包括表2-1所示的对象。下面以电子订单处理流程图为例,看看各个对象的作用。第5页共35页图2-3所示BPM表示的是电子订单的处理过程。从起点“客户提交订单”开始,“财务部门”将电子订单的说明提供给“销售部门”,“销售部门”记录订单信息后检查货物库存情况并通知“财务部门”检查客户信用卡信息。“财务部门”从银行获取客户信用卡信息,如果信用卡余额不足则发送邮件通知客户其信用额度不足,否则告诉“财务部门”客可信。“销售部门”检查货物库存情况后进行判断,如果货物库存不足则发送邮件通知客户其所需货物库存不足,无法提供货物,否则,发送邮件通知客户订单已经确认并将需要发送的货物清单提供给“库房”,由“库房”发送货物。此BPM描述了从起点“客户提交订单”到终点“订单完成”、“未确认金额”、“订单无效”经过的“财务部门”、“销售部门”、“库房”3个部门所进行的业务处理流程图,此流程图还使用了Flow/ResourceFlow、Process、Decision、Synchronization、MessageFormat等对象2.2CDM概念数据模型的使用2.2.1概念数据模型概述数据模型是现实世界中数据特征的抽象。数据模型应该满足三个方面的要求:1)能够比较真实地模拟现实世界2)容易为人所理解3)便于计算机实现概念数据模型也称信息模型,它以实体-联系(Entity-RelationShip,简称E-R)理论为基础,并对这一理论进行了扩充。它从用户的观点出发对信息进行建模,主要用于数据库的概念级设计。通常人们先将现实世界抽象为概念世界,然后再将概念世界转为机器世界。换句话说,就是先将现实世界中的客观对象抽象为实体(Entity)和联系(Relationship),它并不依赖于具体的计算机系统或某个DBMS系统,这种模型就是我们所说的CDM;然第6页共35页后再将CDM转换为计算机上某个DBMS所支持的数据模型,这样的模型就是物理数据模型,即PDM。CDM是一组严格定义的模型元素的集合,这些模型元素精确地描述了系统的静态特性、动态特性以及完整性约束条件等,其中包括了数据结构、数据操作和完整性约束三部分。1)数据结构表达为实体和属性;2)数据操作表达为实体中的记录的插入、删除、修改、查询等操作;3)完整性约束表达为数据的自身完整性约束(如数据类型、检查、规则等)和数据间的参照完整性约束(如联系、继承联系等);2.2.2实体、属性及标识符的定义实体(Entity),也称为实例,对应现实世界中可区别于其他对象的“事件”或“事物”。例如,学校中的每个学生,医院中的每个手术。每个实体都有用来描述实体特征的一组性质,称之为属性,一个实体由若干个属性来描述。如学生实体可由学号、姓名、性别、出生年月、所在系别、入学年份等属性组成。实体集(EntitySet)是具体相同类型及相同性质实体的集合。例如学校所有学生的集合可定义为“学生”实体集,“学生”实体集中的每个实体均具有学号、姓名、性别、出生年月、所在系别、入学年份等性质。实体类型(EntityType)是实体集中每个实体所具有的共同性质的集合,例如“患者”实体类型为:患者{门诊号,姓名,性别,年龄,身份证号.............}。实体是实体类型的一个实例,在含义明确的情况下,实体、实体类型通常互换使用。实体类型中的每个实体包含唯一标识它的一个或一组属性,这些属性称为实体类型的标识符(Identifier),如“学号”是学生实体类型的标识符,“姓名”、“出生日期”、“信址”共同组成“公民”实体类型的标识符。有些实体类型可以有几组属性充当标识符,选定其中一组属性作为实体类型的主标识符,其他的作为次标识符。2.2.3实体、属性及标识符的表达第7页共35页2.3新建概念数据模型2.3.1选择File--New,弹出如图所示对话框,选择CDM模型(即概念数据模型)建立模型。2.3.2完成概念数据模型的创建。以下图示,对当前的工作空间进行简单介绍第8页共35页2.3.3选择新增的CDM模型,右击,在弹出的菜单中选择“Properties”属性项,弹出如图所示对话框。在“General”标签里可以输入所建模型的名称、代码、描述、创建者、版本以及默认的图表等等信息。在“Notes”标签里可以输入相关描述及说明信息。当然再有更多的标签,可以点击More按钮,这里就不再进行详细解释2.4创建新实体2.4.1在CDM的图形窗口中,单击工具选项版上的Entity工具,再单击图形窗口的空白处,在单击的位置就出现一个实体符号。点击Pointer工具或右击鼠标,释放Entitiy工具。如图所示第9页共35页2.4.2双击刚创建的实体符号,打开下列图标窗口,在此窗口“General”标签中可以输入实体的名称、代码、描述等信息。2.5添加实体属性2.5.1在上述窗口的“Attribute”选项标签上可以添加属性,如下图所示。注意:数据项中的“添加属性”和“重用已有数据项”这两项功能与模型中DataItem的Uniquecode和Allowreuse选项有关。P列表示该属性是否为主标识符;D列表示该属性是否在图形窗口中显示;M列表示该属性是否为强制的,即该列是否为空值。第10页共35页如果一个实体属性为强制的,那么,这个属性在每条记录中都必须被赋值,不能为空。2.5.2在上图所示窗口中,点击插入属性按钮,弹出属性对话框,如下图所示。2.5.3定义属性的标准检查约束标准检查约束是一组确保属性有效的表达式。在实体属性的特性窗口,打开如图所示的检查选项在这个选项卡可以定义属性的标准检查约束,窗口中每项的参数的含义,如下第11页共35页2.5.4定义属性的附加检查当Standardchecks或Rules不能满足检查的要求时,可以在AdditionalChecks选项卡的Server子页上,通过SQL语句中使用%MINMAX%、%LISTVAL%、%RULES%、%UPPER%、%LOWER%几个变量来定义Standard和Rule,如图所示2.6标识符标识符是实体中一个或多个属性的集合,可用来唯一标识实体中的一个实例。要强调的是,CDM中的标识符等价于PDM中的主键或候选键。每个实体都必须至少有一个标识符。如果实体只有一个标识符,则它为实体的主标识符。如果实体有多个标识符,则其中一个被指定为主标识符,其余的标识符就是次标识符了。第12页共35页2.6.1定义主、次标识符选择某个实体双击弹出实体的属性对话框。在Identifiers选项卡上可以进行实体标识符的定义。如下图所示2.6.2选择第一行“主标识符”,点击属性按钮或双击第一行“主标识符”,弹出属性对话框,如图所示第13页共35页2.6.3选择Attributes选项卡,再点击“AddAttributes”工具,弹出如图所示窗口,选择某个属性作为标识符就行了。2.7数据项数据项(DataItem)是信息存储的最小单位,它可以附加在实体上作为实体的属性。注意:模型中允许存在没有附加至任何实体上的数据项。2.7.1新建数据项使用“Model”---DataItems菜单,在打开的窗口中显示已有的数据项的列表,点击“AddaRow”按钮,创建一个新数据项,如图所示2.7.2数据项的唯一性代码选项和重用选项使用Tools---ModelOptions-ModelSettings。