当前位置: 首页 > 专利查询>微软公司专利>正文

用于设计工作流的可扩展框架制造技术

技术编号:2839745 阅读:203 留言:0更新日期:2012-04-11 18:40
一种用于构建组件化的工作流模型的用户界面。工作流的每一步骤被建模为具有元数据的活动,该元数据描述该工作流步骤的设计时方面、编译时方面以及运行时方面。用户通过该用户界面选择并安排活动来创建工作流。收集与工作流中每一活动相关联的元数据来创建工作流的持久表示。用户通过创作自定义活动来扩展工作流模型。

【技术实现步骤摘要】

本申请的实施例涉及工作流建模领域。更为具体地,本专利技术的实施例涉及组件化和可扩展工作流模型。
技术介绍
现有系统试图通过对商业问题建模而将商业问题映射到高级工作流。然而,真实世界的工作流在各方面都有所不同,这些方面诸如(a)执行和建模的复杂性、(b)设计时对工作流的结构的知识、(c)静态定义或特别/动态、(d)在其生命周期中各点创作和编辑该工作流的简易性、以及(e)与核心工作流过程的弱或强商业逻辑关联。现有模型无法容纳所有这些因素。此外,大多数现有工作流模型是以基于语言的方法(例如,BPEL4WS、XLANG/S和WSFL)或基于应用程序的方法为基础的。基于语言的方法是具有一闭合的预定义构造集的高级工作流语言,它帮助向用户/程序员建模该工作流过程。工作流语言载有供该闭合构造集使用的所有语义信息,以使用户能够构建工作流模型。然而,语言无法由开发者来扩展,且表示构成该工作流模型的闭合的原语集。语言被绑定到由工作流系统销售商发货的语言编译器。仅该工作流系统产品销售商可通过在该产品的未来版本中用一新的构造集扩展该语言来扩展该模型。这通常要求升级与该语言相关联的编译器。基于应用程序的方法是这样一种应用程序,它在该应用程序内具有工作流能力以解决领域专用问题。这些应用程序不是真正可扩展的,也没有可编程模型。采用现有方法,复杂性、预知、动态工作流、创作简易性以及与商业逻辑和核心工作流的关联强度等问题未被充分地解决。没有可扩展、可定制以及可重新主宿工作流设计器框架可用于构建可视工作流设计器来对不同的工作流类别建模。现有系统缺乏一种快速应用程序开发(RAD)风格工作流设计体验,它允许用户图形地设计工作流过程,并以开发者选择的编程语言来关联商业逻辑。另外,没有启用了墨迹的工作流设计器。另外,现有系统无法提供用于执行工作流的无缝特别或动态编辑。工作流过程在本质上是动态且移动的,且其形式不能在设计时完全预见。该工作流过程以结构化方式起始,并最终在其执行生命周期过程中发展和改变。需要一种允许工作流构建者能够在设计时创作各种类型的工作流模型,以及以无缝的方式对运行的工作流做出特别或动态改变的工作流创作框架。即使在部署了工作流过程之后且该工作流过程正在运行,商业需求的变化通常迫使改变或编辑当前运行的工作流过程。需要一种提供工作流过程的运行时创作的系统。另外,工作流过程处理跨越工作流过程模型的多个步骤的横切的、互不相关且紊乱的问题。例如,尽管工作流过程的各部分被设计成参与长期运行的事务,然而同一过程的其它部分被设计成用于并发执行。同一工作流过程的另外一些部分要求跟踪,而其它部分处理商业或应用程序级例外。需要向工作流过程的一个或多个部分应用特定的行为。某些工作流建模方法是不实用的,因为它们需要整个商业过程的基于流的完整描述,包括所有例外以及人类干预。这些方法中的一些提供了当出现例外时的附加功能,而其它方法独占地采用基于约束的方法而非基于流的方法来对商业过程建模。现有系统实现基于流或基于约束的方法中的任一种。这些系统该不灵活,以致于无法对许多常见商业情况进行建模。因此,需要一种组件化且可扩展的工作流模型来解决这些和其它缺点的一个或多个。
技术实现思路
本专利技术的实施例提供了一种用于构建组件化工作流模型的可扩展框架。具体地,工作流过程中的每一步骤具有描述工作流步骤的设计时方面、编译时方面以及运行时方面的相关联组件模型。此外,任何开发者可通过创作这些组件来扩展核心工作流模型。本专利技术包括一工作流引擎,它足够灵活和强大来协调各种工作流的执行,包括高度形式的机器到机器过程、基于约束的特别人类工作流、以及具有基于流和基于约束的方法的混合的工作流。该工作流引擎准许对执行工作流的激活、执行、查询和控制能力。例如,本专利技术准许对执行工作流的特别和动态改变。该工作流引擎可以在包括服务器和客户机环境两者的各种宿主环境中重新主宿或嵌入。每一特定宿主环境将工作流引擎与一组服务提供者相结合。服务提供者的总能力确定了可在该特定宿主环境中执行的工作流的种类。本专利技术的其它实施例提供了一种用于序列化工作流模型的声明性格式,诸如可扩展配合(orchestration)标记语言(XOML)。该声明性格式使用户能够通过编写一组组件来扩展工作流模型。对应于工作流过程的各步骤的语义被封装在活动确认器组件中,该组件在编译时确认并实施给定组件的语义。本专利技术的声明性格式的实施例还能够进行数据声明以及与工作流模型的各元素的数据相关。该声明性格式支持数据通过工作流的变换。例如,该格式声明性地表示外部数据源,如数据库或文件、代码片断以及工作流模型内的商业规则。本专利技术的一个实施例提供了一种构建图形/可视工作流设计器的可扩展、可定址以及可重新主宿的工作流设计器框架,以对不同类别的工作流建模。本专利技术的另一实施例支持快速应用程序开发风格的工作流设计体验,以允许用户图形地设计工作流过程,并以任何编程语言来关联商业逻辑。本专利技术的实施例也使用笔和图形输入板技术提供了墨迹支持。本专利技术提供了一种自由形式的绘图表面,其中,由用户绘制的工作流被转移到内部表示。本专利技术支持通过在现有绘图表面上的墨迹编辑(例如,添加/删除活动)以及现有工作流的墨迹注释(例如,书写表面上的注解、建议或提醒等手绘物)对工作流的创建和修改。本专利技术的其它一些实施例提供了用于以声明性方式捕捉横切行为并将行为应用于工作流模型的选中部分的组件。本专利技术的其它实施例在与其相关联的行为的上下文中执行工作流模型的选中部分。本专利技术的实施例提供了处理工作流模型的多个步骤的横切的、互不相关且紊乱的问题的框架、可重新使用组件和语言。根据本专利技术的一个方面,一种方法在具有显示器和用户界面选择设备的计算机系统中对工作流建模。该工作流包括活动,并且,该工作流程对商业过程建模。该方法包括在显示器上显示多个活动。该方法也包括经由用户界面选择设备从用户接收对活动的选择。该方法也包括在显示器上显示所接收的活动选择。该方法也包括经由用户界面选择设备从用户接收结构信息。该方法也包括根据所接收的结构信息在显示器上排列所显示的活动选择,以创建工作流。根据本专利技术的另一方面,一个或多个计算机可读介质具有用于在具有显示器和用户界面选择设备的计算机系统中对工作流建模的计算机可执行组件。该工作流包括活动,并且该工作流对商业过程建模。组件包括用于在显示器上显示多个活动的呈现组件。组件也包括用于经由用户界面选择设备从用户接收对由呈现组件显示的活动的选择的接口组件。呈现组件还在显示器上显示接口组件所接收的活动选择。接口组件还经由用户界面选择设备来从用户接收结构信息。组件也包括用于根据所接收的结构信息在显示器上排列活动选择,以创建工作流的设计器组件。根据本专利技术的又一方面,一种系统对工作流建模。该工作流包括活动,并且该工作流对商业过程建模。系统包括用于存储多个活动的存储区域。该系统也包括用于显示存储在存储区域内的多个活动的显示区域。该系统也包括被配置成执行计算机可执行指令的处理器,这些计算机可执行指令用于从用户接收对活动的选择、在显示区域内显示所接收的活动选择、从用户接收结构信息、以及根据所接收的结构信息在显示区域内排列所显示的活动选择,以创建工作流。作为选择,本专利技术可以包括各种其它方法和装置。其它特点本文档来自技高网
...

