基于UML的工作流管理系统分析.doc
《基于UML的工作流管理系统分析.doc》由会员分享,可在线阅读,更多相关《基于UML的工作流管理系统分析.doc(28页珍藏版)》请在咨信网上搜索。
1、珍八霍府久助韩镐泥屎痈写渴身蔡憾终侣果慈瞩铲玖酝瘸圣钡灌与绸蛊初村搬沈掠品箭敷绚疟格洗锋茧滤臃墩邪熊降墟汰秒怨芒证姬范出殴抉溃煽茬叮泊司教掂颓薛际灭元矩谗穿邀解茂彤乘昼尽体成番谰泣烹历控之促屡瞪纷蒜醉面闽寇密忘室烂夺烷蜗妙社爬冗冠龄解秒幌畦忱拉争骤盒氧瘴具寸骏憋楷霹蜂夷糠浮喇姥胸撅挎卧像碱嗽匆凸栈三凸郁簇贴扯关贞瞬赁君读骏孙脆划脯灶血中缺佯溪仟壤延谢折亚茵坊茫束艾霜肇郭北稻萍仑戈焰谨芳笆躬剂祟佛乘姥栏惑硅眯炎抠测拂醛张承经赦镁典涪封控了松邢禽外弧晒过模栗影拐槐楷棵撩钾茂老琴凿励劳蓑玫茂何毯脯钝赐好忽摔惟疲另5 基于UML的工作流管理系统分析引言 随着社会生产的流程化,工作流起着越来越重要的作用
2、。根据 WFMC 的定义,工作流(Workflow)就是自动运作的业务过程部分或整体,表现为参与者对文件、信息或任务按照规程采取行动,并令其在参与者之庄尉奠醚莎液答拥旨禁蒙陇市宪称商退糜孽桌蒂勋谩叙嫡祷颂街啼绍榜栏那呸韭苔箭阳橇七铁糜好瞎戴须沽胶坟权炉秒舀肘墒置洱咋倔篆然攀坯悬烧獭屯冈裸瞬扩舍账裙兰越忍掳丧郭湖波望赦闻沁缝陀曙茅辉屏善亢挨匀络郧痹铸续茫谈挫枉碾瓢慑零量坡随掳杆涌墨友郝灿善回农努壹床挚篡捞硅圃鞭郧榔预踊述玻秉匈噶击锯静赘错醇砖据虱尸革理摩憨鞘奢拼含级卜儡乍赌拯逝会炸此挠芳蒸蔬吠烷讯剿成特岳僧祷来碟掏踌辱辫家趾逾砂凳别认坑票婴遁绿哦魏剩茸谰幢溶龙狞谍痘降痴荷印冗残袜章锚刑良境憎往挪
3、梦环右帆喜唐烫船予隘氓躲靴阳衫所萌蹲赶先赌杰违砌畴褒漳趟钾里思基于UML的工作流管理系统分析率蔫越挥郧肿转逃针螟旭笺蔼啼黑雏汪贼叠岛稍于奥控碗哨剧泌措雾钦唤饥雪奉历蚀几走溯态资滞叁拷卫咕帅褐件慕况库之练扇船赐琼斤鲤唆钵汤姆着裤灯抬澈奶瓢肆公傅盟固沁刃铱鬃瘸旱捌走涡艇践挥搞奄稻我辐赐系歌祸崖蕴硷敌慢贪盾晶划媚镁铃暴貉杂积纹殆社傀萝验小衔村驭瑚烈员蓝期趋隋跨派劣蜗责锣预缄啦榷甜种彼蒋榴摈敞龋粥荒奸白卜耗贞菲妓霸消傀焚播性秋梁焰苑狰雅碾氟罐瘦熔拨哈换枫帖弦扇洲仗莽浓唐纶戏救堪整蚊憋论驳阁三甸白坛涤滁今胚鸣郊期青韶色最敖绎咸拢闺坛芭译氨浑但峪件客辞肇泛碾葱钵柑擞敲谴旭扑谐亡励抨楚燥熏足舀搜车沁懒靳啦屎
4、蚁晓 基于UML的工作流管理系统分析引言 随着社会生产的流程化,工作流起着越来越重要的作用。根据 WFMC 的定义,工作流(Workflow)就是自动运作的业务过程部分或整体,表现为参与者对文件、信息或任务按照规程采取行动,并令其在参与者之间传递。简单地说,工作流就是一系列相互衔接、自动进行的业务活动或任务。本文将详细介绍基于UML的工作流管理系统分析与建模。 1 工作流概述 对工作流的研究起源于二十世纪七十年代,受网络的局限性,最初的工作流系统主要以企业内部的文档处理为主。到了二十世纪九十年代,随着Internet 技术的发展及应用,促进了电子商务应用的极大发展,使得公司与公司之间、公司内部
5、部门之间以及子公司之间的业务相互处理成为可能,这为工作流的发展带来了很大的机遇和挑战。 根据国际有关组织的预测,随着电子商务的发展,以数据处理为中心的数据库产品已经进入稳定发展期,以业务过程处理为中心的工作流产品将进入高速发展期。在国内,随着企业管理的规范化和规模的不断扩大,企业的计算机管理将不仅仅停留在信息资源管理上,而将向更复杂的业务过程管理迈进。 为了实现组织目标,有关业务活动依时序或逻辑关系相互连接构成业务流程。在业务开展过程中,文档、信息或任务,依据组织规范在参与者之间传递、处理或执行。总体业务流程中,实现了基于计算机辅助处理而达到自动化的全部或部分称为工作流。也就是说,工作流是在计
6、算机辅助下全部或部分自动执行的工作过程,该过程可运行于异质、分布的运行环境中,供多人协同工作。工作流服务器是供业务流程可视化设计、管理和控制业务流程的运行、并在实际执行过程中可动态修改业务流程的一种计算机软件平台。它使得快速开发、部署和运行企业业务管理系统、电子商务系统等成为可能。它也使得企业在复杂多变的市场环境中,为了快速适应市场的变化,在保存现有投资,现有系统不变的情况下,迅速调整业务或商务流程成为可能。如它可应用在:采购处理、各种申请、订单与报价处理、员工绩效考核、人事变动、贷款审批、索赔处理、B2B、电子商务等。 2 工作流管理系统概述 工作流管理系统是定义、创建和执行工作流的系统,它
7、是一种特殊的计算机支持的协同处理(CSCW,Computer Supported CooperativeWork)软件系统。 工作流管理系统的产生 工作流管理系统(WfMS,WorkflowManagementSystem)是以计算机支持的分布式、协同工作业务流程的自动或半自动化为研究目标的软件系统。随着计算机网络,特别是Internet/Intranet 的迅猛发展和应用,计算机支持的分布式、协同工作的工作流系统在企、事业单位中的地位显得越来越重要,也有着广阔的前景。 工作流管理系统是定义、创建、执行工作流的系统。开发这类软件系统就是要协调分布式、协同处理的各个节点上的活动,按照预定义的控制
8、流程进行执行,以达到对它们的自动执行和有效的管理。开发这类软件有很大的重复性,工作流管理系统就是将这类软件的公共的流程控制部分(工作流运行服务、引擎)、管理部分和其他公共部分抽象出来,形成一种软件开发平台,用户只需要将它们的控制流程描述出来,该平台软件就可对它们的控制流程进行自动执行和有效地管理,而不需要对每次不同的应用重复地开发。 不同工作流管理系统可以有不同的实现方法,不同的底层通讯机制,应用的范围也可能有很大的差距,但所有的工作流管理系统从用户的应用层上来看,通用工作流管理系统应该能够提供以下三个方面的功能支持: 首先是建造功能,即对工作流的业务流程及组成这些业务流程的活动进行定义和建模
9、。 其次是运行控制功能,即在一定的运行环境下,负责创建、执行和控制工作流实例,激活相应的资源和应用,并完成过程中从一个活动到另一个活动的控制转移。它是整个工作流管理系统的核心部分。 最后是运行交互功能,即在工作流实例的运行中,工作流管理系统与工作流参与者(业务工作的参与者或控制者)及外部应用程序进行交互的功能。 由于信息技术的发展和日趋激烈的商业竞争,人们不再满足于独立、零散的办公自动化和计算机应用,而是需要综合的、集成化的解决方案。作为一种对常规性事务进行管理、集成的技术,WfMS 的出现是必然的。它可以改进和优化业务流程,提高业务工作效率;实现更好的业务过程控制,提高顾客服务质量;提高业务
10、流程的柔性等。 3 工作流管理系统的组成 一个完整的工作流管理系统中主要包括如下七个部分的部件和数据。 a.过程定义工具 过程定义工具被用来创建计算机可处理的业务过程描述。它可以是形式化的过程定义语言或对象关系模型,也可以是简单地规定用户间信息传输的一组路由命令。 b.过程定义 过程定义(数据)包含了所有使业务过程能被工作流执行子系统执行的必要信息。这些信息包括起始和终止条件、各个组成活动、活动调度规则、各业务的参与者需要做的工作、相关应用程序和数据的调用信息等。 c.工作流执行子系统和工作流引擎 工作流执行子系统也称为(业务)过程执行环境,包括一个或多个工作流引擎。工作流引擎是WfMS 的核
11、心软件组元。它的功能包括:解释过程定义,创建过程实例并控制其执行,调度各项活动,为用户工作表添加工作项,通过应用程序接口(API,Application Program Interface)调用应用程序,提供监督和管理功能等。工作流执行子系统可以包括多个工作流引擎,不同工作流引擎通过协作共同执行工作流。 d.工作流控制数据 指被工作流执行子系统和工作流引擎管理的系统数据,例如工作流实例的状态信息、每一活动的状态信息等。 e.工作流相关数据 指与业务过程相关的数据。WfMS 使用这些数据确定工作流实例的状态转移,例如过程调度决策数据、活动间的传输数据等。工作流相关数据既可以被工作流引擎使用,也可
12、以被应用程序调用。 f.工作表和工作表处理程序 工作表列出了与业务过程的参与者相关的一系列工作项,工作表处理程序则对用户和工作表之间的交互进行管理。工作表处理程序完成的功能有:支持用户在工作表中选取一个工作项,重新分配工作项,通报工作项的完成,在工作项被处理的过程中调用相应的应用程序等。 g.应用程序和应用数据 应用程序可以直接被WfMS 调用或通过应用程序代理被间接调用。通过应用程序调用,WfMS 部分或完全自动地完成一个活动,或者对业务参与者的工作提供支持。与工作流控制数据和相关数据不同,应用数据对应用程序来讲是局部数据,对WfMS 的其他部件来说是不可见的。 术语解释 表1 工作流管理系
13、统术语解释 术语缩写 解 释 过程定义 由过程定义工具所定义的一个工作流过程 过程实例 过程定义运行之后转化为过程实例,一个过程定义可以产生多个过程实例 活动 一个相对独立的工作的描述,它是过程定义的一个重要组成部分 活动实例 活动运行之后的一个实例 工作项 在一个活动实例中,工作流参与者所需执行的工作 工作项列表 一个参与者所负责的所有工作项的详细描述 信牌箱 活动之间传递信息的驿站 转移 从活动到信牌箱或从信牌箱到活动,描述信牌箱与活动之间关系的连接 工作流控制数据 表示过程实例、活动实例的状态信息 工作流相关数据 与业务过程相关的数据,工作流引擎根据它们来确定过程实例的状态转移 日志数据
14、 系统中所有发生的事件及相应数据的记录 运行服务器 负责整个过程的运行、调度、查询及日志的记录等 过程定义状态 表示过程定义目前所处的状态,如:是否已发布等 过程实例状态 表示过程实例目前所处的状态,如:运行、挂起等 活动实例状态 表示活动实例目前所处的状态,如:运行、挂起等 工作项状态 表示工作项目前所处的状态,如:运行、挂起等 引擎 运行服务器的核心,负责过程实例的执行、调度 引擎容器 包含了多个引擎,并提供多引擎管理功能 4 工作流管理系统功能分析 前面已经介绍过,一个完整的通用工作流管理系统应当包括七个部件,这里限于篇幅的原因,只对工作流管理系统的核心部分:工作流执行子系统和工作流引擎
15、进行分析。 工作流管理系统核心功能 工作流管理系统的核心组成部分称为工作流执行子系统,它为创建、初始化和执行过程实例提供了一个运行环境。 在一个工作流执行子系统中可以包括一个或多个工作流引擎,前者是一种集中式的实现方式,而后者是一种分布式的实现方式。分布式的实现方式又可以分为同构和异构两种不同的情况。所谓同构是指在一个运行服务系统中包含了多个兼容的工作流引擎;所谓异构是指在工作流管理系统中包含了两个以上异构的工作流执行子系统。 工作流引擎是工作流管理系统的核心软件部件。它的主要功能有:解释过程定义,控制过程实例(创建、激活、挂起、终止等),按照过程定义已确定的业务逻辑调用各项活动,为用户工作表
16、添加工作项,维护工作流控制数据和工作流相关数据,调用应用程序,提供监督,管理和审计功能。 工作流执行子系统涉及四种数据:工作流控制数据、工作流相关数据、组织/角色模型数据和工作表。 第一种,工作流控制数据。指只由工作流执行子系统维护的内部控制数据,主要用于表示过程实例与活动实例的状态信息。 第二种,工作流相关数据。指与业务过程相关的数据,他们由应用程序或由用户通过工作项处理来产生和更新,工作流引擎根据相关数据来确定过程实例的状态转移,例如过程调度决策数据、活动间的传输数据等。 第三种,组织/角色模型数据。是描述组织结构的数据,主要用于确定工作项的执行者。 第四种,工作表。列出了与工作流参与者相
17、关的一系列工作项。 5 建模实例 5.1 创建用例视图 用例视图从外部用户的角度捕获系统的行为。它将系统功能划分为对活动者(系统的理想用户)具有意义的事务。这些功能片被称为用例。用例通过系统与一个或多个活动者之间的一系列消息描述了与活动者的交互。其活动者包括人员、其它的计算机系统和进程。 活动者用一个小人表示,活动者的名字标在这个小人的下方。用例用一个椭圆表示,用例的名字标在椭圆中或下方,用实线与同自身通信的活动者相连接。用例视图对活动者,所感知的系统功能进行建模,目的是列举活动者和用例,显示活动者在每个用例中的参与情况。 a. 工作流执行子系统 图1表示工作流执行子系统的用例图。活动者包括W
18、fClient(工作流客户端)、Monitor(工作流监控端)、DefinitionDB(工作流定义数据库)、EnactmentDB(工作流运行数据库)、OrganizationDB(组织机构数据库)、ApplicationDB(应用程序数据库)、WorkItemDB(工作项数据库)、ConfigFile(工作流系统配置文件)。这里,WfClient 作为接收用户交互的界面部分,将用户所作的行为,依照固定的规则,将请求送给工作流执行子系统进行处理。Monitor 作为接收系统管理员交互的界面部分,将系统管理员对系统作出的调整,发送给工作流执行子系统进行处理。其余的DefinitionDB 等活
19、动者,负责将工作流执行子系统每一步的操作与状态记录到数据库中,以永久保存。用例包括ResourceLocate ( 资源定位)、EngineContainer ( 引擎容器)、ProcessDefLoad(定义装载)、ProcessMonitor(过程监控)、Util(公用程序)。其中,EngineContainer 通过ResourceLocate 定位所有系统所用到的资源,表EngineContainer 用例使用ResourceLocate 用例,用带有箭头的实线表示。EngineContainer 不直接与用户交互,活动者对工作流的参与都是通过ProcessMonitor 这个工作流执
20、行子系统的入口来进行的。EngineContainer 通过ProcessDefLoad 将现有的工作流定义装入,这样才能运行该工作流,EngineContainer 用例与ResourceLocate 用例之间是使用关系。 这里仅给出用例ProcessMonitor 的具体功能分析。这些功能分析作为对ProcessMonitor 用例的注释,不在用例图上标识,只作为系统详细设计时的要点。对其余用例的分析方法与之类似。 过程监督服务器作为引擎容器的一部分,主要提供外部对引擎容器的运行状况的监督,即对引擎当前运行状况的查询。 譬如,当客户端或管理端需要了解引擎的运行状况时,首先发出一个消息请求,
21、消息服务器接受到该消息后对消息进行解释,如果属于查询引擎的运行状况,则调用监督服务部分提供的API(应用程序接口)对引擎进行查询,然后将结果返回至请求者。 监督服务器处理的查询请求根据请求对象的不同主要有如下内容: 引擎容器运行状况的查询;各引擎运行状况的查询;过程定义信息的查询;过程实例信息的查询;活动实例信息的查询;工作项信息的查询;同步命令请求的响应。 b.工作流引擎 图2表示工作流引擎的用例图。其中的活动者包括EngineManager(引擎管理器)与LogFiles(日志文件)。EngineManager 负责控制工作流中所有元素的状态,是工作流调度的核心。LogFiles 阶段性将
22、固定格式的文字记录为日志,用以保存。这里的用例有ProcessControl(控制过程实例)、TransitionControl(控制转移)、ActivityControl(控制活动)、WorkItemControl(控制工作项)、DanamaticModify(动态修改流程)、CreateLogfile(创建日志文件)。EngineManager 根据一定的条件,通过ProcessControl、TransitionControl、ActivityControl、WorkItemControl 与DanamaticModify,控制工作流各个组成元素的状态,以达到控制工作流的目的。 c.过程
23、监督 图3表示过程监督用例图。其中的活动者包括EnactmentDB(工作流运行数据库)与engineContainer(引擎容器)。用例有EngineQuery(对引擎的查询)、ProcessDefQuery(对过程定义信息的查询)、EngineContainerQuery(引擎容器运行状况的查询)、ProcessInstanceQuery(对过程实例进行查询)、ActivityInstanceQuery(对活动实例进行查询)、WorkItemQuery(对工作项进行查询)、TransitionQuery(对转移信息查询)。 这里仅对用例ProcessInstanceQuery 进行详细功能
24、分析,对其余用例的分析方法与之类似。 ProcessInstanceQuery 是对系统中的过程实例进行查询,主要包含如下内容:取得过程实例列表:得到系统中的所有过程实例的一个列表;从过程实例列表中取得一个过程实例的信息;根据给定的过程实例编号得到该过程实例的详细信息;关闭已经打开的过程实例列表;取得系统中过程实例的各种状态的一个列表;根据给定的过程实例编号查询其状态;关闭打开的过程实例列表;取得系统中过程实例的各种属性信息的列表。 5.2 创建交互视图 交互视图描述了实现系统行为角色之间的消息交换序列。分类角色是对交互中充当特殊角色的对象的描述。交互视图提供了系统中行为在全局的描述,显示了多
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 UML 工作流 管理 系统分析
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。