免费预览已结束,剩余2页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于BPMN的业务流程一体化建模方法BPM 业务分析员 业务流程一体化建模 为了给业务分析员提供一种简单易懂、直接支持计算机仿真和执行的可视化业务流程建模方法,提出了业务流程一体化建模概念及方法。本文通过实际研发业务流程管理系统,验证了该方法的可行性。 0 引言业务流程建模是指用图形、公式、表格或文字描述业务流程的特性,回答为什么做、做什么、怎么做、谁做等问题。文献指出业务流程建模方法主要有:流程图(flow chart),是最早用于业务流程的一种图形化描述方法,易学习、好理解,但存在无法清楚界定流程界限、不支持层次化描述业务流程等问题;角色活动图(Role Activity Diagram,RAD)和角色交互图(Role Interaction Diagram,RID),擅长描述角色与活动、角色与角色的交互关系,但不支持层次化描述业务流程;IDEF0和1DEF3,IDEF0描述业务流程做什么,但没指明谁做;IDEF3回答了怎么做,但描述复杂业务流程难度大;高级Pet“网有很强的数学基础,可以计算仿真分析业务流程性能,如文献和文献,但用户的学习难度大;统一建模语言(Uniform Modeling Language,UML)活动图易学习和使用,但模型的仿真和分析能力差。此外,业务流程建模方法还有事件驱动过程链(Event-driven Process Chain,EPC)f4l及其扩展EPC、事件一条件一行为(EventCondition-Action,ECA)规则等。但是,这些方法没有一个可以同时满足业务分析员可视化设计、分析、仿真和执行业务流程模型需要。业务流程建模是实现业务流程管理(BusinessProcess Management,BPM)的基础。实施业务流程管理可以提高流程效率,增强企业竞争力,“执行力就是竞争力。使用业务流程建模方法的终端用户是业务分析员。对业务分析员来讲,最理想的建模方法是简单、易学、好用,支持可视化描述业务流程,可以验证模型结构正确性,计算仿真分析模型性能,支持计算机运行模型的方法。要实现这一目标。需要研究如何将模型的描述符号、存储结构、元素语义、仿真机制、执行机制等融合在一起。正是由于没有一种能同时满足业务分析员设计、分析、仿真与执行业务流程需要的建模方法,BPMN十XPDL+BPEL因此成为当前最流行的一种业务流程建模解决方案。业务流程建模符号(Business Process ModelingNotation,BPMN)是业务流程管理倡议组织(BusinessProcess Management Initiative,BPMI)于2003年提出、被对象管理组织(Object Management Group,OMG)采纳的一种建模规范阳。它提供的图形建模符号易被业务分析员理解,是目前最流行的业务流程可视化描述语言。但是,BPMN规范没有定义业务流程图(Business Process Diagram,BPD)的存储结构,Process元素语义不明,因此BPMN模型不能直接用于计算机交换、仿真、执行。基于可扩展标记语言(Extensible Markup Language,XMI。)的过程描述语言(XML Process Definition Language。XPDL)规范阳3是工作流管理联盟(Workflow Management Coalition,WfMC)推出的一种业务流程建模方法,支持用BPMN图形符号描述业务流程,定义了业务流程图的存储结构和仿真语义,XPDL模型可用于交换,但Process元素的显示语义与执行语义混在一起,不利于计算机执行。业务流程执行语言(Business ProcessExecution Language,BPEL)规范0是结构化信息标准促进组织(Organization for the Advancement ofStruetured Information Standards,OASIS)推出的一种可以有效编制多个Web服务的执行语言,执行语义明确,可用于业务流程建模。BPMN规范支持将BPMN模型转换为BPEL模型用于计算机执行,文献研究了将BPMN模型自动转换成BPEI。模型的方法。但BPEL模型的结构半结构化描述方式对于非结构化业务流程图来讲,有时很难实现转换,对业务分析员绘制业务流程图有太多限制;并且这种转换是单向的,转换后得到的BPEL模型,业务分析员可能无法读懂。为了统一XPDI。和BPEL,文献基于XPDL元模型和BPEL元模型设计了一个元模型,但没有给出元模型的仿真与执行机制。XPDL和BPEL先于BPMN提出,但XPDL和BPEL自身存在的问题,使得人们对其能否满足BPM需要存在疑惑。鉴于现有业务流程建模方法存在一些各自难以解决的问题,有必要从根本上对已有方法进行改进,研究一种适合业务分析员学习、使用的新方法,为此,本文提出业务流程一体化建模。业务流程一体化建模是指业务分析员可视化设计的业务流程模型可以被直接用于计算机仿真和执行。BPMN规范提供的流程描述符号已被广泛认可,本文基于该规范研究业务流程一体化建模方法。1 设计理念为更好地指导业务流程一体化建模方法研究,可将构成业务流程图的元素的语义细分为显示和执行两种。BPMN规范将构成业务流程图的元素分为图形元素(graphical elements)和支撑元素(supportingelements)两类。图形元素如Pool,Lane等,支撑元素如Process,Gate等。BPMN规范定义Process是包含在Pool中的图形元素Activity,Gateway,Event的有序组合,逻辑关系通过图形元素Sequence Flow体现。从可视化设计角度来讲,要在图中显示Activity,Gateway和Event元素,需要给出这些元素的形状、大小、位置等信息,这些可视为元素的显示语义;从计算机执行角度来讲,执行业务流程就是执行Process,执行Process需要执行Activity,Gateway和Event,执行Activity就必须提供用户、工具、数据、变量等信息,这些可视为元素的执行语义。组成Process的图形元素的显示语义对执行Process没有任何意义。此外,本文遵循的设计理念还有:业务流程建模方法应该以业务分析员为本,而非信息技术员;非结构化方法比结构化方法更能有效描述业务流程。2 支持业务流程一体化建模的元模型设计2.1 模型结构由于BPMN规范提供的图形建模符号易被业务分析员理解和使用,现已成为当前最流行的业务流程可视化描述语言。以业务分析员为本,本文选用BPMN 12规范提供的图形建模符号可视化描述业务流程。通过扩展符号语义,改进模型结构,设计了如图1所示支持业务流程一体化建模的元模型。图1 支持业务流程一体化建模的元模型(1)基于元素语义可细分设计理念,元模型引入支撑元素Node来定义Process的执行语义。BPMN元素中影响业务流程执行的图形元素有Activity,Gateway和Event,支撑元素Node继承和扩展了这些图形元素的执行语义,它们在元模型中只保留显示语义,但与Node关联。在业务流程图中,有一个ActMty或Gateway或Event对象,就有一个Node对象。这样做的好处是业务分析员可以通过配置图形元素属性的方式提供执行Node所需的信息。(2)元模型借鉴了文献组织图形元素的方法,但将Process与Pool并列,并相互关联,有一个Pool就有一个Process,删除Pool时,对应Process将被删除。与XPDI。元模型(见文献9)相比,图1所示元模型的图形元素组织方式有所改进,层次关系更明确,元素查询更便捷。(3)基于非结构化方法能更有效描述业务流程设计理念,图1所示元模型没有用if,while,forEach等结构化语句来描述Process,与BPEI。元模型(见文献相比,无需把BPMN模型转换成BPEL模型就能被计算机解释执行,避免了由于BPEL难以支持所有非结构化过程而对业务分析员带来的诸多建模限制。(4)Participant定义有哪些实体(系统、组织、角色、用户)参与执行业务流程,此处“系统”特指控制业务流程运行的流程引擎;Application定义业务活动如何完成,是具有特定功能的软件工具,元模型除了保留BPMN规范对Web服务的支持外,还扩展支持业务组件(用C+JavaC#等编程语言开发,用户简单配置后就可被调用);Property定义执行业务流程时业务活动问传递数据所用的变量,其作用域视定义位置而定;在业务流程图下定义的变量可用于该业务流程图的所有Process,在Process中定义的变量只能用于该Process;Typedefine允许用户扩展定义满足特殊需要的数据类型。 2.2 显示语义BPMN规范明确了Pool,Lane,Activity等图形元素的形状,但语义不够完整,缺乏显示位置、大小、所在页面、所属层次等信息,这些信息对层次化显示复杂业务流程图,降低理解难度是有用的。相比BPMN,XPDL给出了比较完整的显示语义,本文借鉴其定义,通过改进扩展了BPMN图形元素的显示语义,如图2所示。图2 BPM图形兀素显不语义扩展需要说明的是:Page元素用来层次化组织业务流程图组成元素,它的ParentPageRef属性用来指向当前Page的上级,描述Page之间的层次关系,BPMN图形元素可以根据PageRef属性确定所在Page;对BPMN图形元素来讲,Activity等元素只需知道其左上角顶点坐标及大小就可定位画出该元素,而Sequence Flow等元素却需要给出画线的起点、终点和中间点坐标但不需指定大小。2.3 执行语义当BPD用于计算机仿真分析或解释执行时,起作用的是Process,Node,Gate等支撑元素;因此,本节将根据BPMN 12规范给出这些元素的执行语义。定义l Process。Process是一个多元组,Process=(Id。Status,Assignments,Properties,TypeDefines,Nodes,InputSets,OutputSets,AccessLeve1),且满足下列条件:(1)Id与对应Pool的ld相同,Status,Assignments,Properties,InputSets和OutputSets语义与BPMN 12规范相同。(2)AccessLevel等于PUBLIC表示Process可被外部系统或应用程序调用,等于PRIVATE表示当前Process只能被其他Process的组成元素(比如子流程元素)调用。(3)Nodes是元模型中Node的有限集,详见定义2。(4)Properties是元模型中Property的有限集,TypeDefines是元模型中TypeDefine的有限集。定义2 Node。Node是一个多元组,Node一(Id,NodeType,EventDetails,Status,InputSets,OutputSets,IORules,ParticipantRef,ApplicationRef,Simulationlnfor,DiagramRef,ProcessRef,InputMaps,OutputMaps,Behavior,Gates,Assignments)且满足FY,J条件:(1)Id与对应图形元素Activity,Gateway,Event的Id相同;Assignments语义与BPMN 12规范相同。(2)NodeType取值于E U A U G。集合E=StartEvent,IntermediateEvent,EndEvent),集合A=Task,SubProeess),集合G一ExclusiveData-Gateway,ExclusiveEventGateway,ParallelGateway,InclusiveGateway。(3)当且仅当NodeType取值于集合E时,EventDetails有效,由一个或多个EventDetail组成,EventDetail语义与BPMN 12规范相同。(4)当且仅当NodeType取值于集合A时,Status,InputSets,OutputSets,IORules有效,语义与BPMN 12规范相同。(5)当且仅当NodeType等于Task时,ParticipantRef,ApplicationRef,Simulationlnfor有效。ParticipantRef指向完成该任务的Participant,ApplicationRef指向完成该任务的Application;Simulationlnfor=(Time,Cost),Time=(WorkTime,WaitTime),用于仿真分析。(6)当且仅当NodeType等于SubProcess时,DiagramRef,ProcessRef,InputMaps,OutputMaps有效,语义与BPMN 12规范相同。(7)当且仅当NodeType取值于集合G时,Behavior有效,可取值于集合Split,Merge;当Behavior取值Split时,表示Node将一条路径拆分为多条分支;取值Merge时,表示Node将多条分支合并为一条路径。(8)Gates是元模型中Gate的有限集。每个Gate表示当前Node的一条分支,指向后继Node,Gate详见定义3。约定l 任何非空的Process有且只有一个NodeType取值StartEvent的Node,但可以有多个NodeType取值EndEvent的Node。这样约定要求每个Process只能有一个开始点,但可以有多个结束点。实际执行Process时,只有一个结束点有效。允许有多个结束点是为了画图方便。 定义3 Gate。Gate是一个多元组,Gate=(Id,Condition,NodeRef),且满足:(1)Id与对应图形元素Sequence Flow的Id相同。 (2)Condition是执行Gate的条件,可以是逻辑表达式,缺省取值TRUE表示条件满足。(3)NodeRef指向当前Node的直接后继。约定2 当Node的NodeType取值于集合ExclusiveDataGateway,InclusiveGateway时,若Gates含有两个或多个Gate,要求至少有一个Gate的Condition满足。这样要求是为了保证业务流程在执行过程中,不会因为设计人员考虑不周或数据有错,导致无法确定沿着哪条分支继续执行的问题发生。3 元模型实例的计算机仿真与执行机制设计元模型实例指用户设计的、符合元模型要求的实际业务流程模型。依据XML Schema规范可以得到描述图1所示元模型的XML Schema定义(XMLSchema Definition,XSD)文件。业务流程建模工具根据XSD文件可自动生成描述业务流程模型的XML文件。当业务流程模型用于计算机仿真、执行时,流程引擎将按照特定规则解释执行XML文件代码。由于引入元素Node改变了业务流程模型的存储结构,已有工具软件将无法创建、仿真、执行符合图1所示元模型实例,笔者设计了一个业务流程管理系统,本章先给出系统的计算机仿真与执行机制。3.1 执行机制流程引擎执行业务流程模型时,首先读取业务流程图中AccessLevel是PUBl。IC的Process,并查找Process中NodeType等于StartEvent的Node(以下简称开始节点),取开始节点的EventDetails识别触发方式,根据触发方式将Process的Id及触发条件写入相应队列,流程引擎将循环检查队列中的Process是否可以启动。当Process开始节点的触发条件满足时,流程引擎立即生成Process实例并运行,其执行机制如图3所示。图3 行机制3.2 仿真机制流程引擎仿真分析业务流程模型时,需要知道读Node的Gate信息用户从任务列表中取任务信息,执行Appl i cat ionRef指定的服务或组件是对业务流程图中所有Process进行仿真,还是对业务流程图中指定Process进行仿真?是并发仿真Process,还是串行仿真Process?仿真次数多少?是否考虑资源有限约束?是否考虑人的工作能力、工作态度、精神状态?仿真结束后需要统计哪些指标?如何统计?等。以资源无限,川p完仑理性,串行仿真Process为例,元模型实例的仿真机如图4所示。图4 仿真机制需要指出的是,图4所示是一种简化了的仿真机制,完整的仿真机制要比这复杂得多,限于篇幅,本文不做详细阐述。4 方法验证现有的业务流程管理工具软件,如微软的BizTalk Server、IBM的WebSphere等,要求用户严格按照XPDL或BPEL等已有规范建模,否则将无法正确识别业务流程模型。本文提出的业务流程一体化建模方法虽然使用已有的业务流程建模符号可视化描述业务流程,但引入元素Node和苇新定义流程元素语义改变了业务流程模型的存储结构,因此,按照图1所示建立的元模型实例,将无法被现有工具软件正确识别。为验证本文提出的业务流程一体化建模方法是否可行,基于MicrosoftNET Framework 20,笔者用C#语言编程开发了一个支持业务流程一体化建模的业务流程管理系统YDI。BPMS。系统分为流程引擎、工作平台和设计平台三部分。其中,流程引擎负责解释执行业务流程模型,推进业务流程实例;用户通过工作平台获取和执行任务,提供流程异常管理功能;设计平台提供了工程定义、组织设计、表单设计、活动设计、流程设计等功能模块。流程设计允用户呵视化建模业务流程,如图5和图6所示。基于YDI,BPMS,笔者为中国四联集团技术中心构建了工业自动化仪器仪表嵌入式系统开发平台,以规范嵌入式产品研发过程管理,允许用户根据产品特点个性化配置实际的研发管理流程,实现产品研发过程的全程跟踪与控制,系统现已开始在企业实施。图5 业务流程设计图6 任务属性设计分析图5和图6可以看出,业务分析员不用写代码,只需通过图形化描述业务流程和设置业务活动的任务属性,即可创建可执行、仿真的业务流程模型。当然,前提是YDI。BPMS提供了大量封装好的业务组件。如何封装和管理这些业务组件超出了本文范围,在此不做过多介绍。与Petri网等业务流程建模方法相比,虽然Petri网也能图形化描述业务流程,但本文提出的业务流程一体化建模方法由于采用BPMN描述业务流程,创建的业务流程图更符合人的理解习惯,易被业务分析员接纳、学习和用。不过,Petri网的数学分析方法仍值得笔者学习和借鉴,以便笔者进一步丰富和完善本文提出的业务流程一体化建模方法。5 结束语本文为业务分析员提供一种简单易懂、直接支持计算机仿真、执行的可视化业务流程建模方法,是业务流程管理研究人员梦寐以求的目标。为实现这一目标,本文以业务分析员为本,基于业务流程建模符号规范研究了业务流程一体化建模方法,设计了支持业务流程一体化建模的元模型,设计了元模型实例的计算机仿真与执行机制,通过实际开发业务流程管理系统YDLBPMS验证了方法的呵行性。但是,本文提出的业务流程一体化建模方法并不完善,还需要基于提出的元模型进一步研究如何支持业务流程事务处理,如何在有限资源约束下进行仿,如何用数学方法静态验证模型结构等问题。手把手地教他们使用仪器、计算公式,遇到测量上的问题,他都耐心地解答。一分耕耘,一分收获,经过一段时间的精心调教我们无法预知死亜,但是也许每丧人都怃耂过死亜会带来什么,戒多戒少,觇度也丌尽相同。可我们都时帯感到人生苦短无帯,同时又感到过程沉闷苦痛。of the contract must be /; Seven or one copy of the contract, each contract form, contents and elements; VIII, master/slave contract and complete specification interface, contract number. 5.9 other provisions the Bank supports risk managers, accompanied by professional risk management, such as account managers handle the pre-loan investigation, contracts and other key sectors. Risk managers and other professional accompanied by risk managers, account managers are still subject to these measures (procedures) for the fulfilment of duties, qilu Bank risk managers, risk managers, in accordance with the administrative procedures (trial implementation) called for duties. Risk management risk managers and other professional personnel involved in handling, account manager with double handle. 6. the credit policy of the Ba
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 三明市中医院病案质量检查考核
- 南通市中医院晋升高级职称科研与教学能力评审材料
- 淮安市人民医院器械组装技术考核
- 丽水市人民医院中长期财务战略规划撰写与论证考核
- 上饶市中医院术中快速病理医师认证
- 连云港市中医院结果判读能力考核
- 衢州市中医院治疗计划系统数据一致性检查试题
- 杭州市中医院病案首页填写规范与DRGDIP基础知识测试
- 扬州市中医院臭氧治疗技术考核
- 南平市中医院红细胞制剂应用考核
- 2025道中华铸牢中华民族共同体意识知识竞赛试题(+答案)
- T-CCUA 048-2025 政务信息系统运行维护费用定额测算方法
- 产教融合机制课题申报书
- 建筑工地环保及噪音控制施工方案
- 2024年下半年 软件设计师 上午试卷
- 《新医学大学英语视听说教程1》参考答案汇 -U1-U6
- 2025新外研社版七年级上英语单词汉译英默写表(开学版)
- 消化内科出科题目及答案
- 第7章广泛应用的酸碱盐(上)-2021学年九年级化学下册必背知识手册(沪教版)(默写卡)
- 2025年铅酸蓄电池行业研究报告及未来发展趋势预测
- 工伤预防培训试题(附答案)
评论
0/150
提交评论