【技术保护点】
一种用于对工作流建模的系统,所述工作流包括活动(430),所述工作流对商业过程建模,所述系统包括:存储区域(428),用于存储多项活动(430);显示区域(404),用于显示被存储在所述存储区域(428)内的多项活动(430);处理器(408),它被配置成执行计算机可执行指令,用于:从用户(402)接收对活动(430)的选择;在所述显示区域(404)内显示所接收的活动(430)的选择;从用户(402)那里接收结构信息;以及根据所接收的结构信息在所述显示区域(404)内排列所显示的活动(430)的选择,以创建工作流。

【技术特征摘要】
US 2004-10-1 60/615,549;US 2005-1-31 11/046,967;US1.一种用于对工作流建模的系统,所述工作流包括活动(430),所述工作流对商业过程建模,所述系统包括存储区域(428),用于存储多项活动(430);显示区域(404),用于显示被存储在所述存储区域(428)内的多项活动(430);处理器(408),它被配置成执行计算机可执行指令,用于从用户(402)接收对活动(430)的选择;在所述显示区域(404)内显示所接收的活动(430)的选择;从用户(402)那里接收结构信息;以及根据所接收的结构信息在所述显示区域(404)内排列所显示的活动(430)的选择,以创建工作流。2.如权利要求1所述的系统,其特征在于,还包括定点设备,并且其中,所述存储区域(428)存储被排列来创建工作流的多个图形元素(432),所述多个图形元素(432)经由所述显示区域(404)和所述定点设备从用户(402)接收),并且,所述存储区域(428)还存储多个选项板元素(434),其每一个对应于所述多项活动(430)中的至少一项。3.如权利要求1-2所述的系统,其特征在于,所述处理器(408)还被配置成执行以下计算机可执行指令将存储在所述存储区域(428)内的图形元素(432)中的每一个映射到所述多个选项板元素(434)之一;根据所映射的选项板元素创建所述工作流;以及,在所述显示区域(404)上显示所述工作流。4.如权利要求1-3所述的系统,其特征在于,它还包括用于以下的一项或多项的装置显示所述多项活动(430)、接收所述活动(430)的选择、从用户(402)接收所述结构信息、以及根据所接收的结构信息来排列所显示的活动(430)的选择以创建工作流。5.如权利要求1-4所述的系统,其特征在于,还包括包含所述显示区域(404)的显示设备(404),并且还包括与所述处理器(408)一起操作的用户界面选择设备(406)。6.如权利要求1-5所述的系统,其特征在于,所述处理器(408)包括用于从用户(402)接收所述多个图形元素(432),并根据其来创建工作流的装置,其中,所述显示区域(404)包括用户界面,其中,所述显示区域(404)适用于在应用程序的执行环境内显示。7.在具有显示器(404)和用户界面选择设备(406)的计算机系统中,一种用于对工作流建模的方法,所述工作流包括活动,所述工作流对商业过程建模,所述计算机化方法包括在所述显示器(404)上显示多项活动;经由所述用户界面选择设备(406)从用户(402)接收对活动(430)的选择;在所述显示器(404)上显示所接收的活动(430)的选择;经由所述用户界面选择设备(406)从用户(402)接收结构信息;以及根据所接收的结构信息在所述显示器(404)上排列所显示的活动(430)的选择,以创建工作流。8.如权利要求7所述的计算机化方法,其特征在于,还包括定义多个选项板元素(434),所定义的多个选项板元素(434)中的每一个对应于所述多项活动(430)中的至少一项。9.如权利要求7-8所述的计算机化方法,其特征在于,还包括经由所述用户界面选择设备(406)从用户(402)接收定制信息,并且根据所接收的定制信息调整所显示的多项活动(430)。10.如权利要求7-9所述的计算机化方法,其特征在于,还包括经由所述用户界面选择设备(406)从用户(402)接收商业逻辑,用于与所述活动(430)之一相关联。11.如权利要求7-10所述的计算机化方法,其特征在于,还包括经由所述用户界面选择设备(406)从用户(402)接收用户定义活动,其中,所述用户定义活动具有与其相关联的一个或...

【专利技术属性】
技术研发人员:DK舒克拉D皮拉瑞诺斯S触AV帕拉斯尼斯M梅达E希斯戴AG班达卡AJ萨加
申请(专利权)人:微软公司
类型:发明
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1