PowerDesigner 业务处理模型( BPM ) 说明

 

一.     BPM 简介

业务处理模型(Business Process Model:BPM)是从业务人员的角度对业务逻辑和规则进行详细描述的概念模型,并使用流程图表示从一个或多个起点到终点间的处理过程、流程、消息和协作协议。通过BPM可以描述系统的行为和需求,可以使用图形表示对象的概念组织结构,然后生成所需要的文档。作为一个概念层次的模块,BPM适用于应用系统的系统分析阶段,完成系统需求分析和逻辑设计。BPM与PowerDesigner其它模块之间的关系如图:

 


1.1 PowerDesigner BPM包括3种流图:

1)  处理层次流图(Process hierarchydiagram):以层次化的方式来识别系统的功能。

2)  业务处理流图(Business process diagram):用于分析一个/组流程的具体实现机制。

3)  处理服务流图(Process service diagram):以业务服务的方式来表述业务流程图。

 

1.2 创建BPM对象

(1)创建包

(2)创建业务规则

(3)创建起点

(4)创建处理过程

(5)创建组织单元/组织单元泳道图

(6)创建流程

(7)定义消息格式

(8)创建资源

(9)创建资源流程

(10)    创建终点

  

二.     示例

2.1 创建BPM

File--> New Model

 

注意这里的Precess Language选择,默认为Analysis,其在Palette 对应的为组织单元为:Organization unit Swimlane。下文会有详细说明。

 

2.2 设置BPM 配置选项

 Tools→Model Option,或者在流程图窗口中右键菜单,选择Model Option命令。

 


2.3 修改BPM 属性

三种方法:

(1)Model→Model Properties

(2)工作区中右键菜单Properties命令

(3)左侧列表中右键Properties命令

 

 

BPM的属性列表

属性名

说明

长度

Name

模型名称

254字符

Code

模型代码

254字符

Comment

模型注释

-

Filename

模型文件存储路径。如果未保存过,则此项为空

-

Author

作者

254字符

Process Language

处理语言

 

Version

模型版本号

-

Default Diagram

打开模型时默认打开的流图

 

 

2.4 业务规则

       业务规则(Business Rule)是信息系统必须遵守的或按照业务需求必须构建的特定条件。系统必须遵守此业务规则,就像遵守法律法规、客户需求或内部条例一样。

 

2.4.1 创建业务规则

Model→Business Rules。

 

添加Rules:

 

修改Rule 属性:

 


(1) “常规属性(General)”选项卡说明

       该选项卡包含属性Name、Code、Comment(说明)、Type(类型)。其中有如下类型属性可以选择。

名称

说明

Constraint(约束)

对值的附加检验,限制将在PDM和数据库中继续使用。如“项目起始日期必须早于结束日期”。

Definition(定义)

信息系统中对象的属性,如“客户是通过名称和地址识别的人”

Fact(事实)

信息系统中存在的事实,“如一个客户可以填写一个或多个订单”

Formula(公式)

系统中所使用的计算公式,如“订单总价是每个订单单价之和”

OLC Constraint(对象约束语言)

是UML表达式语言,用于定义对象的附加约束

Requirement(需求)

系统中的特定功能说明,如“销售损失不得超过10%”

Validation(校验)

系统中的限制值,如“一个客户的订单总价不能大于其信用值”

 

(2)“Expression(表达式)”选项卡或“OLC Constraint(对象约束语言)”选项卡。

       如果类型属性选择OLC Constraint,则会出现“对象约束语言”选项卡,否则出现“表达式属性”选项卡。对于表达式属性每个业务规则都可以包含以下两类表达式。

服务器端:将业务规则应用到数据库。

客户端:主要用于文档编制。

 

2.4.2 在BPM 中应用Rules

       在我们需要指定Rule的对象上右击,属性,在选择More。就可以看到Rule的选项。

 


 

 

2.5 处理BPM

2.5.1 创建新的业务处理流程图

业务处理流程图(Business Process Diagram,BPD)表示了业务处理过程间的关系,重要的是处理过程中的数据流程。在一个模型或包中可以定义多个业务处理流程图,各个流程图相互设计一个业务处理过程。


       一般在我们创建BPM 模块是默认会创建一个BPD。我们可以对这个BPD 重命名或者新建一个BPD.

 

