流程的角色辩识和形式化表示(赵卫东)

  作者:赵卫东
2004/7/26 10:42:00
有关面向角色的流程模型,近几年国外才有几位学者开始研究,相关的文献很少。目前出现了几种面向角色的流程表示方法,它们多是从基于活动的流程描述方法扩充而来。总体上这些方法又可分为非形式化的图形表示和形式化

本文关键字: 理论探讨

有关面向角色的流程模型,近几年国外才有几位学者开始研究,相关的文献很少。目前出现了几种面向角色的流程表示方法,它们多是从基于活动的流程描述方法扩充而来。总体上这些方法又可分为非形式化的图形表示和形式化的语言脚本表示。非形式化的图形表示方法相对较多,如基于通信的工作流(Communication-based workflow)和角色活动图(role activity diagram)建模方法。此外,也可拓展面向角色的可执行的流程模型RolEnact[1]RolEnact是一种能生成可执行流程实例的建模语言,这种语言采用角色、状态、活动或事件等要素描述流程。角色通过执行活动改变自身状态,也可能改变其它角色的状态。RolEnact的基础在于对象技术常用的条件—活动模式,在角色的产生、高层角色内部的并发支持不足。有关面向角色的流程形式化描述,目前也出现了多种建模语言,如BPMI.org定义的业务流程建模语言BPML (Business Process Modeling Language)工作流管理联盟WFMC的工作流描述语言WPDL等,下面将介绍的ConGolog是一种支持多agent合作的流程描述语言[2],其中流程被描述成多个相互作用的角色集合,每个角色有分担流程目标的责任,内部活动及其与其它角色的交互。下面仅讨论面向角色的流程模型角色的确定和形式化表示。

1、角色的辩识

组织的高层目标,如战略目标很难形式化描述,但可以逐步分解为具体的、容易形式化的子目标。流程是组织目标的实现方式,流程与组织目标具有同样复杂的层次性。流程的组织主体是担负一定责任的角色(有些学者认为角色表示参与者执行的有序活动集合),角色由具体的参与者(actor)执行。参与者包括小到个人、职能部门、跨部门的小组甚至组织联盟,高层流程完成的目标内容较多,往往涉及多个部门组成的虚拟角色。

角色的责任与组织的子目标是对应的,其识别过程主要有2种方法,即从上到下和从下到上的辩识方法。从上到下的方法如下[3]

1)确定组织目标,一般用自然语言描述。可以通过与组织股东(stakeholder)头脑风暴式的交流、研究组织战略的文档(如组织使命)以及同行业的其他组织确定。

2)目标的分解。为便于复杂问题的求解,可以从目标如何实现层层深入,得到具体的各级子目标。分解的结果可以用与/或目标图表示。由于目标之间存在一定的关系,此过程还需要注意目标之间的冲突、目标之间的影响。

3)确定角色及其责任。这是与目标分解同步的过程。对于某个目标,可以确定当前组织中能完成此目标的角色,否则需要进一步精化目标。不同层次的目标有不同粒度的组织角色负责。

4对每个角色,描述其完成目标的过程,与其他角色的关系等。

组织实体通过执行一定的活动集履行其责任,达成一定的目标,实现自身的价值。这些责任与某种角色的内涵是一致的。从下到上的角色识别方法,如上面提到的角色活动图RAD,从流程模型(用活动描述)入手,通过把属于同一个组织实体的活动聚类,从而可以确定相应的角色(包括角色交互)及其目标。这种方法比较直观,容易从一般的流程模型转化,不需要对组织事先过多的了解。相对来说比从上至下的角色辩识方法容易。

2、角色的形式化表示

除了图形化的表示方法外,也有一些表示角色的形式化语言表示方法。如ConGolog是一种并发的逻辑编程语言[3],自然易用,其中每个角色有分担流程目标的责任、内部活动过程,角色之间的交互包含在角色的活动函数中。下面以文献4中例1贷款审批流程的RAD图为例说明。具体的ConGolog语法请参考文献2

角色 committee

role Ccommittee

responsibility

action SendMessagesenderrecipientmsg

endAction

proc DecideAtMeetingselfapp

if acceptableappthen

 for b:Actorbù PlayRolebClerkdo

   SendMessageselfbéOKù

 endFor

endProc

proc main

app: Applicationappù Hasselfapp?DecideAtMeetingselfapp))

endPro

endRole 

角色Clerk

role Clerk

responsibility

Action Decide

 

endAction

Action referbcapp

 …

endAction

Action SenseMessage

 

endAction

action GiveDecision (b,app)

 …

endAction

proc Evaluate (self,app)

if WithinGuidelineappthen

Decide

else for c: Actorcù PlayRolecCommiteedo

Referselfcapp

endFor

endProc

proc main

( a: Submitaù Receiveda, self? Evaluate (self,app) )

>>

 while true do

SenseMessage

if ù EmptyMessageQueself)) then

GiveDecision (self,app)

endWhile

endproc

endRole

上述的角色形式化表示也存在一些问题,如要求建模人员熟悉情境代数(situation calculus)和并发逻辑编程语言ConGolog,比较费时,且组织流程变化后难于维护。为此需要一些建模工具的支持。

参考文献

[1] Keith Thomas Phalp, Peter Henderson, Robert John Walters, et al. RolEnact: role-based enact able models of business processes [J]. Information and Software Technology, 1998,40:123-133

[2] De Giacomo G, Lesperance Y, Levesque H. Reasoning about concurrent execution, prioritized interrupts and exogenous actions in the situation calculus[C]. IN: Proceedings of IJCAI’97, 1997:1221-1226

[3] Manolis Koubarakis, Dimitris Plexousakis. A formal framework for business process modeling and design [J]. Information Systems, 2002,27:299-319
[4]赵卫东. 流程的角色模型[R], /docs/bpwebsite.asp, 文档 : 00.042.134
 
本文由作者向AMT提供
 
赵卫东 专栏
责编:赵卫东
vsharing微信扫一扫实时了解行业动态
portalart微信扫一扫分享本文给好友

赵卫东 专栏

rss订阅
博士、副教授。1998年毕业于合肥工业大学机电控制与自动化专业,获工学硕士学位。随后考入东南大学,从事决策支持理论及其在商务智能中的应用研究,2001年10月获博士学位。2001年6月起在复旦大学管理科学与工程博士后流动站工作,主要研究工作流管理系统和电子商务等,2003年5月出站进入复旦大学软件学院工作。近年来在《系统工程学报》、《管理科学学报》、《系统工程理论与实践》、《系统工程与电子技术》、《小型微型计算机系统》、《计算机工程》等核心刊物和国际学术会议发表学术论文50多篇。主持和参加国家自然科学基金、863高技术课题和中国博士后科研基金近10项。2001年获中国高校科技进步一等奖。目前负责一项国家自然科学基金,主要从事信息管理和电子商务等研究。赵先生最近新作:《电子商务模式》(赵卫东、黄丽华著,复旦大学出版社2006年8月),《流程管理》(赵卫东、俞东慧著,知识产权出版社2007年4月)
畅享
首页
返回
顶部
×
    信息化规划
    IT总包
    供应商选型
    IT监理
    开发维护外包
    评估维权
客服电话
400-698-9918