[发明专利]过程中心的程序中的异步故障处理有效
申请号: | 200780012353.1 | 申请日: | 2007-02-21 |
公开(公告)号: | CN101416156A | 公开(公告)日: | 2009-04-22 |
发明(设计)人: | D·舒克拉;B·施米特;M·梅达;N·塔尔伯特;A·J·沙加;K·拉曼 | 申请(专利权)人: | 微软公司 |
主分类号: | G06F9/44 | 分类号: | G06F9/44 |
代理公司: | 上海专利商标事务所有限公司 | 代理人: | 陈 斌 |
地址: | 美国华*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 过程 中心 程序 中的 异步 故障 处理 | ||
背景
面向过程或过程中心的程序已发展成能够处理对现实事件建模的复杂指令。过程中心的程序反映了现实过程并反映了现实实体之间的交互。现有的系统通过对商业问题建模来试图将商业问题映射为高级工作流。然而,现实工作流在各个方面有所不同,诸如(a)执行和建模的复杂性、(b)在设计时对流程的结构的了解、(c)静态定义或自组织/动态的、(d)在其生命周期的各个时间创作和编辑流程的容易程度以及(e)商业逻辑与核心工作流过程之间弱或强的关联。现有的模型不能适应所有这些因素。
此外,大多数现有工作流模型是基于以下中任一的:基于语言的方法(例如,BPEL4WS、XLANG/S以及WSFL)或基于应用程序的方法。基于语言的方法是具有帮助向用户/编程员对工作流过程建模的预定义构造的闭集的高级工作流语言。工作流语言携带允许用户构建工作流模型的构造的闭集的所有语义信息。然而,语言不是可由开发员扩展的,且表示构成工作流模型的原语的闭集。语言被绑定至由工作流系统厂商装运的语言编译器。仅工作流系统产品厂商可通过用产品将来版本中的一组新构造扩展语言来扩展模型。这通常要求升级与该语言相关联的编译器。此外,语言通常不会声明性地展示或定义可由其它程序容易且高效使用的功能或操作。
基于应用程序的方法是在应用程序内具有解决域专用问题的工作流能力的应用程序。这些应用程序不是真正可扩展的,它们也不具有可编程模型。
此外,采用现有的方法,复杂性、预知、动态工作流、创作容易程度以及与业务逻辑和核心工作流的关联的强度的问题未被充分解决。不存在构建可视工作流设计器以对不同类的工作流建模的可用的可扩展、可定制且可重新主宿的工作流设计器框架。现有的系统缺乏快速应用程序开发(RAD)样式的工作流设计体验,该体验允许用户用图形设计工作流过程并用开发员选择的编程语言关联业务逻辑。
而且,工作流过程横跨工作流过程模型多步处理交叉切割互不相关且纠缠的问题。例如,尽管工作流过程的一部分被设计为参与长期运行的事务,而同一过程的其它部分被设计用于并发执行或访问共享资源。由于设计缺陷,现有的系统不能提供执行线程的交错,而线程的交错允许用户设计活动的同步或交错执行。同一工作流过程的另外其它部分要求跟踪,而其它部分处理商业或应用级异常。需要对工作流过程的一个或多个部分应用某些行为。
某些工作流建模方法是不实际的,因为它们要求对整个商业过程包括异常和人类干预在内的完整的基于流的描述。这些方法中的某些在异常发生时提供附加的功能,而其它方法排他地采用基于约束的方法而非基于流的方法来对商业过程建模。现有的系统或者实现基于流的方法或者实现基于约束的方法。这样的系统对于对众多常见的商业情形建模而言太不灵活。这些系统也缺乏异步处理异常或取消的能力。
概述。
本发明的实施例通过在定义工作流中的活动的执行生存周期的状态自动机中具有正发生故障状态来允许异步故障或异常处理。通过具有正发生故障状态,本发明的各方面允许开发员或程序声明性地设计用于异常或故障处理的程序,使得程序或活动的部分可在正发生故障状态中进行故障处理,而程序或活动的其它部分可不受异常或故障事件的影响。
本发明的替换实施例允许传播或传输故障处理的通知。在其它替换实施例中,可抑制或禁止这样的通知传播或传输。此外,另外的实施例响应于来自用户的用于对处理故障后或异常后操作的输入。
提供本概述以便以简化的形式介绍将在以下详细描述中进一步描述的一些概念。该概述不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。
其它特征的一部分将是显而易见的,一部分将在下文中指出。
附图简述
图1是示出现有编程范例的框图。
图2是示出根据本发明的实施例的工作流设计框架的虚拟化的示例性框图。
图3是示出根据本发明的实施例的示例性工作流的示例性示意图。
图4是示出根据本发明的实施例的用于处理工作流活动的系统的示例性计算环境的示意图。
图5是示出根据本发明的实施例的工作流活动的分层结构的示意图。
图6是示出根据本发明的实施例描述活动的执行生存周期的示例性状态自动机的示意图。
图7A到7E是示出根据本发明的实施例对工作流的故障事件异步处理的框图。
图8是示出根据本发明的实施例用于对工作流的活动的故障事件进行异步处理的方法的流程图。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微软公司,未经微软公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200780012353.1/2.html,转载请声明来源钻瓜专利网。