CN100498695C - 工作流进度表创作工具 - Google Patents

工作流进度表创作工具 Download PDF

Info

Publication number
CN100498695C
CN100498695C CNB2005100895135A CN200510089513A CN100498695C CN 100498695 C CN100498695 C CN 100498695C CN B2005100895135 A CNB2005100895135 A CN B2005100895135A CN 200510089513 A CN200510089513 A CN 200510089513A CN 100498695 C CN100498695 C CN 100498695C
Authority
CN
China
Prior art keywords
building block
language document
marking language
workflow
workflow schedule
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CNB2005100895135A
Other languages
English (en)
Other versions
CN1755620A (zh
Inventor
R·J·茂斯瑞
A·马雷科
S·B·科勒德纳
C·W·帕科
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of CN1755620A publication Critical patent/CN1755620A/zh
Application granted granted Critical
Publication of CN100498695C publication Critical patent/CN100498695C/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • G06F40/143Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/103Workflow collaboration or project management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Resources & Organizations (AREA)
  • Strategic Management (AREA)
  • General Engineering & Computer Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Software Systems (AREA)
  • General Business, Economics & Management (AREA)
  • Tourism & Hospitality (AREA)
  • Quality & Reliability (AREA)
  • Operations Research (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)

Abstract

一种工作流进度表创作工具使用户能够通过按特定顺序排列构件块来创作工作流。构件块可对应于事件、条件或动作。每个构件块与定义了当处理该构件块时要采取的动作的源代码相关联。构件块的顺序确定了工作流进度表的过程。构件块允许用户建立关于如何执行工作流进度表中的任务的逻辑条件。在执行某构件块之前,该构件块可要求用户输入参数。工作流进度表与一事件相关联,从而当该事件发生时触发该工作流进度表。构件块简化了工作流进度表创作,因为用户不需要编写任何代码。

Description

工作流进度表创作工具
背景技术
工作流定义了组织内部的一系列任务以产生最终的结果。工作流允许商业过程的形式化和管理。工作组计算应用程序允许为不同类型的作业定义不同的工作流。例如,在出版设置中,文档可自动从作者发送到编者到校对者到制作。在该工作流的每个阶段,一个人或团体负责一项特定任务。一旦该任务完成,工作流软件确保负责下一项任务的个人被通知到,并接收执行该过程的下一阶段所需的数据。
工作流通常由软件工程师创作。应用程序常包括许多以普通场景为目标的预定义工作流。然而,这些预定义工作流不可能满足所有用户的需求。那些不熟悉源代码编写或者那些无权访问与工作流相关联的源代码的人不能创建、定制或编辑预定义工作流。
R.Mohan等人在Computer Science(计算机科学)中的讲稿,Springer-Verlag,纽约,NY,美国,卷2348,2002,第52—66页中的“A State Machine Based Approachfor a Process Driven Development of Web-Applications(基于国家机器的用于网页应用程序的处理驱动开发的途径)”揭示了一种工作流程系统,称之为FlexFlow,其正式地描述了使用国家图表的因特网应用程序。应用程序的不同版本可通过在重写应用程序代码或相关的网页中以最小的努力来可视地编辑其FlexFlow描述而产生。
US5,930,512揭示了一种使用超文本标记语言构建工作流程过程模型的方法和装置。在工作流程模型中,用户使用行为和块的符号画出过程的图表。在构建时间中,在创建模型当中,所述过程以图表画出。所述过程的行为顺次展开并连接。
发明内容
一种工作流进度表创作工具使用户能通过按特定顺序排列构件块来创作工作流。构件块可对应于事件、条件或动作。每个构件块与定义当web应用程序服务器中的工作流执行引擎处理该构件块时要采取的动作的源代码相关联。构件块的顺序确定了工作流进度表的处理。可以为常用动作预定义某些构件块。可定制其它构件块以执行特定功能或提供独特问题的解决方案。构件块简化了工作流进度表的创作,因为用户不需要编写任何代码。
工作流进度表创作工具可排列构件块以创建逻辑条件,从而当条件为真时执行该构件块。工作流进度表创作工具还可排列构件块以创建循环逻辑,从而只要某条件保持为真就执行该构件块。在可以执行构件块前,该构件块可要求用户输入参数。在处理工作流进度表前,服务器可确认工作流进度表以确保正确的操作。工作流进度表在处理期间可向用户要求输入。工作流进度表与某事件相关联,从而当该事件发生时触发工作流进度表。
附图说明
图1示出了根据本发明的示例实施例可使用的计算设备。
图2根据本发明示出了创作工作流进度表的系统的框图。
图3根据本发明示出了创作工作流进度表的示例性用户界面。
图4根据本发明示出了创作工作流进度表的系统的框图。
图5根据本发明示出了创作工作流进度表的系统的框图。
图6是根据本发明示出创作工作流进度表的操作流程图。
图7是根据本发明示出执行工作流进度表的操作流程图。
具体实施方式
如前简述,一种工作流进度表创作工具使用户能够通过按特定顺序排列构件块来创作工作流。构件块可以对应于事件、条件或动作。每个构件块与定义当web应用程序服务器中的工作流执行引擎处理该构件块时要采取的动作的源代码相关联。构件块的顺序确定了工作流进度表的处理。可以为常用动作预定义某些构件块。可定制其它构件块以执行特定功能或提供独特问题的解决方案。构件块简化了工作流进度表的创作,因为用户不需要编写任何代码。在一个实施例中,可以联合构件块使用现有工作流进度表来创建新的工作流进度表。服务器上可用的任何现有工作流进度表被加载到一用户界面上,从而使用户可编辑现有的工作流进度表,或将现有的工作流进度表合并到新的工作流进度表中。
该工作流进度表创作工具可排列构件块以创建逻辑条件,从而当该条件为真时执行该构件块。该工作流进度表创作工具还可排列构件块以创建循环逻辑,从而只要某条件保持为真就执行该构件块。逻辑实现为工作流进度表提供了灵活性和用户化。工作流进度表根据满足了哪个逻辑条件来执行动作。在可以执行构件块前,该构件块可要求用户输入参数。
工作流进度表与某事件相关联,从而当该事件发生时触发工作流进度表。工作流进度表在操作期间可向用户要求输入。工作流进度表的处理可被暂停或延迟,直至从用户接收到所需的输入。当接收到该输入,工作流进度表继续处理。
在处理工作流进度表前,服务器可确认工作流进度表以确保正确的操作。可执行确认来确定已为构件块正确地设置了所有所需的参数。还可执行确认来确定构件块是否被正确地排列。
示例性操作环境
参考图1,用于实现本发明的一个示例系统包括诸如计算设备100等计算设备。计算设备100可被配置成客户机、服务器、移动设备、或与基于网络的协作系统中的数据交互的任何其它计算设备。在最基本的配置中,计算设备100通常包括至少一个处理单元102和系统存储器104。取决于计算设备的确切配置和类型,系统存储器104可以是易失性的(诸如RAM)、非易失性的(诸如ROM、闪存、等等)、或这两者的某种组合。系统存储器104通常包括操作系统105、一个或多个应用程序106,并可包括程序数据107。以下所详述的工作流进度表创作工具108在应用程序106中实现。
计算设备100可具有其它特征或功能。例如,计算设备100还可包括诸如磁盘、光盘或磁带等附加数据存储设备(可移动和/或不可移动的)。此类附加存储在图1中由可移动存储109和不可移动存储110示出。计算机存储介质可包括以存储诸如计算机可读指令、数据结构、程序模块或其它数据等信息的任何方法或技术实现的易失性和非易失性的、可移动和不可移动的介质。系统存储器104、可移动存储109及不可移动存储110都是计算机存储介质的示例。计算机存储介质包括,但不限于,RAM、ROM、EEPROM、闪存或其它存储器技术,CD-ROM、数字多功能盘(DVD)或其它光学存储,磁带盒、磁带、磁盘存储或其它磁存储设备,或任何其它可用于存储期望信息并可由计算设备100访问的介质。任何此类计算机存储介质可以是设备100的一部分。计算设备100还可具有诸如键盘、鼠标、笔、语音输入设备、触摸输入设备等输入设备。还可包括诸如显示器、扬声器、打印机等输出设备。
计算设备100还包括允许设备诸如通过网络与其它计算设备118通信的通信连接116。网络包括局域网和广域网,以及包括但不限于内联网和外联网等的其它大规模网络。通信连接116是通信介质的一个示例。通信介质通常可具体化为诸如载波或其他传输机制等已调制数据信号中的计算机可读指令、数据结构、程序模块、或其它数据,并且包括任何信息传送介质。术语“已调制数据信号”意指以在信号内将信息编码的方式设置或改变其一个或多个特征的信号。作为示例,而非限制,通信介质包括诸如有限网络或直线连接等有线介质,以及诸如声学、RF、红外及其它无线介质等无线介质。如本文中所使用的术语计算机可读介质既包括存储介质也包括通信介质。
工作流讲度表创作工具
图2示出了用于创作基于服务器的过程的系统的框图。该系统包括供开发者访问的客户机200、供用户访问的客户机210、前端服务器220以及后端数据存储230。客户机200、客户机210和后端数据存储230的每一个耦合到前端服务器220。客户机200包括编辑器用户界面202。客户机210包括应用程序212。前端服务器220包括消息队列222、概况224以及工作流执行引擎226。后端数据存储230包括预先存在的动态链接库232、XML模块234以及程序集236。构件块238被耦合到XML模块234。
在一个实施例中,该基于服务器的过程是包括一系列任务的工作流进度表。该工作流进度表由客户机200处的开发者使用编辑器用户界面202来创作。当处理该工作流进度表时,该工作流进度表可以从与客户机210处的应用程序212交互的用户接收输入。对工作流进度表的处理可以被暂停或延迟,直至从客户机210接收到所需的输入。当接收到该输入时,工作流进度表继续处理。
消息队列222跨越服务器220的所有前端传播,以将收到和发出的消息协调到服务器系统中。概况224包括与客户机200、210有关的标识信息,从而可定位特定客户机。工作流执行引擎226管理工作流进度表的执行。例如,工作流执行引擎可通过重新排列步骤序列,或通过将步骤序列改为并行或串行地执行,来管理管理工作流进度表。
预先存在的动态链接库232是可由XML模块234调用的函数,从而并非所有的函数都需要被构造。预先存在的动态链接库232由构件块238抽象(即,通过使用构件块来引用预先存在的动态链接库)。编译XML模块234以形成程序集236。程序集236是执行就绪(execution-ready)的动态链接库。
构件块238是包含工作流动作的XML段。当工作流执行引擎222处理构件块时,即执行与该构件块相关联的动作。工作流进度表是通过按特定顺序排列构件块238来创作的。该顺序确定了工作流进度表的处理。可以为常用动作预定义某些构件块。可定制其它构件块以执行特定功能或提供独特问题的解决方案。构件块238简化了工作流进度表的创作,因为用户不需要编写任何代码。
构件块238允许开发者设立如何执行工作流进度表中的任务的逻辑条件。例如,可以用逻辑连接符(例如,AND(与)、OR(或)、ELSE(否则)等)来排列构件块238,以在工作流进度表中提供分支和/或循环。逻辑实现为工作流进度表提供了灵活性和用户化。例如,逻辑可以使工作流进度表在费用低于某特定数量时将费用报告文档转发给特定的人以供批准,以及在费用超过该数量时将费用报告文档转发给不同的人。
以下列出一个示例工作流进度表:
事件        当文档被上传到“共享文档”时
条件1       如果spec_status=可供查看
动作1       发送电子邮件到用户的产品组
条件2       否则
动作2       将spec_status设置为Pril
当与工作流程序集相关联的事件发生时,对工作流进度表的处理即开始。在一个实施例中,工作流进度表与网页上的某按钮相关联,且当该按钮被激活时,该事件即发生。在另一实施例中,当客户机执行需要于工作流进度表的交互的操作时,该事件发生。例如,工作流进度表可被设计成当文档库中的一文档被更新时生成电子邮件,从而使该文档经由电子邮件被发送给另一用户以供批准。因此,当该文档被更新时,工作流进度表的处理被触发。
工作流进度表根据满足了哪个逻辑条件而执行动作。每个事件、条件以及动作可被表示为一个单独的构件块。因此,通过排列5个构件块即可创作以上所示的工作流进度表,而无需编写任何源代码。
如图3中所示,工作流进度表是在编辑器用户界面300上创建的。编辑器用户界面显示了步骤细节310和步骤列表320。构件块(例如,事件、条件和动作)可使用菜单312来选择。工作流进度表中的每个步骤都被命名(例如,步骤名1、步骤名2等等)。步骤列表320显示了工作流进度表的步骤名。每个步骤都包括在可执行工作流中下一个步骤之前要执行的构件块。被选中的构件块在步骤列表320中列出。
回到图2,在执行一构件块前,该构件块可要求开发者输入参数。例如,开发者可选择“发送电子邮件”构件块。可在编辑器用户界面202生成读作“将内容用电子邮件发送给用户”的句子。“内容”和“用户”加了下划线以通知开发者,那些字段需要更多信息。开发者随即输入所需的信息。开发者可点击内容并随即选择要用电子邮件发送的文件。类似地,开发者可点击用户并随即为该电子邮件消息选择收件人。因此,如果开发者选择称为“我的建议”的文档和名为“Joe”的收件人,该句子被改为“将我的建议用电子邮件发送给Joe”。该工作流随即可被保存并转发给服务器以供编译。
图4示出了用于创作基于服务器的过程的系统的框图。该系统包括耦合到客户机410的服务器400。服务器400包括图2所示的前端服务器和后端数据存储。服务器400还可包括多个前端服务器和后端数据存储。客户机410包括本地存储412、编辑器414、XML文件416以及预确认模块418。
当将构件块从服务器400下载到客户机410时,对工作流进度表的创作开始。构件块被存储在本地存储412中。开发者使用编辑器414来创作工作流进度表。在一个实施例中,编辑器414是诸如参考图3所描述的用户界面等的用户界面。
开发者使用构件块和条件逻辑来生成工作流。在一个实施例中,可联合构架块使用现有工作流进度表,来创建新的工作流进度表。服务器400上任何可用的现有工作流进度表被加载到客户机410上,从而使用户可编辑现有工作流进度表,或将现有工作流进度表合并到新的工作流进度表中。在创作工作流进度表之后,开发者可保存该工作流进度表。被保存的工作流进度表随即可被转换为XML文件416。
XML文件416被加载到预确认模块418,以检查构件块的句法和语义中的错误。预确认模块418可检查XML文件416,以确定已为构件块正确地设置了所有所需的参数。预确认模块418还可确定构件块是否被正确地排列。在编辑器414处向开发者通知任何句法或语义错误。开发者随即可纠正工作流进度表。服务器400编译XML文件416,以确定工作流进度表正确地工作。服务器400通过生成和发送错误报告或确认来向客户机410通知编译结果。
图5示出了用于创作基于服务器的过程的系统的框图。该系统包括耦合到服务器510的客户机500。服务器510包括数据存储515和前端520、530、540。消息队列522、532、542跨越所有前端520、530、540传播,以将收到和发送的消息协调到服务器系统中。
客户机500请求运行工作流进度表,并被带到特定前端(例如,520)。前端520从数据存储515加载与所请求的工作流进度表相关联的程序集。随即启动该工作流进度表的执行。工作流进度表中的一个步骤可要求来自客户机500的输入参数。当等待该输入参数时,可延迟工作流进度表的处理。该延迟可导致当用户输入该输入参数时,呈现一不同的前端(例如,530)。因此,可以在一个前端上启动工作流进度表,而在一不同的前端上继续。前端530加载与当前工作流进度表相关联的程序集,从而使工作流进度表的处理可以在前端530上继续。
可以在服务器510上修改工作流进度表。在一个实施例中,当工作流进度表正在处理中时,可以修改该工作流进度表。处理中的工作流进度表被锁定,从而当处理完成时不能再次对其进行处理。该工作流进度表随即以新的名字(例如,workflow.dll.mod)被存储在数据存储515中。修改后的工作流进度表被链接到原始工作流进度表,从而使对该工作流进度表的修改前版本的任何调用被路由到该工作流进度表的修改后的版本。
本发明的工作流进度表创作工具与通过其它方法创作的工作流进度表是兼容的。尽可能多地导入并保存工作流进度表。工作流进度表中工作流执行引擎所理解的部分被处理。工作流进度表中工作流执行引擎不能理解的部分用工作流进度表不能被工作流进度表创作工具完全理解的指示符来呈现。
图6是示出了用于创作工作流进度表的过程的操作流程图。该过程开始于开始框,其中用于创作工作流进度表的构件块和现有的工作流进度表在服务器上可用。移到框600,开发者请求从客户机上的用户界面创作工作流进度表。
前进至框610,工作流进度表创作工具被实例化。服务器将可用的工作流进度表和构件块加载到客户机上。每个构件块的功能在与该构件块相关联的源代码中定义。当处理该构件块时,即执行该功能。可预定义构件块以执行公用功能。或者,可定制构件块来解决特定用户需求。
继续到框620,按特定顺序排列构件块。构件块的顺序确定了执行工作流进度表的过程。在一个实施例中,可将构件块排列成包括用于执行工作流进度表的逻辑条件,从而使构件块不按顺序地执行。在另一实施例中,可以编辑现有工作流进度表,或将其与其它工作流进度表和/或构件块一起排列,以创建新的工作流进度表。
前进至框630,将工作流进度表与一事件相关联。当该事件发生时,工作流即开始处理。在一个实施例中,事件可以是网页上按钮的激活。在另一实施例中,事件可以是用户与该工作流进度表的交互。
转移到框640,用户为构件块输入参数。参数允许用户定制构件块。参数的例子包括文件名、电子邮件地址以及统一资源定位器。
前进至框650,从用构件块和预先存在的工作流进度表创建的工作流进度表生成XML文档。该XML文档包括与该工作流进度表相关联的源代码。
继续到框660,对该XML文件进行确认。确认确定用户已经为构件块输入所有必需的参数,以及构件块被正确地排序。如果构件块的内容或排列无效,则提示用户解决该错误。移到框670,该XML文档被编译为程序集。程序集是执行就绪的动态链接库。经确认和编译的程序集在服务器的前端上可用。处理随即在结束框终止。
图7是示出用于执行工作流进度表的过程的操作流程图。该过程在开始框开始,其中经确认的工作流进度表在服务器上可用。
移到框700,发生触发工作流进度表的执行的事件。继续到判定框710,判定该程序集是否在服务器的前端上可用。该程序集在前端上可能不可用,因为如上所述,该工作流进度表可能在一个前端上启动而在另一个前端上继续。如果该程序集在服务器的前端上不可用,处理移到框720,该XML文档被编译成程序集。
前进至框730,对应于所触发的工作流进度表的程序集被加载到服务器上的工作流执行引擎。继续到框740,工作流引擎开始执行该工作流进度表。
转移到判定框750,判定是否接收到该工作流进度表的新版本。工作流进度表的新版本可以是当前工作流进度表的修改后的版本。如果未接收到该工作流进度表的新版本,处理移到结束框并终止。如果接收到了该工作流进度表的新版本,则处理移到框760,其中新的工作流进度表被存储。
移到框770,对当前工作流进度表版本的处理被锁定。被锁定的工作流进度表在处理完成后不被执行。继续到框780,工作流执行请求被路由到工作流进度表的新版本。处理随即在结束框终止。
以上的说明书、示例和数据提供了本发明的组成部分的制造与使用的完整描述。因为可作出本发明的许多实施例而不会偏离本发明的范畴,因此本发明驻留在所附的权利要求书中。

Claims (20)

1.一种提供用于创作基于服务器的过程的工具的计算机实现的方法,包括:
响应于生成所述基于服务器的过程的请求,实例化所述工具;
在所述工具内提供构件块,以供在所述基于服务器的过程中启动所选中的动作,其中所述构件块按一选定的顺序排列;
根据所选定的构件块的顺序生成一标记语言文档;以及
将所述标记语言文档提供给服务器执行,
还包括:
验证所述标记语言文档以确定所述所述标记语言文档的正确操作;
将所述标记语言文档编译为程序集。
2.如权利要求1所述的计算机实现的方法,其特征在于,还包括根据选定的条件添加逻辑以操纵所述构件块。
3.如权利要求1所述的计算机实现的方法,其特征在于,还包括将所述标记语言文档用于客户机,其中,整个标记语言文档用于所述客户机的同一前端。
4.如权利要求1所述的计算机实现的方法,其特征在于,还包括:
当所述程序集在所述客户机的当前前端上不可用时,将所述标记语言文档重新编译为程序集;以及
将所述重新编译的标记语言文档用于所述客户机的当前前端。
5.如权利要求1所述的计算机实现的方法,其特征在于,所述构件块包括其它基于服务器的过程。
6.如权利要求1所述的计算机实现的方法,其特征在于,还包括将所述标记语言文档与事件相关联,其中,当所述事件发生时即执行所述标记语言文档。
7.如权利要求1所述的计算机实现的方法,其特征在于,所述基于服务器的过程是工作流进度表。
8.如权利要求1所述的计算机实现的方法,其特征在于,所述构件块定义了选中的动作。
9.如权利要求1所述的计算机实现的方法,其特征在于,还包括为所述构件块接收输入参数。
10.如权利要求1所述的计算机实现的方法,其特征在于,还包括:
执行所述标记语言文档;以及
中断执行直至接收到所需的参数。
11.如权利要求1所述的计算机实现的方法,其特征在于,还包括:
执行所述标记语言文档;以及
在执行期间修改所述标记语言文档。
12.一种提供用于创作工作流进度表的工具的系统,包括耦合到客户机的服务器,所述服务器被安排成:
响应于生成所述工作流进度表的请求,实例化所述的工具;
在所述工具内提供构件块,以供在所述工作流进度表内实例化选中的动作,其中所述构件块按选定的顺序排列;
根据所选定的构件块顺序生成一标记语言文档;以及
提供所述标记语言文档以供执行,
其中,确认所述标记语言文档以确定所述标记语言文档的正确操作;以及
将所述标记语言文档编译为程序集。
13.如权利要求12所述的系统,其特征在于,所述构件块定义了所选中的动作。
14.如权利要求12所述的系统,其特征在于,所选中的顺序是根据选定的条件使用逻辑以操纵所述构件块来确定的。
15.如权利要求12所述的系统,其特征在于,所述标记语言文档与一事件相关联,并且其中,当所述事件发生时即执行所述标记语言文档。
16.如权利要求12所述的系统,其特征在于,所述构件块被安排成接收输入参数。
17.如权利要求12所述的系统,其特征在于,当所述标记语言文档正在执行时修改所述标记语言文档。
18.一种提供用于创作工作流进度表的工具的计算机系统,其特征在于,包括:
用于响应于生成所述工作流进度表的请求,实例化所述工具的装置;
用于在所述工具内提供构件块的装置,以供在所述工作流进度表内实例化选中的动作,其中所述构件块按选定的顺序排列,并定义了所选定的动作;
用于根据所选定的构件块顺序生成一标记语言文档的装置;以及
用于向服务器提供所述标记语言文档以供执行的装置;
进一步包括:用于将所述标记语言文档编译为程序集的装置。
19.如权利要求18所述的计算机系统,其特征在于,还包括用于根据选定动作添加逻辑以操纵所述构件块的装置。
20.如权利要求18所述的计算机系统,其特征在于,还包括用于将所述标记语言文档与一事件相关联的装置,其中,当所述事件发生时即执行所述标记语言文档。
CNB2005100895135A 2004-09-30 2005-07-28 工作流进度表创作工具 Active CN100498695C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/955,659 US8332809B2 (en) 2004-09-30 2004-09-30 Workflow schedule authoring tool
US10/955,659 2004-09-30

Publications (2)

Publication Number Publication Date
CN1755620A CN1755620A (zh) 2006-04-05
CN100498695C true CN100498695C (zh) 2009-06-10

Family

ID=36011187

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005100895135A Active CN100498695C (zh) 2004-09-30 2005-07-28 工作流进度表创作工具

Country Status (5)

Country Link
US (3) US8332809B2 (zh)
EP (1) EP1686520A1 (zh)
JP (1) JP4950447B2 (zh)
KR (1) KR101153032B1 (zh)
CN (1) CN100498695C (zh)

Families Citing this family (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8332809B2 (en) 2004-09-30 2012-12-11 Microsoft Corporation Workflow schedule authoring tool
US8230042B2 (en) 2005-04-19 2012-07-24 International Business Machines Corporation Policy based auditing of workflows
US8443351B2 (en) * 2006-02-23 2013-05-14 Microsoft Corporation Parallel loops in a workflow
US20080082960A1 (en) * 2006-09-29 2008-04-03 Mcdougal Monty D Method and System For Controlling The Release of Data For Multiple-Level Security Systems
US20080115195A1 (en) * 2006-11-13 2008-05-15 Microsoft Corporation Remote workflow schedule authoring
US8589874B2 (en) * 2007-06-11 2013-11-19 Microsoft Corporation Visual interface to represent scripted behaviors
US20090070121A1 (en) * 2007-09-11 2009-03-12 Jean-Baptiste Leonelli System, Method And Graphical User Interface For Workflow Generation, Deployment And/Or Execution
US8972518B2 (en) * 2007-09-20 2015-03-03 Flash Networks Ltd. Integrated data-model and flow based policy system
US20090222277A1 (en) * 2008-03-03 2009-09-03 Microsoft Corporation Defining and implementing custom task processes
US10002161B2 (en) * 2008-12-03 2018-06-19 Sap Se Multithreading and concurrency control for a rule-based transaction engine
US8689131B2 (en) 2009-01-21 2014-04-01 Microsoft Corporation Visual creation of computer-based workflows
JP5494660B2 (ja) * 2009-06-04 2014-05-21 富士通株式会社 プロセス設計プログラム、プロセス設計装置およびプロセス設計方法
US20110119680A1 (en) * 2009-11-16 2011-05-19 Yahoo! Inc. Policy-driven schema and system for managing data system pipelines in multi-tenant model
US9697481B2 (en) * 2009-12-23 2017-07-04 Siemens Aktiengesellschaft Method for operating a hospital information system
AU2011279329A1 (en) * 2010-07-12 2013-02-21 ZenDesk, Inc. Methods and apparatus for automated workflow management
US8856770B2 (en) * 2010-09-17 2014-10-07 Sap Ag Solution packages including segments of a process chain
US8799851B2 (en) 2010-09-17 2014-08-05 Sap Ag Management of integrated enterprise processes
CN102799962B (zh) * 2012-06-27 2015-08-26 南京合荣欣业信息技术有限公司 一种配置型业务流程系统及其实现方法
TW201407503A (zh) * 2012-08-09 2014-02-16 Quanta Comp Inc 雲端平台工作排程方法及系統
US10007550B2 (en) 2012-11-30 2018-06-26 Landmark Graphics Corporation Systems and methods for reordering sequential actions
US9110681B2 (en) 2013-12-11 2015-08-18 International Business Machines Corporation Recognizing operational options for stream operators at compile-time
US20160259534A1 (en) * 2015-03-05 2016-09-08 Microsoft Technology Licensing, Llc Visual process configuration interface for integrated programming interface actions
CN104765608A (zh) * 2015-04-02 2015-07-08 广州力富视频科技有限公司 一种音视频工作流应用系统的实现方法及装置
US10552203B2 (en) 2015-05-22 2020-02-04 Landmarks Graphics Corporation Systems and methods for reordering sequential actions
US9652203B1 (en) * 2015-11-24 2017-05-16 Corpa Inc. Application development framework using configurable data types
US10216498B2 (en) * 2016-05-13 2019-02-26 Tibco Software Inc. Custom-built process engine with minimal memory and disk resource consumption
CN110419024A (zh) 2017-03-14 2019-11-05 西安姆贝拉有限公司 用于在开发环境中自动生成和合并代码的方法和设备
US10956013B2 (en) * 2017-05-05 2021-03-23 Servicenow, Inc. User interface for automated flows within a cloud based developmental platform
USD910045S1 (en) 2017-09-12 2021-02-09 Servicenow, Inc. Display screen of a communications terminal with graphical user interface
US20180324051A1 (en) * 2017-05-05 2018-11-08 Servicenow, Inc. User interface for automated flows within a cloud based developmental platform
US11025707B1 (en) * 2017-06-20 2021-06-01 Amazon Technologies, Inc. Dynamic execution resource selection for customized workflow tasks
CA3017085C (en) * 2017-09-12 2023-06-13 Servicenow, Inc. Data modelling and flow engine for building automated flows within a cloud based developmental platform
CN108459792B (zh) * 2018-01-25 2020-04-07 阿里巴巴集团控股有限公司 一种流量切换方法、装置、及计算机设备
CN108829394A (zh) * 2018-08-20 2018-11-16 珠海格力电器股份有限公司 一种hmi组态软件脚本编辑方法
US11481233B2 (en) * 2019-09-13 2022-10-25 Logistiview, Inc. Augmenting legacy user interfaces using workflows
US11816713B2 (en) * 2019-10-24 2023-11-14 Shopify Inc. Systems and methods for automating tasks across multiple online stores
US11086602B2 (en) * 2019-11-13 2021-08-10 Palantir Technologies Inc. Workflow application and user interface builder integrating objects, relationships, and actions
US11080636B1 (en) * 2020-11-18 2021-08-03 Coupang Corp. Systems and method for workflow editing
US11436044B2 (en) 2020-11-23 2022-09-06 Precise.ly, Inc. Asynchronous inter-run coordination management
CN112579325A (zh) * 2020-12-29 2021-03-30 上海众源网络有限公司 一种业务对象的处理方法、装置、电子设备和存储介质
US11444903B1 (en) * 2021-02-26 2022-09-13 Slack Technologies, Llc Contextual discovery and design of application workflow
KR102653309B1 (ko) * 2021-03-03 2024-03-29 주식회사 카카오뱅크 스케쥴링 장치 및 방법
KR102392223B1 (ko) * 2021-11-24 2022-04-29 (주) 바우디움 절차의 구조를 입출력하는 방법 및 이를 이용한 장치

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5930512A (en) * 1996-10-18 1999-07-27 International Business Machines Corporation Method and apparatus for building and running workflow process models using a hypertext markup language
US6289513B1 (en) * 1999-06-01 2001-09-11 Isaac Bentwich Interactive application generation and text processing
WO2001075747A1 (en) 2000-03-31 2001-10-11 Siebel Systems, Inc. Workflow processes method and system
JP2002074253A (ja) 2000-09-04 2002-03-15 Toshiba Corp ワークフロー定義方法、ワークフロー表示方法、ワークフロー再利用方法、ワークフロー変換方法
US7043714B2 (en) * 2001-06-28 2006-05-09 International Business Machines Corporation Method, system, and program for using objects in data stores during execution of a workflow
US8914807B2 (en) * 2001-09-28 2014-12-16 International Business Machines Corporation Method, system, and program for generating a program capable of invoking a flow of operations
US7168077B2 (en) 2003-01-31 2007-01-23 Handysoft Corporation System and method of executing and controlling workflow processes
KR101044173B1 (ko) 2003-03-06 2011-06-24 마이크로소프트 코포레이션 분산형 컴퓨팅 시스템상에서 분산형 애플리케이션들을 설계, 배포 및 관리하기 위한 방법 및 장치, 자원 관리자 및 컴퓨터 판독가능 기록 매체
US7310631B2 (en) * 2004-03-12 2007-12-18 American Express Travel Related Services Company, Inc. Method and system for facilitating access to external data
US8332809B2 (en) 2004-09-30 2012-12-11 Microsoft Corporation Workflow schedule authoring tool

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
A State Machine Based Approach for a Process DrivenDevelopment of Web-Applications. Mohan R et al.Lecture Notes in Computer Science,Vol.2348 . 2002
A State Machine Based Approach for a Process DrivenDevelopment of Web-Applications. Mohan R et al.Lecture Notes in Computer Science,Vol.2348 . 2002 *

Also Published As

Publication number Publication date
EP1686520A1 (en) 2006-08-02
JP4950447B2 (ja) 2012-06-13
CN1755620A (zh) 2006-04-05
US20130132928A1 (en) 2013-05-23
JP2006107440A (ja) 2006-04-20
US10108593B2 (en) 2018-10-23
US20150286615A1 (en) 2015-10-08
US20060070025A1 (en) 2006-03-30
US8332809B2 (en) 2012-12-11
KR20060048776A (ko) 2006-05-18
KR101153032B1 (ko) 2012-06-04
US9116681B2 (en) 2015-08-25

Similar Documents

Publication Publication Date Title
CN100498695C (zh) 工作流进度表创作工具
US7168077B2 (en) System and method of executing and controlling workflow processes
CN101101649B (zh) 管理工作流处理中的数据的方法和系统
JP5173128B2 (ja) フローベースおよび制約ベースのワークフローをオーサリングし、実行するための統一モデル
US20060206856A1 (en) System and method for software application development in a portal environment
CN101180598A (zh) 用于提供过程指南的方法和装置
CN101887370B (zh) 创建系统用户界面的方法及装置
US20090106011A1 (en) System and method for developing and deploying sensor and actuator applications over distributed computing infrastructure
JP2003132187A (ja) ワークフローを作成するための方法
Ivanchikj et al. Visual modeling of RESTful conversations with RESTalk
CN100483339C (zh) 连接实体与外貌特征模式中通用功能的系统与方法
US20120060141A1 (en) Integrated environment for software design and implementation
CN117215556A (zh) 模块化的页面快速构建方法、系统、设备及介质
WO2008147983A1 (en) Methods and apparatus for collaborative process modeling
Saleh et al. Demystifying data-centric web services
US20060052965A1 (en) Event driven testing method, system and program product
JP2011065367A (ja) ワークフロー管理装置、ワークフロー管理プログラムおよびワークフロー管理方法
Feldmann et al. Improving task-driven software development approaches for creating service-based interactive applications by using annotated web services
Bertoncello et al. Explicit exception handling variability in component-based product line architectures
JP2012150740A (ja) プログラム生成装置及び方法
Braem et al. Guiding service composition in a visual service creation environment
John et al. Extracting product line model elements from user documentation
CN117270830A (zh) 一种基于前端可视化配置的后端代码智能化生成方法及系统
Bourouis et al. EQNM2L: Towards a Metamodel for Extended Queuing Networks
CN115268907A (zh) 一种使用json数据生成软件系统控件交互逻辑的方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150430

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20150430

Address after: Washington State

Patentee after: Micro soft technique license Co., Ltd

Address before: Washington State

Patentee before: Microsoft Corp.