前言在CSDN上转悠经常看到有网友寻求PowerDesigner相关资料的帖子,Baidu,Google上找找还真很少;同时也有不少网友发来Email询问相关PowerDesigner问题或索要相关资料的,故下定决心制作本文档。折腾二十多天,终于输出了现在的文档,其中绝大部分内容都是依照PowerDesigner自带的帮助文档翻译过来,乐意啃英文的朋友最好还是看其”原汁”教程,同时本文档仅用于帮助分析设计人员更快熟悉掌握PowerDesigner的使用方法,不包含分析设计方面的理论,所以要作好系统的分析设计工作还是需要用户深厚的项目实践功底。起初想尽量按照PowerDesigner自带帮助文档完整地进行,尝试了一上午的工作之后这种方案马上就被我否决,原因有二:1.内容太多,工作量太多。2.原帮助文档特别周全,个人觉得可以在内容上作很大程度的压缩。姑决定按原帮助文档写,同时加入自己目前正在做的技术论坛分析设计过程以便于理解。对本文档内容的几点说明:1.本文档只包括PowerDesigner部分内容(RQM,Report,CDM,PDM),内容不够全面。2.内容尽量简略,一些相同或类似操作过程尽量不再重复。3.部分术语参考了飞思科技产品研发中心监制电子工业出版社的《PowerDesigner数据库系统分析设计与应用》。4.暂时没有包含OOM,XML,BPM,ILM等模型内容,我将会在后期陆续更新。版本说明:我使用的是PowerDesignerTrial11英文版,因此文档中一些菜单,按钮名称也用英文写出(因当心自己译出的名称和中文版上的名称不一致而造成理解不便),若是给使用中文版的朋友带来不便,我在这说声”抱歉”了!同时由于各版本不同部分操作可能会有所区别。这里要感谢在我进行翻译工作期间给我发送Email关注的网友,感谢一直支持我的朋友们!由于第一次做翻译工作,限于水平有限,文档中肯定存在很多不足和错误之处,衷心欢迎各位网友指点迷津,期望得到您的指导!Email:dingchungao@gmail.comdingchungao@126.comQQ:330982401Blog:http:\\feiren1421.cnblogs.comSlash2006.8.31需求模型PowerDesigner11.0.0.1363评估版为了更好的将原文含义再现,不加入我个人语言习惯,我尽量按照原文档内容翻译。环境简介Workspace左边的资源浏览窗口Browser提供当前的Workspace层次结构,根节点为Workspace节点,Workspace中可以包含目录(Folder),模型(Model),多模型报告(Multi-ModelReport),其中模型可以各种系统支持的模型类型。一般我们将欲构建的目标系统的各种模型,文档及报告放在同一Workspace中,以便于模型设计与管理。Workspace定义了使用PowerDesigner建模时的信息集合,PowerDesgner工作时只能有一个Workspace处于打开状态。要新建Workspace必须先将当前Workspace关闭,如以下操作:右击当前Workspace-选择”Close”,这样即完成了原Workspace的关闭,同时也自动创建了新的Workspace,只是新Workspace中还没有内容。接下来就可以在其中添加自己想要新建的模型了。需求模型基础(Requirementmodelbasics)RequirementsModel(RQM)是一种文档式模型,它通过准确恰当地列出,解释开发过程程中需要实现的功能行为来描述待开发项目。你可以为开发过程中需要使用到的各种结构化技术文档(功能或技术规格说明书,测试计划)而使用RequirementsModel.RequirementsModel以下面两种视图呈现(而不是以图表形式):需求文档视图对一系列公共属性进行编号可编辑行矩阵单元格代表了当前需求与设计对象,外部文件或其它需求的联系RequirementsModel允许你可以:对一结构化技术文档建立需求模型检查现有或引入的模型对需求和设计对象(其它类型模型)建立联系对其它设计对象建立需求模型,或反之通过需求模型建立其它设计类型从需求模型生成或更新MSWord文档,提供用户一符合需求模型的MSWord文档从现有MSWord文档生成或更新相应的需求模型各对象之间关系如下图所示:RequirementsModel应该包括如下特定对象(Object):ObjectDescriptionRequirement功能行为的名称或内容,可以是父级或子级需求的一部分,它应该在被指派给用户或群(Groups)前被准确定义说明Glossaryterm用于需求模型中的词汇,它应该被正确定义说明以避免误解,建立一定的通用规则User至少与某一需求有关的个人实体Group至少与某一需求有关的用户(user)群体由于RequirementsModel中没有图表,以上各对象均没有与之对应的图象符号。需求是以图表视图形式列出,可编辑矩阵视图显示出需求和各设计对象,外部文件或其它需求之间的联系。需求建模环境包括一系列定义不同模型内容和行为的参数和设定选项,你可以通过在建立模型时,使用默认选项建立模型后或建立模型模版时进行设置。菜单栏—选择”Tools”ModelOptions,可见以下模型选项对话框,现在可以进行你喜欢的设置了。定义模型属性在打开相应模型文件后,选择菜单栏中Model-ModelProperties,或在左边树性对象浏览器中选中对应模型,双击/右键-选择Properties,均可进入Properties设置区间,如下图:接下来就可以进行你想要的设置了!新建RequirementsModel下面以我自己最近的项目过程为例逐步讲解各过程:项目简介:这是个类似动网或CSDN的论坛系统,参考了它们的功能设计,主要用于本人练习N层架构的学习。建立需求模型:建立完成的需求视图首先我们要新建一Workspace作为整个系统各种模型,文档与报告信息集合。启动PowerDesigner,这时会默认打开一个Workspace,单击鼠标右键-选择”Close”,这样我们完成了关闭原来Workspace,同时新建Workspace的工作。接下来就是在其中添加各种模型了。新建RequirementsModel点击File-New或鼠标右键单击Workspace-New-RequirementModel可以看到新建模型属性选项框如下:选择左边RequirementsModel,其它为默认设置,确定,OK!下面我们对新建的RQM进行先进行一些基本属性设置:在资源浏览窗口中右键单击刚建好的RQM-Properties或直接双击对应RQM,直接进去模型属性设置ModelProperties,如下图所示:现在你可以进行自己想要设置了。这里我们将Name,Comment分别进行基本设置,同时系统默认Name和Code是一致的,Name用来进行分析描述,为了形象明了可以使用中文,而Code则和后期的具体设计有关,如用于编码设计,一般多用英文加数字等标准命名(仅供参考)。同时我们可以看到在新建RQM时也自动建立了一个模型视图(View),接下来我们就要对该视图(View)进行编辑以建立需求模型,根据前面需求模型简介介绍的相关RQM视图知识,需求模型可以用文档视图的形式表示,后续的大部分工作只有对View进行编辑就OK了!先看看完成后的需求视图吧!这里的各系统需求是按层次排列的,这样也使需求文档视图能和标准的层次化Word/rtf文档能进行相互转换。可以通过视图上方的工具栏进行全面的需求模型建设。添加需求(Requirement):点击需求文档视图工具栏上”InsertaRow”工具或点击需求文档视图的空白区这样一个预先默认自定义的需求已经添加在文档视图中,如下所示:编辑需求属性双击需求TitleID左边的箭头(arrow)或单击需求文档视图工具栏最左边的Properties工具即进入属性属性编辑。其中除了TitleID栏之外每栏都处于可编辑状态的。注:箭头所在行为选中行属性各栏目对应着文档视图中的各可编辑栏。这里我们可以设置各需求的详细内容和描述信息,比如标题(Title),需求描述(Description),优先级(Priority),风险(Risk),状态(Status),工作量(Workload)等详细内容。详细设置信息请参考示例文件。若要更改文档视图中的可见栏目,可以通过单击需求文档视图工具栏中CustomizeColumnsandFilter工具,进入现在可以选择您想要显示的栏目了。这样我们就基本上完成了系统需求的设计过程,依此多次操作完成如下系统需求文档视图基本框架:后面的工作就是对其中各Requirement做进一步的细化,对各需求模块做更为细致的划分,即分层细化,这样也和层次化的文档吻合。这里我们以对FunctionalRequements的设计为例进行讲解,先看看细化完成后的需求文档视图(部分):现在让我们开始吧!方法一:需求文档视图,选中FunctionalRequirements-点击视图工具栏”InsertSub-Object”工具(而不是”InsertaRow”工具),这样就在FunctionalRequirements中插入了一个子对象。方法二:于左边资源管理窗口Requirements目录下右键单击相应需求名称-New-Requirement即可。如下图:现在只要对新插入的子对象进行详细的内容编辑设计即可,同样地我们也可以对各子对象通过再次添加子对象作进一步的细化工作。如果要提升或降低某部分的需求层次,则可以通过工具栏中的Promote和Demote来实现调整。定义Users和GroupsUsers(用户)指在一个需求模型中至少和一个已定义需求有关的人的集合。Groups(组)指专属于开发进程中一个或多个方面的用户类别。每个用户组要与需求模型中至少一个已定义需求有关。新建User/Group在资源浏览窗口中,右键单击模型名称(图标)--NewUser/Group,打开User或Group属性窗口,输入相应名称和代码名,确定即完成新建。同样也可在菜单栏选择”Model”Users/Groups完成新建过程。下一步是将相应的User与Group联系,添加进Group中,打开相应的Group属性,选择GroupUsers属性栏点击属性工具栏中”AddObjects”工具,从中选择您要添加的User对象,当然只有在您已经建立了相应的User对象时才会显示User成员列表。现在选择您需要添加的User对象,确定就可以了。建立Businessrules(业务规则)业务规则是对为了满足业务需求,模型应该包括的特定内容或关于如何构建模型方面的描述清单。在这里的示例模型中,我们要定义关于论坛积分制度的业务规则,具体业务规则内容见参考文档。在RequirementModel状态下,PowerDesgner默认Businss为不可用状态,为此我们需要通过新建Extendedmodeldefinition(扩展模型定义)来激活Businessrules。步骤如下:选择菜单栏”Model”ExtendedModelDefinitions,这时打开ListofExtendedModelDefinitions,通过选择其工具栏中”AddaRow”工具,如下图:点击Apply即在资源浏览窗口中添加ExtendedModelDefinitions目录。在资源浏览器中打开ExtendedModelDefinitions目录,双击相应扩展模型定义左边图标即打开ExtendedModelDefinitionPropreties现在可以在右边输入extendedmodeldefinition的Name,Code等信息。选择左边窗口中”Profile”目录,右键单击在上下文菜单中选择”AddMetaclasse