CN106133697A - 具有分支和门控的便携式业务逻辑 - Google Patents

具有分支和门控的便携式业务逻辑 Download PDF

Info

Publication number
CN106133697A
CN106133697A CN201580011961.5A CN201580011961A CN106133697A CN 106133697 A CN106133697 A CN 106133697A CN 201580011961 A CN201580011961 A CN 201580011961A CN 106133697 A CN106133697 A CN 106133697A
Authority
CN
China
Prior art keywords
user
stage
condition
new
switch condition
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.)
Pending
Application number
CN201580011961.5A
Other languages
English (en)
Inventor
K·斯里瓦斯塔瓦
P·卡达基阿
N·沙阿
S·兰简
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 Technology Licensing LLC
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 Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN106133697A publication Critical patent/CN106133697A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/541Interprogram communication via adapters, e.g. between incompatible applications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Stored Programmes (AREA)
  • User Interface Of Digital Computer (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

一种用户界面显示允许用户在计算机***中配置与记录相对应的逻辑规则。该显示包括用户输入机制,用户输入机制被致动以在逻辑规则中***分支或门控条件。经配置的逻辑规则被转换成能够在不同客户端上运行的表单。

Description

具有分支和门控的便携式业务逻辑
背景
计算机***当前被广泛应用。许多这样的***包括对其应用了相关联的逻辑的表单。
例如,一些计算机***包括诸如企业资源规划(ERP)***、客户关系管理(CRM)***、业务线(LOB)***等之类的业务***。这些类型的计算机***可能是相当大的。例如,某些这样的***可包括表示业务***的不同项的成千上万的不同表单。这样的项可包括实体,实体是表示底层项的数据记录。例如,客户实体是描述并表示客户的业务记录。供应商实体包括描述并表示供应商的信息。产品实体描述并表示产品,库存实体描述库存的某些方面,机会实体描述并表示业务机会,报价实体描述并表示对客户作出的报价等等。
这些实体中的每一个都可具有相关联的表单。此外,这些表单可与各种业务活动相关。例如,订单表单可表示描述一订单的底层订单实体。
这些不同类型的表单中的每一个可具有应用于它的相关联的业务逻辑规则。作为示例,业务逻辑规则可指示出在一定准则下给定表单上要示出什么字段。同样,业务逻辑规则可实现某些确认,或者它们可实现各种各样的其他业务逻辑
业务***也常常运行在多个上下文中。例如,业务***可由使用web浏览器、个人信息管理器或允许用户查看表单的另一类型的应用来访问***的最终用户访问,并可供该最终用户使用。此外,业务***可由用户通过具有移动配套应用的用户设备来访问。作为另一示例,业务***可由开发、定制或以其他方式修改或管理***的软件开发者访问。
这些不同的客户端(web客户端、移动客户端以及服务器客户端)通常使用显著不同的代码语言来操作。作为示例,web客户端和移动客户端可使用JAVA script来操作,而服务器客户端使用C#来操作。这些仅仅是示例,客户端也可使用各种各样的不同类型的语言。在客户端使用不同代码语言操作的情况下,对应的业务逻辑以全部那些不同语言被分开编码。
提供以上讨论仅用作一般的背景信息,并不旨在用作帮助来确定所要求保护的主题的范围。
概述
一种用户界面显示允许用户在计算机***中配置与记录相对应的逻辑规则。该显示包括用户输入机制,用户输入机制被致动以在逻辑规则中***分支或门控条件。经配置的逻辑规则被转换成能够在不同客户端上运行的表单。
提供本概述以便以简化的形式介绍以下在详细描述中进一步描述的一些概念。本概述并非旨在标识出要求保护的主题的关键特征或必要特征,亦非旨在用作辅助确定要求保护的主题的范围。所要求保护的主题不限于解决在背景中提及的任何或所有缺点的实现。
附图简述
图1是一个说明性业务***架构的框图。
图2是示出图1中所示的架构在创建应用于表单的新业务逻辑时的操作的一个实施例的流程图。
图2A-2R是说明性用户界面显示。
图3是例示出图1中所示的业务***架构在允许用户修改现有业务逻辑时的操作的一个实施例的流程图。
图3A-3F是说明性用户界面显示。
图4是示出图1中的业务***架构在允许用户在业务逻辑中创建分支和门控时的操作的一个实施例的流程图。
图5A-5I是说明性用户界面显示。
图6是在各种其他架构中部署的图1中所示的架构的一个实施例。
图7-12示出了移动设备的各实施例。
图13是一个说明性计算环境的框图。
详细描述
图1是业务***架构100的一个说明性实施例的框图。架构100包括可分别由多个用户104、106和108通过对应的用户设备110、112和114访问以便进行业务操作的业务***102。可看到用户104、106和108使用不同的机制来访问业务***100。例如,用户104使用设备114上的个人信息管理器。用户106使用web浏览器116,而用户108使用移动配套应用120。移动配套应用120说明性地是由业务***102实现的业务应用122的配套。
图1还示出业务***102说明性地可由开发者124通过包括开发者组件128的服务器(或服务器环境)126来访问。开发者124使用开发者组件128来与业务***102交互。
图1还示出业务***102说明性地可由另一用户130访问,该另一用户可以是例如分析人员或不必知道如何编程(例如用户130不需要是开发者124)但说明性地具有业务知识且知道如何在业务***102中设置业务逻辑以及其他项的另一用户。用户130通过向***102提供输入来这样做。在一个实施例中,它们是自然语言输入或通过图形用户界面(GUI)输入机制132的输入,这些输入通过编辑器用户界面显示134,且具体地通过这些显示上的用户输入机制136。
图1还示出业务***102说明性地包括处理器138、业务数据存储140、编辑器组件142、一个或多个转换组件144、以及用户界面组件146。用户界面组件146说明性地生成可被显示给架构100中的各种用户和开发者的用户界面显示。它们可由其他组件生成,或者也可由其他设备中的界面组件生成。用户界面显示说明性地包括各种用户和开发者为了操纵和控制业务***102而可交互的用户输入机制。
用户输入机制可包括各种各样的不同类型的用户输入机制,诸如按钮、图标、下拉菜单、复选框、文本框、磁贴、链接等。此外,用户输入机制可由用户以各种不同方式来致动。例如,可使用指点设备(诸如鼠标、轨迹球等)来致动它们。此外,如果业务***102(或任何给定用户使用的设备)包括语音识别组件,则用户输入机制可使用语音命令来致动。进一步,在用户界面显示被显示在触敏屏幕上的情况下,用户输入机制可使用触摸姿势(诸如用用户的手指、指示笔等)来致动。
业务应用122说明性地执行业务操作以便进行图1中所示的各种用户和开发者的业务。业务应用122可说明性地对业务数据存储140中的业务数据起作用。业务数据说明性地包括实体150、工作流152、表单154(带有相应的业务逻辑156)以及由框158所指示的其他数据元素(诸如其他业务记录等)。
图1示出业务数据存储140是单个数据存储且它是业务***102本地的。然而,它可以是多个不同的数据存储,且它们全部都可以是业务***102本地的,它们全部可以是位于业务***102远程的,或者一些可以是本地的而其他是远程的。
处理器138说明性地是具有相关联的存储器和时序电路(未分开示出)的计算机处理器。它说明性地是业务***102的功能部件,并且由业务***102中的其它组件、应用或其他项的功能激活,并且促进所述功能。还应注意,在一些实施例中,用户设备110、112和114以及服务器126也将说明性地包括处理器,但是为了简化起见它们未被示出。
在更详细描述架构100的操作之前,将首先提供简要概览。编辑器组件142说明性地使用用户界面组件146来生成用户界面显示134供用户130使用。在一个实施例中,用户界面显示134包括用户输入机制136,用户输入机制136允许用户130提供自然语言输入或GUI输入132以便创建与业务***102所使用的表单154(或者实体或工作流或其他业务记录)相关联的新业务逻辑156。编辑器组件142还说明性地生成允许用户130编辑现有业务逻辑156的用户界面显示。
一旦业务逻辑被生成或被编辑,编辑器组件142就说明性地自动生成中间代码160,该中间代码160然后被(一个或多个)转换组件144自动转换成可由用户设备110、112和114中以及服务器环境126中的各种机制所使用的代码。“自动地”意味着基本上是在没有任何其他用户参与或动作的情况下完成的。例如,在一个实施例中,转换组件134包括将中间代码160转换成可由移动配套应用120理解的代码的组件。在另一实施例中,转换组件144将中间代码160转换成可由web浏览器116理解的代码,而在其他实施例中,转换组件144将中间代码160转换成可由个人信息管理器114和/或开发者组件128理解的代码。同样,在一个实施例中,转换组件144可直接操作用户130提供的用户输入以生成用于各种客户端的代码,而没有中间代码被生成。
在当前***中,业务逻辑通常必须被两个或更多个分开的个人来单独编码。编码必须被生成来在各种用户定义的各种上下文中实现业务逻辑的功能。例如,在图1中所示的实施例中,业务逻辑(一旦由用户130通过编辑器组件132提供)将需要被一分开的个人编码成可由移动配套应用120理解的代码。它还必须分别地被编码成可由web浏览器116理解的一不同语言、以及可由个人信息管理器114理解的又一语言、以及可由开发者组件128理解的甚至另一语言。这种类型的将相同功能编码成所有这些多种不同上下文(或不同语言)的重复式人类编码是耗时的、累赘的、且常常易于出错。
相反,编辑器组件142说明性地将用户130提供的输入转换成中间代码160,中间代码160可由转换组件144理解且可容易地被转换成业务***102部署于其中的不同上下文所需的语言。这是自动完成的。作为一个示例,编辑器组件142可按照XML或其变型来生成中间代码160。给定的转换组件144可被包括在业务***102内,用于业务***102被部署于其中的每个上下文。因此,可存在将XML(或中间代码160)转换成可由移动配套应用120理解的代码的转换组件144。也可存在将中间代码160转换成可由web浏览器116理解的代码的另一转换组件144。可存在将中间代码160转换成可由个人信息管理器114理解的代码的又一转换组件144,以及将中间代码160转换成可由开发者组件128理解的又一转换组件144。
一旦这些转换已被作出,它们就被存储在业务数据存储140中且与它们所属的表单、工作流、或实体(或其他业务记录)相关联。它们可由各种用户通过各种用户设备和服务器环境来访问,使得访问业务***102的所有人可说明性地运行新的或经修改的业务逻辑,而该新的或经修改的业务逻辑无需被人工地重新编码成适合于每个不同上下文的语言。相反,它最初被编码成可被容易地转换成可由全部各种上下文理解的事物的格式。从而,用户130可仅仅是只理解如何使用自然语言输入和图形用户界面输入在业务***102内配置业务逻辑的业务分析人员,而不必是熟练于以各种语言编码的某人。
图2是例示出图1中所示的***在允许用户130生成应用于给定表单的新业务逻辑时的整体操作的一个实施例的流程图。用户130首先访问编辑器组件142。这可按各种不同的方式来完成。例如,用户130可通过提供合适的认证输入来登录或以其他方式访问业务***102。作为响应,业务***102可说明性地提供允许用户130访问编辑器组件142以便创建新业务逻辑的用户界面显示。访问编辑器组件142由图2中的框200指示出。
编辑器组件142然后生成带有允许用户130指示出他或她希望创建业务逻辑的新项的用户输入机制136的编辑器用户界面显示134。这由图2的框386指示。
作为示例,假设用户130希望为由购买者在业务***102内发出的订单创建一个或多个新业务逻辑规则。图2A示出对应于新订单实体的一个示例性用户界面显示204。可看到,用户界面显示204包括允许用户输入账单要被送往的地址的“账单地址”部分206。此外,用户界面显示204包括允许用户标识商品要被运送到哪里的地址的“送货地址”部分208。出于本示例的目的,假设用户130希望创建对应于订单的新业务逻辑规则,该新业务逻辑规则指示出如果华盛顿州或俄勒冈州是“送货地址”部分208中的州,则免运费(或设置为0)。还假设用户130希望将运费输入字段设置为只读,使得在订单处理期间运费不会被无意地放置在该字段中。
在该情形中,一旦用户130访问编辑器组件142,编辑器组件142就使用用户界面组件146来生成带有允许用户130指示出他或她希望创建新业务逻辑规则的用户输入机制的用户界面显示。这由图2的框386指示。图2B示出指示这个方面的一个说明性用户界面显示212。可看到用户界面显示212包括示于面板214中的分层结构,该分层结构允许用户选择业务***102中用户希望编辑的项。可看到用户已经选择了实体项216且已经致动了分层树结构中的业务规则节点218。
用户界面显示212还说明性地包括上下文选择器控件231。上下文选择器控件231允许用户130选择业务逻辑规则将应用到的上下文。在图2B中所示的实施例中,上下文选择器231被示为下拉菜单。从而,在上文关于图1讨论的实施例中,当用户致动下拉菜单231时,用户能够选择服务器上下文、个人信息管理器上下文、web浏览器上下文、和/或移动配套应用上下文,使得新创建的业务逻辑规则被应用于全部所选上下文。
用户界面显示212还包括新建按钮220、编辑按钮222、删除按钮224、分别为226和228的激活和停用按钮、以及用于提供附加功能的附加按钮230。当用户致动了分层结构中的业务规则节点218时,编辑器组件142在业务规则面板232中显示全部业务规则。从而,用户可选择已存在的业务规则之一并通过致动编辑按钮222来编辑它,或者用户可致动新建按钮220来创建新业务逻辑规则。
接收致动新建按钮220以创建新业务逻辑规则的用户输入在图2中由框210指示出。接收标识面板214中的分层结构中的项的用户输入在图2中由框234指示出,而显示用户界面以接收选择用于应用新业务逻辑规则的上下文的用户输入在图2中由框236指示出。
一旦用户提供了这些输入,编辑器组件142就使用用户界面组件146来生成允许用户130提供定义该新规则的用户输入的用户界面显示。在一个实施例中,这些输入可用自然语言形式,或者通过图形用户界面输入机制136来被提供。显示这些用户界面显示以及接收用户输入在图2的流程图中由框238指示出。图2C-2Q是示出这一方面的示例的说明性用户界面显示。
图2C示出用户界面显示240。这可被说明性地生成以允许用户130定义新规则。在图2C中所示的实施例中,用户界面240包括允许用户输入规则名的规则名框242。用户界面显示240还说明性地包括条件致动器244、动作致动器246、以及说明致动器248。用户可致动条件致动器244以设置将引发该新业务逻辑规则的条件。用户可致动动作致动器246以指定在条件被满足时要采取的动作,且用户可致动说明致动器248以输入规则的文本说明。
图2D示出在用户已在框242中输入了规则名之后用户界面显示240的另一实施例。可看到规则名一般在250处被示出。用户已经选择了“账户运费调整”作为规则名。
图2E示出用户界面显示240,其中用户已致动了条件致动器244。编辑器组件142生成具有多个控件254、256、258和260的条件显示252,这些控件允许用户130指定将引发当前业务逻辑规则的条件。具体来说,显示252包括字段控件254、运算符控件256、类型控件258以及值控件260。
图2F示出用户已致动了字段控件254(被显示为下拉菜单,但是可使用其他类型的控件)。这显示出下拉菜单262,该下拉菜单包括可由用户130指定的一组字段。
图2G示出用户已使用控件254选择了“运送至州”字段,且现在已致动了运算符控件256。这使得编辑器组件142显示下拉菜单264,该下拉菜单显示可由用户选择的一组运算符。
图2H示出用户已经从菜单264选择了“等于”运算符,并且已接着致动值控件260,以使得下拉菜单266被显示。下拉菜单266显示了应用于“运送至州”的一组复选框。当然,下拉菜单266中所标识的值将基于用户用字段控件254选择的具体字段而变化。也就是说,由于用户已经选择了“运送至州”字段,因此菜单266中的复选框对应于州。如果用户选择了另一字段,则菜单266中将具有不同的值。在图2H中可看到,用户已经在下拉菜单266中选择了俄勒冈州和华盛顿州。
图2I示出用户现在已经完全指定了将引发当前业务逻辑的条件。如图2I中268处一般地示出的那样,如果运送到州等于华盛顿州或俄勒冈州,则当前业务逻辑规则将引发。
图2J示出用户现在已经致动了动作致动器246。作为响应,编辑器组件142使用用户界面组件146来生成动作菜单270。菜单270包括可由用户130选择的多个不同的可选择动作。一旦这些动作之一被选择,编辑器组件142就说明性地生成允许用户更充分地定义该动作的附加用户界面显示。在当前示例中,用户已从菜单270中选择了“设置字段”动作。
图2K示出,作为响应,编辑器组件142生成具有字段控件274、类型控件276以及值控件278的动作显示272。控件274-278允许用户进一步定义在当前业务逻辑规则引发时要采取的动作。图2K示出用户使用控件274和278已选择了“运费”字段并已将值设为“0”。因此,在当前的业务逻辑规则引发时(当它满足268处指定的条件时),要采取的动作是将“运费”设为“0”。
图2L示出用户已经充分地定义了该动作。如280处一般地示出的那样,图2L确认当该业务逻辑规则引发时要采取的动作是将运费设为0。
图2M示出用户希望在该业务逻辑规则引发时设置另一动作。回忆起在该业务逻辑规则要被应用时,用户希望将运费字段的读/写状态设置为只读状态。因此,用户再次致动动作致动器246以生成菜单270的显示。用户然后从菜单270选择“设置读/写”动作。
图2N示出,作为响应,编辑器组件142生成允许用户进一步指定所选动作的动作显示282。显示282包括字段控件284和状态控件286。可看到,使用字段控件284,用户已选择了“运费”字段。使用状态控件286,用户已指示出“运费”字段的读/写状态要被设为只读。因此,图2O示出用户现在已经充分地指定了要引发业务逻辑规则的条件以及要采取的动作。也就是说,当该业务逻辑规则引发时,运费要被设为0且运费字段的读/写状态要被设为只读(如图2O中在280和288处一般地示出的那样)。
图2P和2Q例示出用户可编辑业务逻辑规则,即使是正被创建时。例如,假设用户130现在希望删除将“运费”字段的读/写状态设置为只读的动作。在该情况下,如图2P中在290处一般地示出的那样,用户可简单地选择该动作。当用户选择了一动作时,编辑器组件142说明性地显示出允许用户修改该动作的一组控件。如图2P中所见,上箭头和下箭头292被显示出。当用户致动这些箭头时,用户可按规则应用时采取的动作的顺序向上或向下移动所选动作。也就是说,用户可通过使用箭头292来重新排序要被采用的动作。当用户致动删除控件294时,用户可删除该动作。
在一个实施例中,当用户删除一动作时,编辑器组件142说明性地生成一消息以确认用户希望删除该动作。在一个示例中,图2Q示出消息296被生成来验证用户希望删除该动作。一旦用户删除了该动作,编辑器组件142说明性地生成一显示(诸如上文图2L中所示的),指示出当该规则引发时要采取的仅有动作是将运费设为0。
一旦用户已经充分地定义了业务逻辑规则,则用户说明性地致动激活按钮241以在业务***102内激活该规则。图2R示出指示出这个方面的用户界面显示240的一个实施例。可看到,在300处被一般地示出的活动的/不活动的状态指示器现在被设为活动的。并且,停用按钮302被设置使得用户能够说明性地在他或她希望时停用该规则。接收激活该规则的用户输入在图2的流程图中由框301指示出。
充分地定义了该规则之后,编辑器142说明性地生成可由全部所选上下文理解的代码。这由图2的框302指示。例如,在一个实施例中,编辑器组件142生成中间代码160。中间代码160说明性地采用可由全部或大多数上下文容易理解的形式,或者可被转换成由那些上下文容易理解的语言的形式。在一个实施例中,中间代码160是XML或XML的变型形式,但是其他代码也可被使用。转换组件144然后说明性地(在必要的情况下)将中间代码160转换成各种上下文中使用的代码或语言。例如,一个或多个转换组件144说明性地将代码转换成用于各种客户端110、112和114的客户端代码。这由图2中的303指示。一不同的(或相同的)转换组件144然后说明性地按需将该代码转换到服务器上下文,如图2中框304中所指示的那样。
当然,其他转换组件144也可将该代码转换成其他上下文。作为示例,假设新用户上下文是使用手表来访问业务***102。在该情况下,一附加的转换组件144被添加来执行所需转换。将代码转换成其他上下文在图2中由框306指示出。
业务***102然后说明性地使代码可供用于各种上下文,如框308所指示的那样。在一个实施例中,业务逻辑规则以可由各种上下文理解的各种语言被存储在数据存储140中。当然,它也可以中间代码或也可由全部上下文理解的通用代码来被存储。
图3是例示出架构100在允许用户130编辑已存在的业务逻辑规则时的操作的一个实施例的流程图。与创建新规则一样,用户130首先访问业务***102,具体来说是访问图1中所示的编辑器组件142。这由框310指示。
编辑器组件142然后说明性地生成一用户界面显示来允许用户130指示出他或她希望编辑表单上的一现有的业务逻辑项。这由图3的框312指示。作为示例,编辑器组件142可说明性地生成图2B中所示的用户界面显示。为了编辑已存在的规则,用户130说明性地从面板232选择规则之一并致动编辑按钮222。接收请求编辑所选业务逻辑规则的用户输入在图3中由框314指示出。
编辑器组件142然后说明性地生成允许用户提供定义对所选业务逻辑规则的修改的输入的用户界面显示。这由框316指示。这可采取多种多样的形式。图3A-3F是示出这个方面的说明性的用户界面显示。
图3A类似于图2R中所示的显示,且类似的项被类似地标号。也就是说,用户已选择了“账户运费调整”规则来修改。在一个实施例中,用户首先致动停用致动器302来停用该规则。这由图2的框318指示。
当用户这样做时,诸如图3B中所示的显示之类的显示被显示出。它类似于图3A中示出的,但是活动的/不活动的状态指示器300示出该规则现在是不活动的,而激活按钮241再次被显示在屏幕上部。
用户然后说明性地选择该业务逻辑规则的某一项来修改。对于当前示例,假设用户希望现在改变应用于全部订单的运费值。不是0,现在要是2%。从而,如图3B中所示,用户已选择了“将运费设为0”动作,如图3B中320所指示出的那样。如果用户致动该项(例如通过双击或采用其他方式),这就选择了该动作并将其置于编辑模式,使得其内容可被编辑。选择该项供修改在图3的流程图中由框322指示出。作为响应,编辑器组件142说明性地再次生成动作显示324,该动作显示324允许用户使用字段控件274、类型控件276和值控件278修改该动作的各部分。
图3C示出用户已致动了类型控件276以生成下拉菜单324。下拉菜单324允许用户选择动作的类型。
图3D示出用户已从菜单324选择了“表达式”类型。这使得一附加显示326被显示,该附加显示允许用户进一步定义该表达式。显示326包括字段控件328、运算符控件330、类型控件332以及值控件334。
图3E示出用户已经使用了那些控件来将运费字段设置为具有由总计字段乘以0.2(使用乘法运算符)确定的值。从而,图3F在280处示出业务逻辑规则已被修改以示出运费被设为获取总计并将其乘以0.2(即2%)。作出这些修改或其他修改在图3的流程图中由框340和342指示出。用户然后说明性地通过致动激活按钮241来激活经修改的规则。接收激活经修改的业务逻辑的用户输入在图3中由框344指示出。
再次,编辑器组件142说明性地生成在该业务规则的全部所选上下文中可被理解的代码,以正确地反映出该修改。这由图3的框346指示。业务***102然后再次使得代码可供用于各种上下文中。这由框248指示。
从而可看到即使不理解如何在各种上下文中进行编码的用户也能通过图形用户界面使用自然语言输入和选择来创建和修改业务逻辑规则。编辑器组件自动地生成在全部各种上下文中可被理解的(或可被自动转换成可被理解的形式的)代码。***是可扩展的,因为不同的转换组件可被添加以将中间代码转换成各种不同上下文中可被理解的不同格式或语言。
图4是解说图1的架构中的编辑器组件142和其它项的操作的一个实施例的流程图,以允许用户生成包括分支和门控条件的业务逻辑。图5A-5I是示例性用户界面显示。现在将彼此结合地描述图4-5I。
仅作为示例,假设用户希望创建汽车销售过程,诸如图5A的过程流程图中所示。汽车销售过程将具有其中潜在消费者被验证的验证阶段300,在消费者期望购买新车的情况下要被执行的新车销售阶段302,在消费者期望购买二手车的情况下被执行的二手车销售阶段304,无论被销售的车的类型如何都要被执行的文档化阶段306,以及结束销售过程的结束阶段308。
因而,可以看到该过程中的分支如310所概括地指示那样进行。如果第一组条件312被满足,则该过程从验证阶段分支到新车销售阶段302。如果第二组条件314被满足,则该过程从验证阶段300分支到二手车销售阶段304。如果过程处于阶段302并且第三组条件316被满足,则该过程从阶段302继续到306。如果过程处于阶段304并且第四组条件318被满足,则该过程从阶段304继续到306。因而可以看到,条件312和314是指示要遵循过程流中哪个特定分支的分支条件。条件316和318是门控条件,该门控条件指示该过程无法从前一阶段继续至下一阶段,直到该门控条件被满足。
图4表明,为了创建图5A中所解说的过程,业务***102首先接收指示用户希望访问编辑器组件142并且生成一组新的业务逻辑(诸如图5A中所示的过程)的用户输入。这由图4的框320指示。
作为响应,编辑器组件142解说性地生成一组用户界面显示以供用户创建业务过程的业务逻辑。这由框322指示。在一个实施例中,编辑器组件142接着接收定义用户正在创建的业务过程中的各个阶段的阶段定义输入。这由图4的框324指示。那些输入可包括,例如,阶段名称输入326、实体标识符输入328、类别输入330、一组步骤输入332、所要求的步骤标识符输入334以及其它输入336。
图5B和5C示出了可用于如此操作的一组用户界面显示。图5B例如示出了用户界面显示338。显示338已经解说性地示出用户已经命名了新的业务过程(概括地在340)为“汽车销售过程”。显示338还解说性地包括能够被用户致动以向过程增加阶段的增加阶段用户输入机制342。
图5C示出了用户界面显示338,其中用户已致动了用户输入机制342。作为响应,编辑器组件142生成定义用户输入机制344的一组阶段,该用户输入机制344允许用户输入信息以定义阶段。机制346包括阶段名称用户输入机制,其中用户可以输入阶段的名称。实体用户输入机制348允许用户选择阶段将基于的实体。阶段类别输入机制350允许用户选择阶段类别。步骤用户输入机制342允许用户定义必须按顺序执行以完成汽车销售过程的这一阶段的步骤。这些步骤中的每一者解说性地包括由用户输入机制354设置的类型。例如,步骤可具有字段类型、向导类型、命令类型、或各种其它类型。值输入机制356允许用户定义与每一步骤相关联的值,并且所要求的致动器358允许用户指定给定步骤是否是在业务过程能够前进到下一阶段之前被要求的。
图5D示出了用户界面显示338的一个示例,其中用户定义了多个不同的阶段。“验证”阶段概括地在300处表示,“新车销售”阶段概括地在302处表示,并且“二手车销售”阶段概括地在304处表示。图5D-1示出了用户已经创建的其它各个阶段以实现图5A中示出的过程。文档化阶段概括地在306处表示,并且结束阶段概括地在308处表示。在图5D和5D-1中示出的实施例中,各个阶段由连接器370连接。同样,可以看到,只要用户创建了一个以上的阶段,编辑器组件142显示与每一阶段(除了最后一个阶段)相关联的条件用户输入机制。在图5D和5D-I中示出的实施例中,条件用户输入机制由数字372表示。在定义了一个以上的阶段的情况下显示条件用户输入机制由图4的流程图中的框374来指示。
基于为贯穿图5D和5D-1的汽车销售过程创建的阶段,过程流如图5E中所示的那样来指示。当然,这并非是用户期望的业务过程的最终配置(并且在图5A中所解说的)。为了将分支和门控条件***图5E中示出的过程中,用户解说性地致动图5D和5D-1的显示上的条件输入机制372之一。这由图4的流程图中的框376指示。当用户这么做时,编辑器组件142解说性地生成一组用户输入机制以允许用户定义分支和门控条件。这由图4的框378指示。
作为示例,图5F示出了用户界面显示338,其中用户已经在验证阶段300中致动了条件用户输入机制372。可以看到,作为响应,编辑器组件142显示概括地由数字380指示的一组分支和门控输入机制。它们允许用户指定分支或门控条件。用户输入机制380解说性地包括字段输入机制382,其中用户可以指定来自阶段300的特定字段是条件的一部分。运算符输入机制384允许用户指定条件的运算符。类型机制386允许用户指定条件类型,并且值用户输入机制388允许用户指定值。下一阶段输入机制390允许用户指定处理要继续到的下一阶段,如果所定义的条件被满足的话。
在图5F中示出的示例中,可以看到,用于继续到下一阶段的条件是阶段300中的汽车偏好字段等于“新车”的值。如果该条件被满足,则处理继续到由用户输入机制390标识的下一阶段,即新车销售阶段302。当用户致动用户输入机制392时,编辑器组件142将该输入作为分支条件来处理。图5G示出了用户界面显示338的一个示例,其中用户已经这么做了。
可以看到,分支条件现在概括地在312处表示。在一个示例中,它由文本表示来表示。可以从图5G中看到,文本表示显示“如果汽车偏好等于新车,则分支到新车销售阶段”。
图5H示出了用户已经重复了定义分支条件的相同过程。这在314处概括示出。它指示了用户已经添加了条件“如果汽车偏好等于二手车,则分支到二手车销售阶段”。图5I示出了用户通过对新车销售阶段302添加门控条件来重复相同的过程。这在图5I中的框316概括地指示。该条件指示“如果最终价格包含数据,则分支到文档化阶段”。即,如果最终价格已经经过协商并且达成一致,并且销售人员已经将最终价格输入到最终价格字段中,则该过程可继续到文档化阶段。
图5I示出了用户还对二手车销售阶段304添加了条件,并且这在318处概括地指示。条件402指示,如果二手车销售阶段中的最终价格包含数据(即,最终价格是否已经达成一致并且被销售人员输入),则该过程也继续到文档化阶段306。接收定义关于过程中的各个阶段的分支和门控条件的用户输入由图4的流程图中的框404指示。
再次参考图5A,可以看到,由于所有分支和门控条件312-318都已经被用户输入,所以业务过程现在被正确地配置,如用户所期望的那样。基于分支和门控条件来重新配置业务过程逻辑由图4中的框406指示。
用户接着解说性地激活新的业务逻辑,如由框408指示的。这也可以如上所述地来完成。业务过程的代码接着被生成,如由框410所指示的,并且使得该代码可供使用,如由框412所指示的。
因而可以看到,编辑器组件142提供具有用户输入机制的用户界面显示,该用户输入机制允许用户容易地将分支和门控条件添加到业务逻辑。用户可以在不具有关于底层业务***如何操作的大量知识并且不需要具有关于如何硬编码业务逻辑的大量知识的情况下来这么做。
图6是图1中所示的架构100的框图,不同之处在于其元件被置于云计算架构500中。云计算提供了不要求终端用户知晓交付服务的***的物理位置或配置的计算、软件、数据访问和存储服务。在各个实施例中,云计算通过诸如因特网之类的广域网使用合适的协议来交付服务。例如,云计算提供者通过广域网交付应用,并且它们可以通过web浏览器或任何其他计算组件被访问。架构100的软件或组件以及相对应的数据可被存储在远程位置处的服务器上。云计算环境中的计算资源可以被整合在远程数据中心位置处或者它们可以是分散的。云计算基础结构可以通过共享数据中心来交付服务,即使在用户看来它们是单个访问点。因此,在此所述的组件和功能可以从使用云计算架构的远程位置处的服务提供者来提供。替代地,它们可以从常规的服务器中提供,或者它们可以直接地或以其他方式安装在客户端设备上。
本说明书旨在包括公共云计算和私有云计算两者。云计算(公共和私有两者)提供了基本无缝的资源联营以及对管理和配置底层硬件基础结构的降低的需求。
公共云由供应商管理,并且通常支持使用同一基础结构的多个消费者。此外,与私有云相反,公共云能够将终端用户从管理硬件中释放出来。私有云可由机构本身管理,并且基础结构通常不与其他机构共享。该机构在某种程度上仍然维护着硬件,诸如安装和维修等。
在图6中所示的实施例中,一些项与图1中所示的那些是类似的,并且它们被类似地编号。图6具体地示出业务***102位于云502(可以是公共的、私有的或者其中某些部分是公共的而其他部分是私有的组合)中。因此,用户130使用包括承租人104的用户设备504通过云502来访问那些***。图6示出访问云502中的业务***102的其他上下文505(诸如图1中的客户端和服务器环境)。
图6还描绘了云架构的另一实施例。图4示出还构想了业务***102的某些元素被置于云502中而其他元素不被置于云502中。作为示例,数据存储140可被置于云502的外部,并且通过云502来被访问。在另一实施例中,编辑器组件142也在云502的外部。无论它们位于哪里,它们都可直接由设备504通过网络(广域网或局域网)访问,它们可由服务主存在远程站点处,或者它们可作为通过云来提供或通过驻留在云中的连接服务来访问的服务。本文构想了所有这些架构。
还将注意,架构100或其部分可被置于各种各样不同的设备上。这些设备中的某些包括:服务器、台式计算机、膝上型计算机、平板计算机、或其他移动设备,诸如掌上计算机、蜂窝电话、智能电话、多媒体播放器、个人数字助理等。
图7是可被用作其中可部署本发明的***(或其部分)的用户或客户的手持式设备16的手持式或移动计算设备的一个说明性实施例的简化框图。图8-12是手持式或移动设备的示例。
图7提供了客户端设备16的组件的总体框图,该客户端设备16可以运行业务***102的组件或与架构100交互的其他上下文,或这二者。在设备16中,提供了通信链路13,该通信链路允许手持设备与其它计算设备通信,并且在一些实施例中提供用于诸如通过扫描来自动接收信息的信道。通信链路13的示例包括:红外端口、串行/USB端口、诸如以太网端口之类的电缆网络端口、以及允许通过一个或多个通信协议的通信的无线网络端口,所述通信协议包括作为用于提供对网络的蜂窝接入的无线服务的通用分组无线服务(GPRS)、LTE、HSPA、HSPA+、以及其他3G和4G无线电协议、1Xrtt和短消息服务,并包括提供对网络的本地无线连接的802.11和802.11b(WiFi)协议、和蓝牙协议。
根据其他实施例,应用或***被容纳在连接到可移动安全数字(SD)卡接口15的SD卡上。SD卡接口15和通信链路13沿总线19与处理器17(也可实现来自图1的处理器138)进行通信,该总线19还连接到存储器21和输入/输出(I/O)组件23、以及时钟25和定位***27。
在一个实施例中,提供了I/O组件23以促成输入和输出操作。针对设备16的各个实施例的I/O组件23可以包括:输入组件,比如按钮、触摸传感器、多点触摸传感器、光学或视频传感器、语音传感器、触摸屏、邻近传感器、话筒、倾斜传感器以及重力开关;以及输出组件,比如显示设备、扬声器和或打印机端口。也可以使用其他I/O组件23。
时钟25说明性地包括输出时间和日期的真实时间时钟组件。时钟还可以说明性地为处理器17提供时序功能。
定位***27说明性地包括输出设备16的当前地理位置的组件。这例如可以包括全球定位***(GPS)接收机、LORAN***、航位推算***、蜂窝三角测量***或者其他定位***。这例如还可以包括生成所期望的地图、导航线路和其它地理功能的测绘软件或导航软件。
存储器21存储操作***29、网络设置31、应用33、应用配置设置35、数据存储37、通信驱动程序39以及通信配置设置41。存储器21可以包括所有类型的有形易失性和非易失性计算机可读存储器设备。其还可以包括计算机存储介质(下面描述)。存储器21存储计算机可读指令,所述指令在被处理器17执行时致使处理器根据所述指令执行计算机实现的步骤或功能。类似地,设备16可具有客户端业务***24,该客户端业务***可运行各种业务应用或实现***102的部分或全部。处理器17可以也被其他组件激活以促成它们的功能性。
网络设置31的示例包括诸如代理信息、因特网连接信息以及测绘之类的事物。应用配置设置35包括为特定企业或用户定制应用的设置。通信配置设置41提供了用于与其他计算机进行通信的参数,并且包括诸如GPRS参数、SMS参数、连接用户名和口令之类的项目。
应用33可以是之前已经存储在设备16上的应用或是在使用期间安装的应用,但是这些应用可以是操作***29的一部分,或者也可以在设备16之外被托管。
图8示出其中设备16是平板计算机600的一个实施例。在图8中,计算机600被示为具有在显示屏602上显示的(来自图2G)的用户界面显示240。屏幕602可以是触摸屏(使得来自用户手指604的触摸手势可以用于与应用交互)或者启用笔的界面,其接收来自笔或指示笔的输入。其还可以使用屏幕上虚拟键盘。当然,其还例如可以通过诸如无线链路或USB端口之类的合适的附连机制附连到键盘或其他用户输入设备。计算机600还可以说明性地接收语音输入。
图9和图10提供了可被使用的设备16的附加示例,但是也可以使用其它设备。在图9中,提供功能电话、智能电话或移动电话45作为设备16。电话45包括:一组小键盘47,其用于拨打电话号码;显示器49,其能够显示包括应用图像在内的图像、图标、网页、照片和视频;以及控制按钮51,其用于选择在显示器上示出的项目。电话包括天线53,该天线53用于接收诸如通用分组无线服务(GPRS)和1Xrtt之类的蜂窝电话信号以及短消息服务(SMS)信号。在一些实施例中,电话45还包括容纳安全数字(SD)卡57的SD卡槽55。
图10的移动设备是个人数字助理(PDA)59或多媒体播放器或平板计算设备等等(在此称为PDA 59)。PDA 59包括电感屏61,所述电感屏感测指示笔63(或其他指示器,诸如用户的手指)在该指示笔被置于屏幕之上时的位置。这允许用户在屏幕上选择、突出显示和移动项目以及绘图和书写。PDA 59还包括多个用户输入键或按钮(比如按钮65),其允许用户将显示器61上所显示的菜单选项或其他显示选项滚屏,并且允许用户在没有接触显示器61的情况下改变应用或选择用户输入功能。尽管未被示出,但是PDA 59可以包括允许与其他计算机进行无线通信的内置天线和红外发射机/接收机、以及允许与其他计算设备的硬件连接的连接端口。这样的硬件连接通常是通过经由串行或USB端口连接到其他计算机的支架来完成的。因此,这些连接是非网络连接。在一个实施例中,移动设备59还包括容纳SD卡69的SD卡槽67。
图11类似于图9,不同之处在于电话是智能电话71。智能电话71具有显示图标或磁贴或其他用户输入机制75的触敏显示器73。机制75可由用户用来运行应用、进行呼叫、执行数据传输操作,等等。一般而言,智能电话71被构建在移动操作***上且提供比功能电话更高级的计算能力和连接性。图10示出了其上显示了来自图2O的显示的智能电话71。
注意,设备16的其他形式是可能的。
图13是其中可采用架构100或其一部分(作为示例)的计算环境的一个实施例。参考图13,用于实现一些实施例的示例性***包括计算机810形式的通用计算设备。计算机810的组件可以包括,但不限于,处理单元820(可以包括处理器138)、***存储器830和将包括***存储器在内的各种***组件耦合至处理单元820的***总线821。***总线821可以是若干类型的总线结构中的任一种,包括存储器总线或存储器控制器、***总线和使用各种总线架构中的任一种的局部总线。作为示例而非限制,这样的架构包括工业标准架构(ISA)总线、微通道架构(MCA)总线、增强型ISA(EISA)总线、视频电子技术标准协会(VESA)局部总线和***部件互连(PCI)总线(也称为夹层(Mezzanine)总线)。参考图1描述的存储器和程序可被部署在图10的对应部分中。
计算机810通常包括各种计算机可读介质。计算机可读介质可以是能由计算机810访问的任何可用介质,而且包含易失性和非易失性介质、可移动和不可移动介质。作为示例而非限制,计算机可读介质可包括计算机存储介质和通信介质。计算机存储介质不同于且不包括已调制数据信号或载波。计算机存储介质包括硬件存储介质,该硬件存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据的信息的任何方法和技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括,但不限于,RAM、ROM、EEPROM、闪存或其它存储器技术、CD-ROM、数字多功能盘(DVD)或其它光盘存储、磁带盒、磁带、磁盘存储或其它磁性存储设备、或能用于存储所需信息且可以由计算机810访问的任何其它介质。通信介质通常具体化计算机可读指令、数据结构、程序模块或传输机制中的其他数据,并包括任何信息递送介质。术语“已调制数据信号”是指使得以在信号中编码信息的方式来设置或改变其一个或多个特性的信号。作为示例而非限制,通信介质包括诸如有线网络或直接线连接之类的有线介质,以及诸如声学、RF、红外及其他无线介质之类的无线介质。上述任何组合也应该包括在计算机可读的介质范围内。
***存储器830包括易失性和/或非易失性存储器形式的计算机存储介质,如只读存储器(ROM)831和随机存取存储器(RAM)832。包含诸如在启动期间帮助在计算机810内的元件之间传输信息的基本例程的基本输入/输出***833(BIOS)通常存储在ROM 831中。RAM832通常包含处理单元820可立即访问和/或当前正在操作的数据和/或程序模块。作为示例而非限制,图13例示出了操作***834、应用程序835、其它程序模块836和程序数据837。
计算机810还可以包括其它可移动/不可移动、易失性/非易失性计算机存储介质。仅作为示例,图13示出了从不可移动、非易失性磁介质中读取或向其写入的硬盘驱动器841,从可移动、非易失性磁盘852中读取或向其写入的磁盘驱动器851,以及从诸如CD ROM或其他光学介质等可移动、非易失性光盘856中读取或向其写入的光盘驱动器855。可在示例性操作环境中使用的其它可移动/不可移动、易失性/非易失性计算机存储介质包括但不限于,磁带盒、闪存卡、数字多功能盘、数字录像带、固态RAM、固态ROM等。硬盘驱动器841通常通过诸如接口840之类的不可移动存储器接口连接到***总线821,并且磁盘驱动器851和光盘驱动器855通常通过诸如接口850之类的可移动存储器接口连接到***总线821。
作为替换或补充,本文所述的功能可至少部分地由一个或多个硬件逻辑组件来执行。例如、但非限制,可使用的硬件逻辑组件的说明性类型包括现场可编程门阵列(FPGA)、程序专用的集成电路(ASIC)、程序专用的标准产品(ASSP)、片上******(SOC)、复杂可编程逻辑器件(CPLD)、等等。
上文讨论并在图13中示出的驱动器及其相关联的计算机存储介质为计算机810提供了对计算机可读指令、数据结构、程序模块和其它数据的存储。例如,在图13中,硬盘驱动器841被示为存储操作***844、应用程序845、其它程序模块846和程序数据847。注意,这些组件可与操作***834、应用程序835、其它程序模块836和程序数据837相同,也可与它们不同。在此操作***844、应用程序845、其它程序模块846以及程序数据847被给予了不同的编号,以至少说明它们是不同的副本。
用户可以通过诸如键盘862、话筒863以及诸如鼠标、跟踪球或触摸垫等定点设备861等输入设备来将命令和信息输入至计算机810中。其它输入设备(未示出)可以包括操纵杆、游戏手柄、圆盘式卫星天线、扫描仪等。这些以及其它输入设备通常通过耦合到***总线的用户输入接口860连接到处理单元820,但也可通过诸如并行端口、游戏端口或通用串行总线(USB)之类的其它接口和总线结构来连接。视觉显示器891或其他类型的显示设备也经由诸如视频接口890之类的接口连接至***总线821。除了监视器以外,计算机还可包括诸如扬声器897和打印机896之类的其它***输出设备,它们可通过输出***接口895来连接。
计算机810使用到诸如远程计算机880等一个或多个远程计算机的逻辑连接在网络化环境中操作。远程计算机880可以是个人计算机、手持设备、服务器、路由器、网络PC、对等设备或其它常见的网络节点,且一般包括以上关于计算机810描述的多个或所有的元件。图13中所示的逻辑连接包括局域网(LAN)871和广域网(WAN)873,但也可以包括其他网络。此类联网环境在办公室、企业范围的计算机网络、内联网和因特网中是常见的。
当在LAN联网环境中使用时,计算机810通过网络接口或适配器870连接到LAN871。当在WAN联网环境中使用时,计算机810通常包括调制解调器872或用于通过诸如因特网等WAN 873建立通信的其它手段。调制解调器872可以是内置的或外置的,可经由用户输入接口860或其它适当的机制连接到***总线821。在联网环境中,相关于计算机810所示的程序模块或其部分可被存储在远程存储器存储设备中。作为示例而非限制,图13示出了远程应用程序885驻留在远程计算机880上。应当理解,所示的网络连接是示例性的,并且可使用在计算机之间建立通信链路的其它手段。
还应注意,本文描述的不同实施例可以按不同的方式来组合。即,一个或多个实施例的各部分可以与一个或多个其他实施例的各部分组合在一起。本文中构想了所有这些。
尽管用结构特征和/或方法动作专用的语言描述了本主题,但可以理解,所附权利要求书中定义的主题不必限于上述具体特征或动作。更确切而言,上述具体特征和动作是作为实现权利要求的示例形式公开的。

Claims (15)

1.一种在计算机上实现的***,所述***包括:
用户界面组件,被配置成显示过程中的第一阶段序列;
编辑器组件,所述编辑器组件响应于对与所述第一阶段序列中的一个阶段相对应的新转换规则选择机制的用户致动来显示用户输入机制,其中所述用户输入机制包括用户可致动定义组件,所述用户可致动定义组件可被致动以定义新转换规则;以及
处理器,所述处理器是所述***的功能部件并且由所述用户界面组件和所述用户编辑器组件激活以促成显示和定义。
2.如权利要求1所述的***,其特征在于,所述用户输入机制进一步包括:
阶段选择组件,所述阶段选择组件可被致动以选择第一阶段和第二阶段,并且其中所述新转换规则控制所述第一阶段序列中的第一阶段与第二阶段之间的进度。
3.如权利要求1所述的***,其特征在于,所述处理器被配置成生成经更新的过程的经更新的显示,其中所述经更新的过程包括带有所述新转换条件的过程规则。
4.如权利要求2所述的***,其特征在于,所述阶段序列包括第三阶段,并且其中所述用户可致动定义组件被致动以将所述新转换规则定义为条件,如果所述条件被满足则允许从所述第一阶段移动到所述第二阶段,但如果所述条件未被满足,则引导从所述第一阶段移动到所述过程中的所述第三阶段。
5.如权利要求2所述的***,其特征在于,所述阶段选择组件进一步包括:
新阶段组件,其中对所述新阶段组件的用户致动导致所述编辑器组件提示所述用户通过设置与新阶段有关的至少一个转换条件来定义所述新阶段。
6.如权利要求1所述的***,其特征在于,所述新转换规则选择机制包括图标。
7.如权利要求1所述的***,其特征在于,所述新转换规则选择机制包括下拉菜单。
8.一种存储计算机可执行指令的计算机可读存储介质,所述指令在被计算机执行时使得所述计算机执行一种方法,所述方法包括:
接收用户希望创建过程中的一对现有阶段之间的转换条件的指示;
生成显示所述一对现有阶段中的至少一个给定阶段的用户界面显示;
使用从所述用户接收到的输入来定义所述转换条件;以及
使用处理器来生成所述转换条件的中间代码表示,其中所述中间代码表示能够由转换组件转换成能够作为所述过程的一部分执行的终端使用代码表示。
9.一种计算机实现的方法,包括:
显示过程中的阶段序列;
接收用户希望创建所述过程中的各阶段之间的转换条件的指示;
生成显示所述阶段中的至少一个给定阶段的用户界面显示;
基于接收到的用户输入来定义能够作为所述过程的一部分执行的转换条件;以及
生成示出所述转换条件的所述过程的经更新的显示。
10.如权利要求9所述的计算机实现的方法,其特征在于,定义所述转换条件还包括:
指派要求状态,其中所述要求状态包括在第一阶段与第二阶段之间移动之前所述转换条件是否必须被满足的指示,其中所述第一阶段和所述第二阶段通过所述转换条件在所述阶段序列中相连。
11.如权利要求9所述的计算机实现的方法,其特征在于,定义所述转换条件包括:
指示在所述过程内从两个阶段中的第一阶段移动到所述两个阶段中的第二阶段之前必须被完成的至少一个要求。
12.如权利要求9所述的计算机实现的方法,其特征在于,定义所述转换条件包括:
将所述转换条件定义为分支条件,其中所述阶段序列包括至少第一阶段、第二阶段和第三阶段,其中所述第一阶段与所述第二阶段和所述第三阶段两者相连。
13.如权利要求12所述的计算机实现的方法,其特征在于,将所述转换条件定义为分支条件包括:
定义分支指示,如果所述分支指示被满足,则导致所述过程从所述第一阶段移动到所述第二阶段,并且如果所述分指示未被满足,则导致所述过程从所述第一阶段移动到所述第三阶段。
14.如权利要求9所述的计算机实现的方法,其特征在于,接收所述用户希望创建所述新转换条件的指示进一步包括:
接收对新阶段创建用户输入机制的用户致动,所述用户致动指示所述用户希望在所述阶段序列中创建新阶段,其中如果所述转换条件被满足,则所述新阶段包括所述阶段序列中的下一阶段;以及
接收所述用户已经从选择菜单中选择了可选机制的指示,所述可选机制可被选择以创建所述转换条件。
15.如权利要求9所述的计算机实现的方法,其特征在于,进一步包括:
生成所述转换条件的中间代码表示,其中所述中间代码表示能够由转换组件转换成能够作为所述过程的一部分执行的终端用户代码表示。
CN201580011961.5A 2014-03-03 2015-02-27 具有分支和门控的便携式业务逻辑 Pending CN106133697A (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201461947173P 2014-03-03 2014-03-03
US61/947,173 2014-03-03
US14/314,478 2014-06-25
US14/314,478 US20150248203A1 (en) 2014-03-03 2014-06-25 Portable business logic with branching and gating
PCT/US2015/017882 WO2015134304A1 (en) 2014-03-03 2015-02-27 Portable business logic with branching and gating

Publications (1)

Publication Number Publication Date
CN106133697A true CN106133697A (zh) 2016-11-16

Family

ID=54006768

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580011961.5A Pending CN106133697A (zh) 2014-03-03 2015-02-27 具有分支和门控的便携式业务逻辑

Country Status (4)

Country Link
US (1) US20150248203A1 (zh)
EP (1) EP3114567A1 (zh)
CN (1) CN106133697A (zh)
WO (1) WO2015134304A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BR112015016446B1 (pt) 2013-01-09 2019-10-29 Basf Agro Bv processo para preparar compostos de fórmula ii, solução aquosa e uso da solução aquosa
CN112068815B (zh) * 2019-06-11 2022-03-29 华为技术有限公司 一种业务规则的处理方法及装置
US11836166B2 (en) 2020-02-05 2023-12-05 Hatha Systems, LLC System and method for determining and representing a lineage of business terms across multiple software applications
US11288043B2 (en) * 2020-02-05 2022-03-29 Hatha Systems, LLC System and method for creating a process flow diagram which incorporates knowledge of the technical implementations of flow nodes
US11348049B2 (en) 2020-02-05 2022-05-31 Hatha Systems, LLC System and method for creating a process flow diagram which incorporates knowledge of business terms
US11307828B2 (en) 2020-02-05 2022-04-19 Hatha Systems, LLC System and method for creating a process flow diagram which incorporates knowledge of business rules
US11620454B2 (en) 2020-02-05 2023-04-04 Hatha Systems, LLC System and method for determining and representing a lineage of business terms and associated business rules within a software application

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060005140A1 (en) * 2004-06-18 2006-01-05 Canon Kabushiki Kaisha User interface for workflow system
CN1755721A (zh) * 2004-10-01 2006-04-05 微软公司 组件化和可扩展的工作流模型
CN1838068A (zh) * 2004-09-29 2006-09-27 微软公司 协作应用程序中的工作流关联
CN101084494A (zh) * 2004-08-31 2007-12-05 国际商业机器公司 用于数据集成***的用户界面
US20120060150A1 (en) * 2010-09-07 2012-03-08 Red Hat, Inc. High performance execution in workflow bpm engine
CN101167052B (zh) * 2005-04-29 2012-05-16 微软公司 应用程序框架分阶段模型

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6115646A (en) * 1997-12-18 2000-09-05 Nortel Networks Limited Dynamic and generic process automation system
US7584420B2 (en) * 2004-02-12 2009-09-01 Lockheed Martin Corporation Graphical authoring and editing of mark-up language sequences
US20060174230A1 (en) * 2005-01-31 2006-08-03 Honeywell International Inc. Methods for hosting general purpose computer languages on speical purpose systems
US20060271870A1 (en) * 2005-05-31 2006-11-30 Picsel Research Limited Systems and methods for navigating displayed content
US8296727B2 (en) * 2005-10-14 2012-10-23 Oracle Corporation Sub-task mechanism for development of task-based user interfaces
CN101334865A (zh) * 2007-06-28 2008-12-31 国际商业机器公司 工作流用户界面生成方法及生成器
WO2009091088A1 (en) * 2008-01-15 2009-07-23 Postech Academy-Industry Foundation Method of generating user interface model applicable to various platform and apparatus thereof
US20090319948A1 (en) * 2008-06-20 2009-12-24 Smartdraw.Com Automated editing of graphics charts
US20120117537A1 (en) * 2010-11-02 2012-05-10 Velocio Networks, Inc. Flow Chart Programming Platform for Testers and Simulators
EP2469364A1 (de) * 2010-12-23 2012-06-27 Siemens Aktiengesellschaft Verfahren zum Erkennen eines Programmablaufs
US9355376B2 (en) * 2012-05-11 2016-05-31 Qvidian, Inc. Rules library for sales playbooks
US9489642B2 (en) * 2012-06-19 2016-11-08 Sap Se Flow based visualization of business rule processing traces
WO2014151017A1 (en) * 2013-03-15 2014-09-25 Arganteal, Llc Method of taking a computer architecture representation and generating manufaturing method capable of manufacturing computer systems in a specification
US20150149912A1 (en) * 2013-11-22 2015-05-28 Raytheon Company Interactive multimedia process flow chart analysis

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060005140A1 (en) * 2004-06-18 2006-01-05 Canon Kabushiki Kaisha User interface for workflow system
CN101084494A (zh) * 2004-08-31 2007-12-05 国际商业机器公司 用于数据集成***的用户界面
CN1838068A (zh) * 2004-09-29 2006-09-27 微软公司 协作应用程序中的工作流关联
CN1755721A (zh) * 2004-10-01 2006-04-05 微软公司 组件化和可扩展的工作流模型
CN101167052B (zh) * 2005-04-29 2012-05-16 微软公司 应用程序框架分阶段模型
US20120060150A1 (en) * 2010-09-07 2012-03-08 Red Hat, Inc. High performance execution in workflow bpm engine

Also Published As

Publication number Publication date
EP3114567A1 (en) 2017-01-11
US20150248203A1 (en) 2015-09-03
WO2015134304A1 (en) 2015-09-11

Similar Documents

Publication Publication Date Title
CN106133697A (zh) 具有分支和门控的便携式业务逻辑
US9342220B2 (en) Process modeling and interface
CN106471517B (zh) 对显示元素的因用户而异的可视化
CN105830019B (zh) 用于基本模型定制的集成环境
CN110073385A (zh) 电子邮件***中的文档链接
CN106068521A (zh) 关于合规策略更新的应用的通信状态
CN105612497A (zh) 所选更新在多个环境中的自动安装
CN105612495A (zh) 在计算机***中安装所选更新之后自动解决冲突
CN101495965A (zh) 语义富对象的动态用户体验
CN107408049A (zh) 模型驱动定制框架
CN107810509A (zh) 工作流生成和编辑
CN105765539A (zh) 具有自动生成的虚拟环境的用户支持体验
CN105264492A (zh) ***行为的自动发现
CN104737124B (zh) 用于提交服务的业务元数据的门户
US10223105B2 (en) Automatic configuration of a computer system based on process modeling of an implemented process
CN105612496A (zh) 基于存储的生命周期信息来自动推荐更新
CN105393213A (zh) 便携式业务逻辑
CN105408922A (zh) 过程流基础结构和配置界面
CN105339957A (zh) 显示实体的不同视图
US20140279823A1 (en) Lifecycle product analysis
CN106663090A (zh) 在编译期间将呈现元数据转换成浏览器可渲染格式
CN107257956A (zh) 具有自动升级的分层数据表面处理配置
CN105229638A (zh) 作为对内容的收集的贡献者的自动化的库管理员
CN106062793A (zh) 已被呈现的企业内容的检索
CN106062689A (zh) 知晓上下文的命令

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20161116

WD01 Invention patent application deemed withdrawn after publication