两种方法:

(1)View→Diagram→New Diagram

(2)选择BPM,右键,New→BusinessProcess Diagram

 

 

2.5.2 定义起点

起点(Start)是BPD所表达的整个处理过程的起点,表示的是处理过程和处理过程外部的入口。

注意:在一个BPM中可以定义多个BPD,所以在一个模型或包中可以创建多个起点。

 

2.5.2.1 创建Start

两种方法:

(1)在工具栏中单击“Start”图标

(2)Model→Starts命令

 

2.5.2.2 修改起点属性

三种方法:

1)双击图标,打开“起点属性”窗口

2)右键→属性

3)Model→Starts命令,打开起点列表

 

2.5.2.3显示默认的BPM起点的名称

       默认状态下,起点的名称不显示,在BPM中只显示起点的代码(Code),很难直观地了解起点所要表达的含义。

(1)选择Tools→Display Preferences命令,打开Display Preferences(显示参数)窗口。

(2)在左侧Content-->Start,然后选中Name复选框即可。

 


2.5.3 定义处理过程

处理过程可以认为是为了达到某个目标而执行的动作。每个处理过程至少有一个输入流和一个输出流。

 

2.5.3.1 创建处理过程

       在工具栏中选中Process,然后在工作区点击创建Process

 

2.5.3.2 处理过程的属性

       双击Process 对象。

 

    

处理过程的属性包括Name、Code、Comment、Stereotype、Organization unit、Composite status(复合处理过程)等,这些属性可以在属性窗口中定义。

(1)  板型

板型是用户定义的值,这些值来源于原有的对象。用板型可以扩展对象的语义而无须改变对象的结构。

(2)  组织单元

组织单元表示某个组织与某个过程相关。它可以代表一个系统、一个服务器、一个组织或一个用户等。

(3)  复合处理过程

选中Decomposed Process(在下面)单选按钮表示此过程是复合处理过程,表示一个分解过程的子过程图在过程内被创建。

复合处理过程用来描述一个父过程的行为的子过程,可以被无限分解为多个子过程。子过程不需要进一步分解。

 

2.5.4 定义组织单元

组织单元是指为处理过程负责的组织(可以是公司、系统、服务、组织、用户、或者角色),也可以认为是使用更高级处理过程的业务伙伴。

 

在工具栏中单击“Organization unit Swimlane(组织单元泳道图)”图标或“组织单元图标”。能够选择的图标依赖BPD所使用的处理语言。

 

 

 

这里使用的语言是Analysis。 双击查看其属性:

 


这里要注意的是Organization Unit Swimlane 与Organizaion Unit和 Role Association 是互斥的,即只能使用他们中的一种。

他们之间的切换方法如下:

 

在工作区右击,可以看到一个Enable Swimlane Mode,我们禁用Swinlane Mode 之后,Organization Unit 就变为可用了。Organization Unit处理语言是Data Flow Diagram。

 

 

 

 

双击查看属性:

 


2.5.5 定义流程

(1)创建

 

 

(2)双击查看属性

 


流程具有的属性包括Name、Code、Comment、Source(起始对象)、Destination(终止对象)、Stereotype、Transport(数据流的传输方式)、Flow type(流程类型)和处理过程间的Message format(数据交换格式)等。这些属性可以在“属性定义”窗口中进行修改。

 

其中:

(1)   数据流的传输方式

此属性主要用于文档的编制,提供了数据流传输方式信息。Transport下来列表框中提供传真、邮件、电话3种备选方式,也可以直接输入其它的传输方式。

(2)   流程类型

可以直接输入流程类型或者选择一下流程类型:

1)Success:正常流程

2)Timeout:超时流程

3)Technical error:技术错误流程

4)Business error:业务错误流程

5)Compensation:补充流程。

6)  可以自己定义

(3)   消息格式

可以选择以下消息格式类型:

None:表示流程间没有数据交换。

Undefined:默认选项,表示以后将定义其消息格式。

 

可以单击消息格式下拉列表框旁的“新建”图标为流程定义消息格式。

 

(4)   流程条件(Condition)

当存在多个流程时,可以根据流程条件来选择执行流程。在“流程属性”窗口中由Condition选项卡来定义流程条件,如下图所示:

 

Condition具有以下参数:

Alias:对流程条件总结(别名)。当流程条件很复杂时,可以设置Alias属性,这样在流程图中即可显示概要性的Alias,而不显示整个复杂的流程条件。

Editor:流程条件的详细信息。用于具体描述流程的条件。

 

说明:在流程图总Alias将显示在流程线旁,如果定义了Condition而没有指定Alias,则在流程线旁显示所有Editor信息。

 

2.5.6 定义消息格式

消息格式定义了流程间的两个对象所要交互数据的数据格式。如果没有数据交换,则可以不用定义任何消息格式,消息格式可以是XML文档、XML模式或者调用存储过程的参数。

       在流程图中消息格式伴随着相关的流程出现。在“流程属性”窗口中定义消息格式时,消息格式即链接到流程图标中,如下图所示。

  

注意:在流程图中不允许复制消息格式图标,如果删除消息格式图标,则“流程”的消息格式属性设置为“None”。

 

消息格式可以通过如下两种方法创建:

(1)选择Model→Message Format命令

(2)通过流程(Flow)属性的crate选项创建,如下图:

 

 

消息格式具有的属性包括Name、Code、Comment、Stereotype、Type及Message format等。这些属性可以在属性窗口中修改,其中消息格式类型可以直接输入或者选择一下消息格式类型。

DTD:表示消息格式类型为文档类型定义(Document TypeDefinition)

XML Schema:表示消息格式类型为XML模型

RELAX NG:是一种基于语法的XML模式语言,可用于描述、定义和限制XML词汇表。

 

2.5.7 定义资源

资源(Resource)类似数据存储,可以是数据、文档、数据库、组建等处理过程,可以用于特殊事务。

 

(1)创建资源

 

(2)定义资源流程

“处理过程”通过“资源流程(ResourceFlow)”访问资源。在流程图中使用带有箭头的虚线表示资源流程。

    资源的访问方式决定了资源流程的方向。

    当“资源流程”来自于“处理过程”时,则资源的访问方式应当为Create、Update或Delete。下图表示来自“处理过程”的“资源流”,表示“处理过程”创建、更改或删除资源数据。

      

 

双击Flow 查看属性:

 


来自“资源”的资源流程访问方式为Read,表示“资源”被“处理过程”读取,如下图所示:

      

 

当资源的访问方式为Read和其它访问方式(Creat、Update、Delete)混合时,资源流程图标为双向箭头。

 

 

2.5.8 定义终点

终点(End)是业务流程图总处理过程的终止点。因为一个模型或包中可以使用多个业务处理流程,因此在一个包或模型中允许定义多个终点。甚至在同一个业务流程图中也可以定义多个终点,如正确与错误情况的终点就可以不同。

 

 

终点的类型包括以下选项:

1)Success:表示流程正常终止

2)Timeout:表示流程因为超时而终止

3)Business error:表示流程因为业务逻辑错误而终止

4)Technical error:表示流程因为技术错误而终止

5)Compensation:补充终点。

 

 

Powerdesigner 自带的示例:

 

 

 

 

 

 

 

整理自网络

-------------------------------------------------------------------------------------------------------

Blog: http://blog.csdn.net/tianlesoftware

Weibo: http://weibo.com/tianlesoftware

Email: tianlesoftware@gmail.com

DBA1 群:62697716(满);   DBA2 群:62697977(满)  DBA3 群:62697850(满)  

DBA 超级群:63306533(满);  DBA4 群:83829929(满) DBA5群: 142216823(满) 

DBA6 群:158654907(满)   DBA7 群:69087192(满)  DBA8 群:172855474

DBA 超级群2:151508914  DBA9群:102954821     聊天 群:40132017(满)

--加群需要在备注说明Oracle表空间和数据文件的关系,否则拒绝申请

posted @ 2011-10-17 18:25  davedba  阅读(263)  评论(0编辑  收藏  举报