CN102999800A - 业务流程模型中对准用户的片断的自动识别 - Google Patents

业务流程模型中对准用户的片断的自动识别 Download PDF

Info

Publication number
CN102999800A
CN102999800A CN2012102262404A CN201210226240A CN102999800A CN 102999800 A CN102999800 A CN 102999800A CN 2012102262404 A CN2012102262404 A CN 2012102262404A CN 201210226240 A CN201210226240 A CN 201210226240A CN 102999800 A CN102999800 A CN 102999800A
Authority
CN
China
Prior art keywords
flow process
user
segment
mark
process segment
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
CN2012102262404A
Other languages
English (en)
Inventor
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.)
SAP SE
Original Assignee
SAP SE
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 SAP SE filed Critical SAP SE
Publication of CN102999800A publication Critical patent/CN102999800A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/067Enterprise or organisation modelling
    • 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

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Human Resources & Organizations (AREA)
  • Strategic Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Economics (AREA)
  • Operations Research (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • Physics & Mathematics (AREA)
  • Development Economics (AREA)
  • Game Theory and Decision Science (AREA)
  • Educational Administration (AREA)
  • User Interface Of Digital Computer (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本公开涉及一种用于提供业务流程模型中语义连贯的、对准用户的片断的自动识别的系统、软件和计算机实现的方法。一个过程包括用于识别与用户相关联的业务流程模型中的流程片段的层级的操作。确定与用户的角色相关联的至少一个流程元数据种类。为流程片断的层级中的每个流程片断计算分数,至少部分基于用户的角色对于至少一个流程元数据种类的可能感兴趣级别来计算分数。选择流程片断的层级中的至少一个流程片断以包括在要向用户呈现的业务流程模型的视图中,至少部分基于为至少一个流程片断计算的分数来进行选择。

Description

业务流程模型中对准用户的片断的自动识别
技术领域
本公开涉及一种用于提供业务流程模型(business process model)中语义连贯(coherant)的、对准用户(user-aligned)的片断的自动识别的软件、计算机系统和计算机实现的方法。
背景技术
业务流程是用于文档化(document)、传递、分析、治理、进行自动化控制、监视并优化业务组织的操作的手段。流程模型共同捕获业务目标、最佳实践、策略、对业务伙伴的合同接口(contractual interface)以及用于任务路由(route)的具体指令和单个流程步骤的执行。创建或编辑流程模型是一种合作成果,涉及多人,这些人(1)具有截然不同的功能角色(诸如IT专家、领域专家、流程分析家等);和(2)工作在业务组织的组织阶层(organizationalhierarchy)的不同级别,或者在一些实例中工作在业务组织的组织阶层的外部(例如,业务伙伴、消费者、厂商、现场管制(shop floor)职工、业务部门(Line-Of-Business,LoB)管理人员、C级管理等)。在生成或编辑流程模型中所涉及的用户可能对与流程模型相关联的不同细节感兴趣,或者可能仅了解流程模型的某些方面。
发明内容
本公开描述用于提供业务流程模型中语义连贯的、对准用户的片段的自动识别的技术。在有形存储介质上编码计算机程序产品,其中该产品包括用于使得一个或多个处理器执行操作的计算机可读指令。这些操作可以包括:识别与观看或修改流程模型的用户相关联的业务流程模型中的流程片段的层级。确定与用户的角色相关联的至少一个流程元数据种类。为流程片断的层级中的每个流程片断计算分数,至少部分基于用户的角色对于至少一个流程元数据种类的可能感兴趣级别来计算分数。选择流程片断的层级中的至少一个流程片断以包括在要向用户呈现的业务流程模型的视图中,至少部分基于为至少一个流程片断计算的分数来进行选择。
这些和其他实施例可以可选地包括一个或多个下述特征。通过自动流程片断检测算法来确定流程片断的层级。为每个流程片断计算分数包括计算与特定流程片断相关联的每个流程元数据种类的分数的加权平均值。选择至少一个流程片断进一步包括:识别流程片断的层级中的根流程片断;以及如果根流程片断的分数大于与该根流程片断相关联的子树中的流程片断的任意组合的平均分数,则选择该根流程片断以包括在业务流程模型的视图中。
选择至少一个流程片断进一步基于用户的业务流程模型的先前视图的历史。至少一个流程元数据种类包括以下中的至少一个:会话、服务消耗、事件接收、用户角色、道分配、流程日志或数据流。业务流程模型的视图包含与业务流程模型相关联的所有流程片断的完整呈现。基于与业务流程模型的先前视图有关的统计数据的分析来确定用户的角色对于至少一个流程元数据种类的可能感兴趣级别。
虽然一般性地描述为是在处理和变换相应数据的有形非瞬态媒体上具体化的计算机实现的软件,但是一些或所有方面可以是计算机实现的方法或可以被进一步包括在用于执行这里描述的功能的各个系统或其他设备中。在附图和下面的描述中阐述本公开的这些和其他方面以及实施例的细节。根据描述和附图以及权利要求,本公开的其他特征、目的和优点将是明显的。
附图说明
图1图示用于提供对准用户的业务流程片断的示例性环境;
图2图示使用合适的系统、诸如在图1中描述的系统的示例性业务流程的图,指示不同的流程片断;
图3是关于某些用户角色的示例性业务流程元数据种类的图表;
图4是图示使用合适的系统、诸如在图1中描述的系统鉴于会话(conversation)元数据来识别流程片断的图;以及
图5是用于使用合适的系统、诸如在图1中描述的系统来在业务流程模型的视图中提供对准用户的流程片段的示例性过程的流程图(flowchart)。
具体实施方式
本公开一般描述用于提供业务流程模型中语义连贯的、对准用户的片段的自动识别的计算机系统、软件和计算机实现的方法。业务流程管理(businessprocess management,BPM)可以包括将组织的流程表现为模型内的组件、步骤或数据流,以使得能够分析、自动控制、优化、设计(engineer)或扩展当前的业务流程。在一些实例中,业务流程建模可以涉及具有不同角色和技能集(skill set)的多个参与者或用户,其中取决于用户的角色,某些用户需要业务流程模型的不同视图。在某些实现方式中,取决于用户的角色而为不同的用户导出关于单个业务流程模型相符(consistent)的视图。视图可以与正观看流程模型或对流程模型做出贡献的用户的功能角色和组织阶层级别相对准(align)。
流程建模可以是一种合作成果,涉及具有不同角色、技能集以及技术或业务知识的多个人。在业务组织中具有不同角色的用户通常具有不同的任务。此外,从不同的观点并且在与用户的角色相对准的不同的粒度级别,用户对特定业务流程做出贡献并进行观看。例如,C级管理员可能主要对全球价值链(global value chain)感兴趣,而业务部分(LoB)管理员可能首要关注于部门内流程以及与其他部门或外部业务伙伴的流程的提供商或厂商关系。
组织阶层内的不同级别——诸如,例如现场管制级别用户、LoB管理、中间管理或C级管理——中的每个对于业务流程具有不同的视图。对于业务流程的特定视图可以具有不同程度的细节或包含关于不同主题的细节。对于业务流程的特定视图的细节的不同级别的例子可以包括任务级别、部门级别、跨部门(cross-department)级别(例如,价值链)或网络编制(orchestration)级别(例如,结合业务伙伴)视图。此外,在阶层级别内,可以存在不同的功能单元,每个功能单元具有不同的角色或专业,诸如IT专家、业务流程专家和分析家、业务专业人员等。换句话说,取决于用户的角色,不同的用户可以要求业务流程模型的不同视图。
尽管作为不同用户的结果给出对于流程模型的不同视图,但是期望业务流程与组织的业务目标相对准。作为根据所执行的改变的结果,这些贡献者利用对于业务流程的不同视图来工作的建模贡献者可能需要避免由于从这些贡献者做出的改变导致不一致性、矛盾或不兼容的流程。对于一致性,来自跨越不同级别和功能单元的用户应当工作在单个底层(underlying)流程模型上,以避免具有不兼容信息的矛盾流程模型。因此,流程建模中的不同参与者可能需要对应于不同粒度和流程模型的片断的、与他们的功能角色或专业相对准(align)以及还与他们的组织阶层相对准的视图。
对于业务流程所产生的视图可以包括得自于流程模型的块(block)或可重用流程片断(fragment)。在合适时,术语“块”或“流程片断”可以被互换使用,而不会脱离本公开的范围。下面的图2图示可以得自于示例性流程模型的示例性业务流程和可能的块。基于关于业务流程建模的标准,一些算法可以检测流程模型、诸如基于业务流程建模符号(business process modelingnotation,BPMN)的业务流程模型中的块。BPMN流程模型是面向图形的,但是某些算法可被用于识别流程模型中的块。BPMN流程模型可以包括块,块提供理解、训练或瓦解流程模型内的特征的能力,诸如在不同的流程粒度之间导航。在一些实例中,可以在基于BPMN的流程模型中提供用于不同终端用户角色的具有不同粒度的定制视图。然而,由与这样的流程模型相关联的算法识别的自动检测的块未必与语义连贯的流程片断有关。例如,算法可能主要依赖于关于控制流序列连接器的“单入口单出口”准则,并且可能没有考虑其他业务流程元数据来导出语义连贯的块。此外,当使用某些算法来确定对于用户的适当块时,在所导出的块、用户角色或与用户相关联的组织阶层级别之间可能并不存在关系。
在一些实现方式中,对现有的方案和算法进行了充实,以使得利用自动块检测能够将面向图形的流程模型(例如,BPMN)变换为面向块的流程模型。现有算法可以最初被用来执行强制很好形成BPMN流程的语法检查或用来将基于BPMN的流程模型翻译为基于BPEL的执行格式。因此,现有算法可以被补充以将图形结构的流程模型映射到块结构的流程。这些算法计算嵌套块的层级,嵌套块的层级用作找到适当流程视图的基线,该适当流程视图具有适合于特定用户角色的粒度和块的选择。可以提供贪婪式启发(greedyheuristic)算法来基于各种现有的流程元数据找到语义连贯的块或流程片断。也可以使用其他启发法,诸如遗传算法、模拟退火或最速下降法。能够提供适合于特定终端用户的对于流程模型的定制视图。定制视图可以与用户的功能角色和组织阶层级别相对准。对于不同的用户角色,可以参考不同的流程元数据以为每个特定用户找到定制流程视图。定制流程视图是包括互连块或子流的流程的完备且非重叠表现,所述互连块或者子流具有(1)定制粒度;和(2)其中选择块边界以使得块表现功能性的语义连贯的段。
在一些实例中,通过杠杆式调节(leverage)现有流程元数据来自动生成视图而无需手动干预。语义相关的流程片断内的块被自动识别,使得定制流程视图能够利用底层流程语言元模型的构造机制,诸如嵌入式和引用式子流程。因此,识别用户的功能角色,以自动确定业务流程模型的组件或模块,用户将很可能需要观看该组件或模块以便执行用户的角色所需的任务。可以例如根据查找表来识别与用户的角色相关联的一些因素,并且可以将这些因素包括在用于基于用户的角色来确定向用户呈现的适当块的计算中。在一些实现方式中,确定在向用户提供的业务流程模型视图中包括哪个块包括:基于与用户的角色相关联的、在查找表中找到的元数据种类以及与每个元数据种类相关联的权重来计算分数。根据一些“符合(fitness)值”来计算分数,这些符合值评价确定块有多符合那些准则。例如,应当向BPM专家呈现包括整个会话(与另一业务流程的消息交换)的块。如果在块中漏掉了那个会话的某些消息交换,或如果块包含不参与会话的其他流程步骤,则符合值低于100%。用于计算符合值的精确公式取决于元数据种类。总体分数是根据为用户的角色选择的元数据种类的符合值的加权平均值。
返回所图示的例子,图1图示用于提供业务流程模型中语义连贯的、对准用户的片断的自动识别的示例性环境100。所图示的环境100包括一个或多个客户端150以及服务器102、104和106,或与其可通信地耦接,它们中的至少一些跨越网络112来通信。通常,环境100表示能够基于用户在业务组织内的角色,来自动识别业务流程模型内的语义连贯的块以在针对用户的特定视图中呈现的系统的示例性配置。在一些实现方式中,用于确定针对不同用户的不同视图的块识别模块104可以被实现为诸如服务器102的服务器上的托管应用,客户端150处的用户可以通过网络112来对托管应用进行访问。此外,例如在基于分布式集群的环境中,可以跨越多个服务器、诸如服务器104和106来分布块识别模块104和由服务器102提供的其他业务。在基于分布式集群的环境中,可以在环境100中包括一个或多个额外服务器(例如,服务器104和106),每个服务器具有与在图1中对服务器102表示出的那些组件类似的组件并且在基于分布式集群的环境中提供与由服务器托管的分布式应用相关联的业务。在一些实例中,客户端150和服务器102、104及106可以在云计算网络内被逻辑地归组。因此,通过云计算网络以及传统的服务器-客户端系统或客户端150处的本地应用,该系统可以被提供为是按需解决方案(on-demand solution)。可替换地,可以通过传统的服务器-客户端实现方式或在客户端150处本地地提供块识别模块176,而无需通过网络112访问托管应用。
通常,服务器102是存储一个或多个业务流程应用172的任意服务器,其中经由请求和发送到图1中所图示的环境100内或可通信地耦接到该环境100的用户或客户端的响应来执行托管应用的至少一部分。例如,服务器102可以是包括Java技术——诸如Java企业柄(Enterprise JavaBeans,EJB)、JEE连接器架构(JEE Connector Architecture,JCA)、Java消息服务(Java MessagingService,JMS)、Java命名和目录接口(Java Naming and Directory Interface,JNDI)和Java数据库连接(Java Database Connectivity,JDBC)——的Java平台企业版(Java Platform,Enterprise Edition,JEE)兼容应用服务器。在一些实例中,服务器102可以存储许多各种业务流程应用172,而在另一些实例中,服务器102可以是意欲仅存储和执行单个业务流程应用172的专用服务器。在一些实例中,服务器102可以包括web服务器或与web服务器可通信地耦接,其中业务流程应用172表示由系统的客户端150经由网络112访问和运行的一个或多个基于web的应用,以执行业务流程应用172的编程的任务或操作。
在高级别处,服务器102包括可操作来接收、发送、处理、存储或管理与环境100相关联的数据和信息的电子计算设备。图1中图示的服务器102能够负责从一个或多个客户端应用或者与环境100的客户端150相关联的业务应用接收应用请求,通过在相关联的业务流程应用172中处理所述请求而响应所接收的请求,以及从业务流程应用170向请求客户端应用发送回适当响应。服务器102也可以从网络112上的其他组件接收请求并响应请求。可替换地,服务器102处的业务流程应用172可以能够处理和响应来自用户本地访问服务器102的请求。因此,除了来自在图1中图示的外部客户端150的请求之外,也可以从内部用户、外部或第三方顾客、其他自动化应用以及任何其他适当的实体、个体、系统或计算机发送与托管应用172相关联的请求。
当在本公开中使用时,术语“计算机”意欲涵盖任何适当的处理设备。例如,虽然图1图示出单个服务器102,但是可以使用一个或多个服务器(诸如服务器104和106)以及除服务器以外的计算机——包括服务器池——来实现环境100。事实上,服务器102和客户端150可以是任何计算机或处理设备,例如,诸如刀片服务器(blade server)、通用个人计算机(PC)、苹果机(Macintosh)、工作站、基于UNIX的工作站或任何其他合适的设备。换句话说,本公开预料了除专用计算机以及不具备传统操作系统的计算机之外的计算机。此外,所图示的服务器102和客户端150可以被适配为运行任何合适的操作系统,包括Linux、UNIX、Windows、Mac OS或任何其他合适的操作系统。
在本实现方式中,且如图1中所示,服务器102包括处理器168、接口165、存储器161和一个或多个业务流程应用172。接口165由服务器102用来与连接到网络112的客户端-服务器或其他分布式环境(包括环境100内的)中的其他系统(例如,客户端150以及可通信地耦接到网络112的其他系统)进行通信。通常,接口165包括以适当组合在软件和/或硬件中编码的逻辑,并可操作来与网络112通信。更具体而言,接口165可以包括支持与通信相关联的一个或多个通信协议的软件,使得网络112或接口的硬件可操作来在所图示的环境100内和其外部传达物理信号。
在一些实现方式中,服务器102可以包括用户接口,诸如图形用户界面(GUI)。GUI包括可操作来例如允许服务器102的用户为了任何适当的目的而与平台的至少一部分相接口的图形用户界面,所述适当的目的诸如是创建、准备、请求或分析数据、以及观看和访问与业务交易相关联的源文件。通常,GUI向特定用户提供由系统提供或在系统内传达的业务数据的高效且用户友好的呈现。GUI可以包括具有交互字段、下拉列表和由用户操作的按钮的多个定制框架或视图。例如,GUI可以提供交互元件,该交互元件允许用户从建议条目列表中选择,以用于输入到在GUI中显示的数据字段中。更一般地,GUI也可以提供允许用户访问和利用应用172的各种业务和功能的一般性交互元件。GUI通常是可配置的,支持表格和图形(条、线、饼状图(pie)、状态盘(status dial)等)的组合,并能够构建实时入口(portal),其中通过关键特征(例如,站点或微站点)来描述标签(tab)。因此,GUI预料了任何合适的图形用户界面,诸如普通web浏览器与命令行界面(CLI)的组合,其在平台内处理信息并向用户高效可视地呈现结果。
通常,示例性服务器102可以与网络112以及任何其他的本地或远程计算机——诸如额外的客户端、服务器或可通信地耦接到网络112但未在图1中图示的其他设备——可通信地耦接,网络112有助于环境100的组件之间(例如,服务器102和客户端150之间)的无线或有线通信。在所图示的环境中,网络112在图1中被描绘为单个网络,但是可以是连续或不连续网络,而不会脱离本公开的范围,只要网络112的至少一部分可以有助于发送方和接收方之间的通信即可。
网络112可以是企业或安全网络的全部或一部分,而在另一实例中,网络112的至少一部分可以表示到因特网的连接。在一些实例中,网络112的一部分可以是虚拟专用网络(VPN),例如诸如客户端150与服务器102之间的连接。此外,网络112的全部或一部分可以包括有线或无线链接。示例性无线链接可以包括802.11a/b/g/n、802.20、WiMax和/或任何其他合适的无线链接。换句话说,网络112涵盖可操作来有助于所图示的环境100的内部或外部的各种计算组件之间的通信的任何内网或外网、网络、子网或其组合。网络112例如可以在网络地址之间传达因特网协议(IP)分组、帧中继帧、异步传输模式(ATM)封包(cell)、语音、视频、数据和其他合适的信息。网络112也可以包括一个或多个局域网(LAN)、无线接入网(RAN)、城域网(MAN)、广域网(WAN)、因特网的全部或一部分、和/或一个或多个位置处的任何一个或多个其他通信系统。然而,网络112并非本公开的必需组件,并且可以在客户端处本地实现或在服务器102处本地实现诸如块识别模块176的、由服务器102托管的元素。
一个或多个客户端150可以具有对网络112内诸如服务器102的资源的访问。在一些实现方式中,网络112内的服务器(包括一些实例中的服务器102)可以包括用于提供基于云的服务的云计算平台。在适当时,术语“云”、“云计算”和“基于云的”可以被互换使用,而不会脱离本公开的范围。基于云的服务可以是托管服务,这些托管服务由诸如102、104和106的服务器提供并且跨越网络而被传递到客户端平台以增强、补充或替换在客户端计算机上本地运行的应用。客户端150可以使用基于云的服务来加快接收软件升级、应用和否则在资源能够被传递到客户端150之前将需要冗长时间段的其他资源。此外,其他设备也可以具有对基于云的服务——诸如由通过网络112可访问的服务器提供的按需服务——的访问。然而,云平台部署实现方式并非本公开的必需元素,并且也可以使用诸如基于集群的系统的其他分布式基础设施。
如图1中所图示的,服务器102包括处理器168。虽然在图1中图示为单个处理器168,但是根据具体需要、要求或环境100的具体实施例可以使用两个或更多个处理器。每个处理器168可以是中央处理单元(CPU)、刀片、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其他合适的组件。通常,处理器168执行指令并操纵数据,以执行服务器102的操作,具体而言,是执行一个或多个业务流程应用172。具体地,服务器的处理器168执行接收并响应来自客户端系统150和各个客户端应用154或环境100中的其他服务器104及106的请求所需的功能,以及执行业务流程应用172的其他操作所需的功能。
不管具体实现方式如何,“软件”可以包括有形非瞬时介质上的计算机可读指令、固件、布线的(wired)或编程硬件或其任意组合,可操作来当被运行时至少执行这里描述的处理和操作。事实上,可以以任何合适的计算机语言来全部或部分地编写或描述每个软件组件,包括C、C++、Java、Visual Basic、assembler、Perl、4GL的任何合适版本以及其他。一些软件可以与包括BPMN、BPEL、UML状态图表、事件驱动过程链(event-driven process chain,EPC)、佩特里网(Petri Nets)等的BPM标注相关联。应当明白,虽然在图1中图示的软件的部分被示出为通过各种对象、方法或其他过程来实现各种特征和功能的各个模块,但是在适当时作为替代软件可以包括多个子模块、第三方服务、组件、库以及诸如此类。反之,在适当时各种组件和特征和功能能够被组合到单个组件中。在图示的环境100中,处理器168运行服务器102上的一个或多个业务流程应用172。
在高级别,根据本公开,一个或多个业务流程应用172中的每个是可以运行、改变、删除、生成或管理——特别是响应于并且结合从所图示的客户端系统150及其相关联的客户端应用154接收的或通过网络112从其他服务器或组件接收的一个或多个请求——信息的任意应用、程序、模块过程或其他软件。在一些情况中,仅有一个业务流程应用172可以位于特定服务器102处。在另一些情况中,多个相关和/或不相关的业务流程应用172也可以被存储在单个节点102中,或跨越多个其他节点102而设置。在一些情况中,环境100可以实现复合业务流程应用172。例如,部分复合应用可以被实现为Java企业柄(EJB)或者设计时期组件可以具有将运行时(run-time)实现方式生成到不同平台——诸如JEE(Java平台企业版)、ABAP(高级企业应用编程)对象或Microsoft’s.NET等——中的能力。
另外,一个或多个业务流程应用172可以表示由远程系统150或客户端应用154经由网络112(例如,通过因特网)访问和执行的基于web的应用。此外,虽然被图示为在网络112内部,但是与特定业务流程应用172相关联的一个或多个过程可以被远程地存储、引用或运行。例如,特定业务流程应用172的一部分可以是与远程调用的应用相关联的web服务,而业务流程应用172的另一部分可以是为在客户端系统150处处理而打包(bundle)的接口对象或代理。此外,任一业务流程应用172或其全部可以是另一软件模块或企业应用(未示出)的孩子或子模块,而不会脱离本公开的范围。再者,可以由直接工作在服务器102处的用户或在客户端系统150处远程工作的用户来执行部分业务流程应用172。
如所图示的,服务器102也能够包括业务流程管理(BPM)运行时(runtime)174,该BPM运行时174提供用于执行业务流程应用的服务、库和工具。BPM运行时174也可以处理对业务流程的任何状态改变,包括与基于所接收的事件流程步骤的执行相关联的状态改变。服务器102包括使用现有算法检测块的块检测模块178。服务器102也可以运行块识别模块176,其提供业务流程模型语义连贯的块的自动识别,以向用户呈现与用户的角色和识别对准的业务流程视图。在一些实现方式中,可以通过不同处理器或服务器102外部的服务器来运行块识别模块176,诸如通过可通过网络112通信地耦接到服务器102的服务器。例如,块识别模块176可以被提供为通过云计算网络的随机应变业务、被提供为经由网络112可访问的web服务、被提供为在专用服务器上提供的服务或被提供为基于集群的分布式网络中的应用。
块识别模块176可以提供如下接口、模块、业务或元数据定义,该接口、模块、业务或元数据定义使得客户端应用154例如能够基于用户的角色或与用户相关联的其他上下文数据来呈现具有语义连贯的块的业务流程模型的特定视图,其中语义连贯的块与客户端应用154的特定用户有关。在本公开中,业务流程可以是诸如活动、人物、事件、关口的过程步骤或者与特定业务上下文、业务伙伴或消费者相关联地执行的顺序步骤的任何有向图。可以作为计算机程序在软件中和/或结合计算机微处理器、服务器、工作站、计算机程序实例、在计算机程序内运行的线程或其他数据处理元素来执行业务流程。此外,当在本公开中使用时,块识别模块176可以与业务流程应用172分离,而在其他实例中,块识别模块176可以被嵌入在业务流程应用172或一个或多个其他托管应用中或者是业务流程应用172或一个或多个其他托管应用的一部分。
一般,服务器102也包括用于存储数据和程序指令的存储器161。存储器161可以包括任何存储器或数据库模块,并且可以采用易失性或非易失性存储器的形式,包括但不限于磁媒体、光学媒体、随机存取存储器(RAM)、只读存储器(ROM)、可移动媒体或者任何其他合适的本地或远程存储组件。存储器161可以存储各种对象或数据,包括类、框架(framework)、应用、备份数据、业务对象、工作(job)、网页、网页模板、数据库表格、存储业务和/或动态信息的知识库以及任何其他合适的信息,该任何其他合适的信息包含任意参数、变量、算法、指令、规则、约束或与服务器102及其一个或多个业务流程应用172的目的相关联的对其的引用。
存储器161也可以存储诸如由块识别模块176使用的业务流程模型164的数据对象。例如,特定流程模型164可以包括与特定业务流程相关联的流程模型定义和参数。当块识别模块176正识别流程模型块以基于用户的角色为用户呈现流程模型上的特定视图时,可以从存储器161中获取流程模型164。存储器161也可以存储与流程实例165相关联的信息。流程实例165可以在业务流程的修改期间由运行时环境来获取。流程实例可以包含保存特定流程的状态的变量。这些变量使用诸如指令指针和保存在流程的执行期间操纵的业务文件的实例的变量来捕获控制和数据流的进展。存储器161也可以存储:其他业务流程元数据166,用于识别用户的特定上下文以确定在流程模型的视图中向用户呈现的适当块和信息。例如,业务流程元数据166可以被按种类归组,如下面参照图3描述。一些元数据种类可能与某些用户角色更为相关,并且因此基于与用户的角色相关的元数据种类来为特定用户识别块。因此,在一些实例中可以杠杆式调节业务流程元数据166,以确定语义有关的流程片断的块以便自动生成与用户的角色对准的视图,而无需手动干预。
图1中图示的环境也包括一个或多个客户端150。每个客户端150可以是任何计算设备,该计算设备可操作来连接到至少一个服务器102或与至少一个服务器102通信,和/或使用有线或无线连接、经由网络112而连接到至少一个服务器102或与至少一个服务器102通信。在一些实现方式中,如图1中所图示的,客户端150也可以包括处理器156、接口155、图形用户界面(GUI)152、客户端应用154和存储器158。通常,客户端150包括可操作来接收、发送、处理和存储与图1的环境100相关联的任何适当的数据的电子计算设备。应当明白,可以存在与环境100相关联或在其外部的任意数量的客户端150。例如,虽然所图示的环境100包括一个客户端150,但是环境100的替换实现方式可以包括可通信地耦接到服务器102的多个客户端、或适合于环境100的目的的任何其他数量的客户端。此外,可以在环境100的图示部分之外存在一个或多个额外的客户端150,它们能够仅经由网络112与环境100交互。另外,在适当时,术语“客户端”和“用户”可以互换使用,而不会脱离本公开的范围。此外,虽然关于由单个用户使用来描述每个客户端150,但是本公开预料到许多用户可以使用一台计算机或一个用户可以使用多台计算机。
与客户端150相关联的GUI 152包括图形用户界面,其可操作来例如用于允许客户端150的用户为了任何适当的目的而与平台的至少一部分相接口,所述适当的目的诸如是创建、准备、请求或分析数据、以及观看和访问与业务交易相关联的源文件。通常,GUI 152向特定用户提供由系统提供或在系统内传达的业务数据的高效且用户友好的呈现。GUI 152可以包括具有交互字段、下拉列表和由用户操作的按钮的多个定制框架或视图。例如,GUI152可以提供允许用户输入、修改、选择的交互元件或在GUI 152内的业务流程实例的模型元素。例如,可以通过GUI 152——诸如通过web浏览器来向用户呈现——或者可由用户访问——基于用户在业务组织内的角色的业务流程的视图。可以在GUI 152中用图形的方式来渲染和呈现业务流程步骤、依存关系和修改选项,以允许用户对业务流程建模任务做出贡献或观看业务流程建模任务。更一般地,GUI 152也可以提供允许用户访问和利用应用154的各种服务和功能的一般性交互元件。GUI 152通常是可配置的,支持表格和图形(条、线、饼状图、状态盘等)的组合,并能够构建实时入口,其中通过关键特征(例如,站点或微站点)来描述标签(tab)。因此,GUI 152预料了任何合适的图形用户界面,诸如普通web浏览器、智能引擎与命令行界面(CLI)的组合,其在平台内处理信息并向用户高效可视地呈现结果。
当在本公开中使用时,客户端150意欲涵盖个人计算机、触摸屏终端、工作站、网络计算机、机房(kiosk)、无线数据端口、智能电话、个人数据助理(PDA)、这些或其他设备内的一个或多个处理器、或者任何其他合适的处理设备。例如,每个客户端150可以包括具有输入设备和输出设备的计算机,其中该输入设备诸如键盘、触摸屏、鼠标或能够接受用户信息的其他设备,并且该输出设备传送与服务器102(和业务流程应用172)或客户端150自身的操作相关联的信息,包括数字数据、可视信息、客户端应用154和GUI 152。输入设备和输出设备二者可以包括固定的或可移动的存储媒体,诸如磁存储媒体、CD-ROM、或者适合于通过显示器、即GUI 152来从客户端150的用户接收输入并提供输出的其他适当媒体。
虽然图1被描述为包括多个元素或与多个元素相关联,但是可以是并非在本公开的每个可替换实现方式中都利用在图1的环境100内图示的所有元素。例如,虽然图1描绘了在能够由客户端计算机150访问的服务器102、104和106处实现托管应用的基于分布式集群的环境,但是在一些实现方式中,服务器102运行其特色在于可由用户直接利用GUI 152来访问的应用UI的本地应用。此外,虽然图1描绘了服务器102在网络112的外部,但是服务器可以被包括在网络112内,例如作为云网络解决方案的一部分。另外,这里描述的一个或多个元素可以位于环境100的外部,而在其他实例中,一些元素可以被包括在所描述的一个或多个其他元素以及在所图示的实现方式中未描述的一个或多个其他元素内或作为其的一部分。此外,在图1中图示的一些元素可以与其他组件组合,以及用于除了这里描述的那些目的之外的替换或额外目的。
图2图示业务流程200的示例性图和所识别的与业务流程200相关联的块。如图2中所描绘的,业务流程200可以包括包含众多步骤或元素的控制流。可以使用现有算法来确定组成业务流程200的块,包括在每个块中包括哪些元素。如在图2中看到的,业务流程200可以被划分为三个不同的块,块202、块204和块206。三个块中的每个可以包括业务流程200的截然不同的非重叠部分,在每个块中具有不同流程步骤。虽然图2图示了具有被清楚识别的三个块的业务流程200,但是可以对于业务流程200识别更少或更多的块。例如,业务流程200可以包括单个的总体块,或者业务流程200能够被划分为两个单独的块(而不是如图2中所描绘的三个块)。此外,业务流程200可以与诸如嵌套块的、块的额外层次相关联。例如,业务流程200内的特定步骤可以与子流208相关联。在一些实例中,子流208可以是块206内的单独的嵌套块。此外,业务流程200也可以沿不同的边界而被划分成块。
在一些实现方式中,在用于向用户呈现的视图中包括的块可以与一套准则相符。例如,可以要求为用户生成的视图在该视图内呈现关于业务流程的所有流程产物(artifact)方面是完备的。换句话说,在特定视图内从头到尾地覆盖业务流程并且不省略任何流程产物,即使有些产物在视图内可能并不以全部的细节展开。用于生成视图的第二准则可以是在视图内包括的块是没有交集的(disjoint)。没有交集的块的特征在于某些产物是被禁止包含在两个或更多个不同的块中的。然而,没有交集的块可以包括嵌套块,诸如当特定块也包括被表现为嵌套块的子流208时。
在一些实现方式中,当生成视图时可以使用的另一准则是为特定用户角色优化视图。业务组织内处于不同角色的用户可能对业务流程模型的不同视图感兴趣,其中不同的视图可以包含用于向用户呈现的块的不同安排。例如,IT专家可能对如何最有效地使业务流程自动化以及如何将业务流程配置为映射到现有IT场景规划(landscape)感兴趣。BPM专家可能对优化业务流程的方式感兴趣,LoB管理员可能试图了解招致的潜在成本,并且C级管理人员可能试图了解某些进程或流程的意图。在任一情况下,处于不同角色中的每个的用户可能对不同数据或流程模型的不同粒度级别感兴趣。因此,向具有不同角色的用户呈现的视图可以被调整,以与接收该视图的特定用户的需求、角色和技能集相对准。
图3图示业务组织内的示例性用户角色以及每个用户角色可能感兴趣的示例性流程元数据种类、产物、主题或项目编组(grouping)的图表300。在一些实现方式中,可以从BPMN流程建模语言中导出元数据种类,如图3中所图示的,但是也可以从其他源来导出元数据种类。图表300可以是查找表的形式,以允许用户的角色和用户可能感兴趣的编组的高效识别,从而能够在用于用户的视图中包括适当的块或块集合。如图2中所图示的,业务流程模型可以被划分为块,其中块的不同组合相对于业务流程提供不同粒度级别。然后,可以向用户呈现块的特定组合以作为业务流程上的特定视图,其中每个视图与用户在业务组织内的角色相对准并且包括用户最可能感兴趣的流程模型块。可以通过识别具有特定角色的用户将最可能感兴趣的元数据种类来发起对于向特定用户呈现哪个块的确定。在一些实例中,可以识别用户的角色并可以根据查找表——诸如在图3中的图表所呈现的——来识别对于该角色中的用户的潜在元数据种类。虽然图3图示了用户可能潜在感兴趣的几个示例性元数据种类,但是查找表可以是动态的,并且取决于情形和什么流程元数据是可以获得的,可以向查找表添加额外的用户角色(列)或业务流程种类(行)。可以用于生成用户对准的视图的元数据种类不限于在图3中示出的种类,并且不必包括所示出的每个种类。此外,在适当时,可以基于用户角色、动作和其他因素来手动定义或自动定义查找表300。
如在图3中看到的,具有特定角色的用户感兴趣的一个元数据种类可以包括会话。会话可以是属于为一个或多个共同目标提供服务的逻辑上连贯的消息交换的进入(inbound)消息和出去(outbound)消息的编组。会话边界可以用于定义语义连贯的流程片断或块。例如,业务流程的BPMN表示能够将相关消息的集合归组为会话产物。到达和来自同一业务伙伴、系统或流程的多个消息可以被归组为会话实体。在一些实例中,可以利用相对于会话实体的不同粒度级别来定义块,诸如在一个块中包括的单个会话、属于同一业务伙伴的所有会话、或块内的会话实体的任何其他适当的编组。
与某些角色相关联的一些用户可能对使得用户能够观看包含对于特定会话的消息交换的块的视图感兴趣。如图3中的标记302b和302c所指示的,例如与BPM专家326、流程分析家326或LoB管理员角色328相关联的用户可能对被归组到特定对话的消息感兴趣。然而,IT专家324可能并不对消息如何被归组感兴趣,相反,可能对各个消息或服务消耗(consumption)更感兴趣。因此,为IT专家324生成的视图可能不基于向IT专家324提供的会话产物。在某些实例中,与现场管制(shop floor)322或C级管理人员330角色相关联的用户可能对会话具有一些兴趣,如用带括号的标记302a和302d所指示的。
换句话说,现场管制用户322或C级管理用户330对会话具有兴趣的可能性可能小于例如BPM专家326但是大于IT专家324。该可能性反应于当为块计算分数时关于该元数据种类的符合值(fitness value)权重中。例如,该种类(“会话”)的权值对于BPM专家和LoB管理员可以是1.0,并且对于现场管制人员和C管理员可以是0.5(当然,也可以预料到其他加权因子)。查找表300建议了适当权重的范围。此外,标记302a和302d可以指示:现场管制用户322或C级管理用户330对会话产物具有的潜在兴趣在那个时候是未知的,并且可以取决于生成视图的特定上下文。在一些实现方式中,可以在查找表300中使用变量、乘子、百分比或其他值来代替“x”标记,以表示具有特定角色的用户对特定产物所具有的兴趣的相对可能性。然后,可以使用这些值为要向与特定角色相关联的用户呈现的不同的可能视图和块的组合中的每个生成分数。
分数的示例性计算可以包括识别应用于当前用户角色的所有元数据种类。对于所有所识别的元数据种类,计算对于考虑中的块的“符合值”。在一些实例中,用于计算符合值的算法特定于元数据种类。算法采用当前块以及可选地采用用户角色作为输入,并返回范围在0至1中的值,其中0表示“最不符合”且1表示“最符合”。总体块分数被计算为所有符合值的加权平均值,其中可以在查找表300中识别权值。在所图示的例子中,“x”可以表示权值为1,且“(x)”可以表示权值为0.5。表300的其他变体可以给出范围在0和1之间的更精确的权值。对于n个所选择的元数据种类,Fi是元数据种类i的符合值,并且Wi是其权值,可以如下计算分数:
分数=(1/n)×(F1×W1+F2×W2+…+Fn×Wn)
图4图示基于特定用户角色是否需要观看对话而识别可能块以包括在业务流程的视图中的示例性方案400。如图4中所描绘的,业务流程可以例如包括事件410并且持续通过事件422和430。在所图示的例子中,在事件410处发送消息。在中间消息事件430处,可以通过与业务流程相关联的实体接收消息450b。在本例子中,消息450a和450b可以是同一会话460的一部分。在一些实例中,取决于需要业务流程的特定视图的用户的需求,块可以被识别为包括业务流程中的一个或多个事件。例如,块401可以被定义为使得事件410和420被包括在块401内,而块402可以被定义为包括事件430以及可能的其他事件。
然而,包括块401和402作为分离的块的视图将不提供在同一块内包括消息450a和450b的会话460的视图。在一些实例中,用户可能不需要整个会话460的视图。例如,基于用户角色和感兴趣产物的查找表,诸如在图3中所描绘的,IT专家可能不需要观看具有消息的编组的整个会话,因为IT专家可能对一个流程如何与其他流程通信并不感兴趣。然而,如在图3中的查找表看到的,BPM专家可能对观看具有消息450a和450b的整个会话460具有兴趣,因为BPM专家可能需要优化业务流程与其他系统或业务流程的交互。因此,BPM专家可能更喜欢在为BPM专家提供服务的特定流程模型中具有属于同一(或多个)块的会话460内的所有消息(消息450a和460b)。在所图示的例子中,块403可以被定义为使得其与BPM专家的观看会话460的需求相对准。如在图4中看到的,块403包括涵盖消息450a和消息450b二者的事件410、420和430。因此,因为块403提供包括会话460中的全部两个消息的视图,所以其可以适合于包括在对于BPM专家的视图中。
返回在图3中图示的例子,当从流程模型块生成视图时,可以考虑其他产物和编组。例如,服务消耗304编组可以被用于将企业资源计划(enterpriseresource planning,ERP)系统内的服务消耗归组到一些种类中。所消耗的服务可以包括公共web服务、企业服务、商业应用编程接口(business applicationprogramming interface,BAPI)或业务对象。在一些实例中,对于公共web服务的技术编组可以基于服务接口的命名空间、域和物理服务提供商系统、服务签名中的公共数据类型或其他技术服务特征,诸如安全设置或服务的协议是SOAP(Simple Object Access Protocol,简单对象访问协议)还是基于REST(Representational State Transfer,表述性状态转移)的。例如,用于将企业服务归组的具体种类可以包括例如解决方案图(例如,“High Tech-Business,Medical,and Consumer OEMs(高科技-业务、医疗和消费者OEM)”)、业务场景图(例如,“High Tech:DRM Agreement Negotiation(高科技:DRM协议谈判)”)、流程种类(例如,“产品管理”)、业务流程(例如,“产品策略和计划”)或流程组件(例如,“业务文档流处理”)。
在一些实例中,用户可能不需要观看一个块中不同服务的编组。诸如创建订购单或登记请假条的企业服务可能是截然不同且不同种类的服务,并且例如现场管制用户322为了执行现场管制用户的任务的目的将把服务当作是不连续的。类似地,C级管理人员330用户可能不需要与服务消耗304相关联的技术信息。然而,从IT专家324的观点看,服务消耗304编组可能是重要的,这是因为当IT专家324配置用于调用(invocation)或消耗的服务或当IT专家纠正系统的连接问题时IT专家324将从观看与特定系统交互的业务流程的部分中获益。
如从图3中看到的,事件接收306是能够被用来确定包括在对于用户的特定视图中的适当块的另一可能元数据种类。在一些实例中,可以例如基于事件是否源自同一技术系统、业务流程或业务对象来对事件进行归组。例如,为流程分析家生成的视图可以包括接收事件或与特定业务流程独占交互的流程片断。也可以相对于用户角色308和与组织阶层级别的关系来生成视图,诸如事件是否与流程/任务管理人、一些用户任务的潜在或独占所有者、或者通知接收方相关联。用户角色308关系对于确定任务处理和观看向某些用户角色分配哪些流程步骤可能是有利的。诸如LoB管理者308和C级管理人员330的与人员管理角色相关联的用户可能对用户角色308关系感兴趣,以在管理者的角度(direction)确定与不同用户相关联的任务。
在一些实现方式中,可以部分地通过考虑业务流程内的道分配(laneassignment)310来定义要被包括在视图中的块的识别。与业务流程相关联的控制流可以进入业务流程中的不同的功能单元或从其退出。例如,功能单元可以是业务组织内的任何结构或逻辑单元,诸如部门、特定用户角色或特定人。在业务流程模型中,与每个功能单元或角色相关联的步骤、活动和数据流可以被表示为业务流程模型中的不同的“道”,并且当控制流从一个功能单元移动到不同的功能单元时,数据流进入和退出与每个功能单元相关联的不同的道。在一些实例中,道可以被分配给特定用户角色,诸如执行与特定道相关联的任务的用户。因此,为与特定道相关联的用户生成的视图可以包括包含那个道内的所有活动的块。如果业务流程向不同的道分叉而没有重新进入与该用户相关联的道,则可以在分离的块中表示处于不同道中的业务流程的部分,并且可以不在展开视图中向用户呈现关于该分离的块的细节。
也可以从流程日志312中导出语义连贯的流程片断或块。流程日志可以包括从先前业务流程运转中收集或记录的数据。在流程日志中收集的历史数据的例子可以包括关于最频繁运行的流程分支的统计数据、与人有关的任务的实际处理者、或者单个流程活动的周转时间(turnaround time)以及相邻活动之间的反应时间。然后,来自流程日志的历史数据可以用于导出语义连贯的流程片断(latency)。例如,块可以被定义为完全由下述模型元素组成,所述模型元素来自最频繁运行的流程分支或由单个人完成的任务。如图3中所图示的,生成业务流程模型的视图也可以至少部分地取决于数据流314。在一些实例中,基于数据流314来识别块可以涉及基于实体访问的数据对象来将实体归组。可以通过从业务流程上下文的某些元素——诸如所建模的形成流程状态的数据对象集合——中读取或向其写入来识别语义连贯的块。如图3所描绘的,与不同角色相关联的用户可能对具有基于流程日志312或数据流314定义的块的视图具有不同的潜在兴趣。
图5图示用于提供基于用户的角色而为用户定制的流程模型的视图的示例性流程500。在505检测流程模型中的块的嵌套层级。可以使用某些块检测算法来计算嵌套块的层级(hierarchy),所述嵌套块的层级充当用于找到适合于用户角色的适当流程视图的基线(baseline)。在一些实例中,诸如BPMN流程模型的非块结构的流程模型中的自动块检测算法可以依赖于对于控制流序列连接器的“单入口单出口”准则来识别块的层级。然后,在510识别与流程模型相关联的用户。所识别的用户可以是可能需要访问业务流程模型的特定视图的任何用户,诸如建模流程的贡献者或需要为一些任务而观看流程模型的用户。取决于用户的角色,用户可能对与流程模型相关联的某些部分、层或细节级别更感兴趣。然而,用于自动检测流程模型内的块的算法可能没有利用流程元数据来导出与用户的角色或组织阶层级别相对准的语义连贯的块。因此,在515基于用户的角色来确定与用户相关联的流程元数据种类。在一些实例中,可以通过公司的组织图表来确定用户的角色,并且可以通过如图3中所示的查找表来识别与用户角色相关联的流程元数据。
如上面关于图3所描述的,流程元数据种类是在业务组织内具有特定角色的用户可能感兴趣的与业务流程相关联的元数据的种类。元数据种类可以从诸如BPMN的流程建模语言中导出,并且可以被用于找到用于用户的定制流程视图。具有某些角色的用户可能对观看在某些种类中包含的数据感兴趣,而其他角色的用户可能对其他元数据种类感兴趣。上面结合图3描述了流程元数据种类的例子。与特定用户角色相关联的用户对每个流程元数据种类感兴趣的可能性可以被用来确定包含具有适合于用户的适当细节量的信息的块。换句话说,识别适当的流程元数据,以基于组织图表中的用户级别(例如,现场管制用户、LoB管理员等)和用户的功能角色或专业(例如,IT专家、流程分析家、领域专家、业务专家等)来确定关于用户的语义连贯的流程片断。
在520,遍历(traverse)块的层级,以基于流程元数据种类为每个被访问块计算分数。如在505所确定的,块的层级可以包括根块和子块。层级是如下树结构,该树结构具有单个根(其初始是整个流程模型)、内部节点(其是流程内部的块)以及形成最小的“块”的、作为原子(不可分解的)流程步骤的叶子节点。对每个块计算反应该块对于与用户相关联的用户角色的“适当性”的分数。在一些实现方式中,可以通过与每个元数据种类相关联的函数来计算每个块的分数,所述函数基于与用户相关联的上下文信息——诸如功能角色或组织阶层级别以及元数据属性——产生值。评价给定元数据种类的编组和粒度规则,以确定特定块对于特定用户角色的“适当性”级别。如果多个元数据种类对块的分数做出贡献,则加权平均值将各个种类的各分数规格化为该块的全局分数,该块的全局分数能够与其他块的分数进行比较。
在已经为块的层级中的块计算了分数之后,需要选择适当的块以用于包括在向用户提供的视图中。在525识别根块。根块可以是流程模型内的顶级(top-level)块。如果在530确定根块的分数大于该根块下的同一子树中的任何子块的无交集且完备组合的平均分数,则在535选择该根块以用于包括在向用户提供的视图中。如果根块的分数不大于子块的任意组合的平均分数,则不选择该根块包括在视图中。对于块的层级中的其他根块重复该选择过程。如果在540确定在层级中存在其他根块,则选择过程返回到在525识别其他根块并且重复基于为每个块生成的分数的比较对根块的选择。如果在层级中不存在其他根块,则在545向用户提供视图,该视图包括被选择为最适合于特定用户角色的块以及块的任何相关联的组合。除了检查块的所有可能组合并选择与用户角色最佳匹配的组合之外,或作为其的替换,还可以使用启发式方法(诸如贪婪算法、最速下降、遗传算法、模拟退火等)来通过搜索具有合意特征的块组合而节省成本。
虽然上述用于识别要向用户呈现的适当块的选择过程涉及遍历块的层级和将根块的分数与同一子树内的块的组合的分数进行比较,但是选择用于包括在与用户角色对准的视图中的适当块的其他方法也在本公开的范围内。例如,可以基于、至少部分基于用户请求或生成的先前视图的历史来利用块的特定组合而生成特定视图。该过程可以包括相关的反馈机制,该反馈机制使得用户对于块的抉择的偏好(例如,它们的粒度)成为专用元数据种类,该专用元数据种类影响最终做出抉择的总体分数。此外,可以相对于特定用户或跨越多个用户而收集历史数据。然后,历史数据可以被用来生成业务流程模型的未来视图,以提供与用户的可能兴趣或需求相对准的视图。额外的特征也可以被包括在向用户提供的视图中。例如,可以基于用户的角色而在向用户提供的视图中自动“向下挖掘(drill-down)”或展开业务流程内的某些层、粒度或活动。类似地,可以基于用户的角色在业务流程模型内卷起(rollup)或在视觉上对用户隐藏一些细节。
前述附图以及伴随的描述示出示例性过程和计算机可实现的技术。但是环境100(或者其软件或其他组件)预料了使用、实现或运行用于执行这些或其他任务的任何合适的技术。应当理解,这些过程仅仅是为了说明性的目的,并且可以在任何适当的时间执行所描述的或类似的技术,包括并发地、单独地或组合地。此外,这些过程中的许多步骤可以同时发生和/或以与所示出的次序不同的次序而发生。此外,环境100可以使用具有额外步骤、更少步骤和/或不同步骤地过程,只要方法保持适当即可。
换句话说,虽然已经就一些实施例和通常相关联的方法方面描述了本公开,但是这些实施例和方法的变更和置换对于本领域技术人员来说是显然的。因此,示例性实施例的上面描述不限定或约束本公开。也可以存在其他改变、替换和变更,而不会脱离本公开的精神和范围。

Claims (20)

1.一种由一个或多个处理器执行的计算机实现的方法,用于提供对业务流程模型中语义连贯的、对准用户的片断的自动识别,该方法包括下述操作:
识别与用户相关联的业务流程模型中的流程片段的层级;
确定与该用户的角色相关联的至少一个流程元数据种类;
为该流程片断的层级中的每个流程片断计算分数,至少部分基于该用户的角色对该至少一个流程元数据种类的可能感兴趣级别来计算分数;以及
选择该流程片断的层级中的至少一个流程片断以包括在要向该用户呈现的业务流程模型的视图中,至少部分基于为该至少一个流程片断计算的分数来进行该选择。
2.根据权利要求1所述的方法,其中,通过自动流程片断检测算法来确定流程片断的层级。
3.根据权利要求1所述的方法,其中,为每个流程片断计算分数包括计算与特定流程片断相关联的各个流程元数据种类的分数的加权平均值。
4.根据权利要求1所述的方法,其中,选择至少一个流程片断还包括:
识别该流程片断的层级中的根流程片断;以及
如果该根流程片断的分数大于与该根流程片断相关联的子树中的流程片断的所有组合的平均分数,则选择该根流程片断以包括在业务流程模型的视图中。
5.根据权利要求1所述的方法,其中,选择至少一个流程片断还基于该用户的业务流程模型的先前视图的历史。
6.根据权利要求1所述的方法,其中,该至少一个流程元数据种类包括以下中的至少一个:会话、服务消耗、事件接收、用户角色、道分配、流程日志或数据流。
7.根据权利要求1所述的方法,其中,业务流程模型的视图包含与业务流程模型相关联的所有流程片断的完整呈现。
8.根据权利要求1所述的方法,基于与业务流程模型的先前视图有关的统计数据的分析来确定该用户的角色对于该至少一个流程元数据种类的可能感兴趣级别。
9.一种在非瞬态有形存储介质上编码的计算机程序产品,该产品包括用于使得一个或多个处理器执行操作的计算机可读指令,这些操作包括:
识别与用户相关联的业务流程模型中的流程片段的层级;
确定与该用户的角色相关联的至少一个流程元数据种类;
为该流程片断的层级中的每个流程片断计算分数,至少部分基于该用户的角色对该至少一个流程元数据种类的可能感兴趣级别来计算分数;以及
选择该流程片断的层级中的至少一个流程片断以包括在要向该用户呈现的业务流程模型的视图中,至少部分基于为该至少一个流程片断计算的分数来进行该选择。
10.根据权利要求9所述的计算机程序产品,其中,基于与该用户相关联的组织图表来确定该用户的角色。
11.根据权利要求9所述的计算机程序产品,其中,为每个流程片断计算分数包括计算与特定流程片断相关联的各个流程元数据种类的分数的加权平均值。
12.根据权利要求9所述的计算机程序产品,其中,选择至少一个流程片断还包括:
识别该流程片断的层级中的根流程片断;以及
如果该根流程片断的分数大于与该根流程片断相关联的子树中的流程片断的所有组合的平均分数,则选择该根流程片断以包括在业务流程模型的视图中。
13.根据权利要求9所述的计算机程序产品,其中,选择至少一个流程片断还基于该用户的业务流程模型的先前视图的历史。
14.根据权利要求9所述的计算机程序产品,其中,业务流程模型的视图包含与业务流程模型相关联的所有流程片断的完整呈现。
15.根据权利要求9所述的计算机程序产品,其中,基于与业务流程模型的先前视图有关的统计数据的分析来确定该用户的角色对于该至少一个流程元数据种类的可能感兴趣级别。
16.一种系统,包括:
存储器,可操作来存储流程元数据;以及
一个或多个处理器,可操作来:
识别与用户相关联的业务流程模型中的流程片段的层级;
确定与该用户的角色相关联的至少一个流程元数据种类;
为该流程片断的层级中的每个流程片断计算分数,至少部分基于该用户的角色对该至少一个流程元数据种类的可能感兴趣级别来计算分数;以及
选择该流程片断的层级中的至少一个流程片断以包括在要向该用户呈现的业务流程模型的视图中,至少部分基于为该至少一个流程片断计算的分数来进行该选择。
17.根据权利要求16所述的系统,其中,为每个流程片断计算分数包括计算与特定流程片断相关联的各个流程元数据种类的分数的加权平均值。
18.根据权利要求16所述的系统,其中,选择至少一个流程片断还包括:
识别该流程片断的层级中的根流程片断;以及
如果该根流程片断的分数大于与该根流程片断相关联的子树中的流程片断的所有组合的平均分数,则选择该根流程片断以包括在业务流程模型的视图中。
19.根据权利要求16所述的系统,其中,选择至少一个流程片断还基于该用户的业务流程模型的先前视图的历史。
20.根据权利要求16所述的系统,其中,业务流程模型的视图包含与业务流程模型相关联的所有流程片断的完整呈现。。
CN2012102262404A 2011-06-29 2012-06-29 业务流程模型中对准用户的片断的自动识别 Pending CN102999800A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/172,238 US8725522B2 (en) 2011-06-29 2011-06-29 Automatic identification of user-aligned fragments in business process models
US13/172,238 2011-06-29

Publications (1)

Publication Number Publication Date
CN102999800A true CN102999800A (zh) 2013-03-27

Family

ID=46545593

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2012102262404A Pending CN102999800A (zh) 2011-06-29 2012-06-29 业务流程模型中对准用户的片断的自动识别

Country Status (4)

Country Link
US (1) US8725522B2 (zh)
EP (1) EP2541476A1 (zh)
JP (1) JP5860732B2 (zh)
CN (1) CN102999800A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106416134A (zh) * 2014-04-11 2017-02-15 第三雷沃通讯有限责任公司 基于启发式和商业策略对网络业务流递进应用资源
CN107980147A (zh) * 2015-03-23 2018-05-01 摩根士丹利服务集团有限公司 跟踪分布式计算系统中的数据流
CN108664314A (zh) * 2017-03-29 2018-10-16 香港城市大学 大数据处理流程模块化管理方法及装置
CN109829687A (zh) * 2018-12-29 2019-05-31 深圳豪客互联网有限公司 征信流程模型处理方法及装置

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2626820A3 (en) * 2012-02-10 2016-10-19 Tata Consultancy Services Limited Role-based content rendering
US20130226670A1 (en) * 2012-02-23 2013-08-29 Xerox Corporation Method and system for automatically partitioning and processing a business process
US20130226671A1 (en) * 2012-02-29 2013-08-29 Jiri Pechanec Systems and methods for providing dependency injection in a business process model system
US9100345B2 (en) * 2012-12-21 2015-08-04 Software Ag Usa, Inc. Systems and/or methods for supporting a generic framework for integration of on-premises and SaaS applications with security, service mediation, administrative, and/or monitoring capabilities
US10325002B2 (en) 2014-09-29 2019-06-18 Sap Se Web service framework
US10884997B2 (en) 2015-06-10 2021-01-05 International Business Machines Corporation Maintaining a master schema
US20170032293A1 (en) * 2015-07-31 2017-02-02 Worksoft, Inc. System and method for business process multiple variant view
US10338796B2 (en) * 2016-07-27 2019-07-02 Sap Se Event services modeling framework for computer systems
US11100438B2 (en) 2016-10-21 2021-08-24 Microsoft Technology Licensing, Llc Project entity extraction with efficient search and processing of projects
US20210312355A1 (en) * 2018-08-10 2021-10-07 Telepathy Labs, Inc. Virtual agent system and method for modelling organization processes therefor
US10819587B2 (en) * 2019-03-04 2020-10-27 Servicenow, Inc. Methods and systems for analysis of process performance
CN114710756B (zh) * 2022-04-07 2023-07-14 中国联合网络通信集团有限公司 信息交互方法、网络侧功能实体和终端
US20230385730A1 (en) * 2022-05-24 2023-11-30 Red Hat, Inc. Segmenting processes into stand-alone services
CN117608650B (zh) * 2024-01-15 2024-04-09 钱塘科技创新中心 业务流程图生成方法、处理设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040133876A1 (en) * 2003-01-08 2004-07-08 Craig Sproule System and method for the composition, generation, integration and execution of business processes over a network
US20060200476A1 (en) * 2005-03-03 2006-09-07 Microsoft Corporation Creating, storing and viewing process models
CN101964081A (zh) * 2010-09-13 2011-02-02 中国恩菲工程技术有限公司 基于工厂管理基础架构平台的生产信息系统

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006036720A2 (en) * 2004-09-24 2006-04-06 Data Quality Solutions Llc Business process management system and method
US7512451B2 (en) * 2005-04-09 2009-03-31 American Express Travel Related Services Company, Inc. System and method for interactive process management
WO2008005102A2 (en) * 2006-05-13 2008-01-10 Sap Ag Consistent set of interfaces derived from a business object model
US20080184231A1 (en) * 2007-01-31 2008-07-31 Alexander Dreiling Method and system for analyzing process models

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040133876A1 (en) * 2003-01-08 2004-07-08 Craig Sproule System and method for the composition, generation, integration and execution of business processes over a network
US20060200476A1 (en) * 2005-03-03 2006-09-07 Microsoft Corporation Creating, storing and viewing process models
CN101964081A (zh) * 2010-09-13 2011-02-02 中国恩菲工程技术有限公司 基于工厂管理基础架构平台的生产信息系统

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106416134A (zh) * 2014-04-11 2017-02-15 第三雷沃通讯有限责任公司 基于启发式和商业策略对网络业务流递进应用资源
CN107980147A (zh) * 2015-03-23 2018-05-01 摩根士丹利服务集团有限公司 跟踪分布式计算系统中的数据流
CN108664314A (zh) * 2017-03-29 2018-10-16 香港城市大学 大数据处理流程模块化管理方法及装置
CN108664314B (zh) * 2017-03-29 2023-10-13 香港城市大学 大数据处理流程模块化管理方法及装置
CN109829687A (zh) * 2018-12-29 2019-05-31 深圳豪客互联网有限公司 征信流程模型处理方法及装置

Also Published As

Publication number Publication date
JP5860732B2 (ja) 2016-02-16
US8725522B2 (en) 2014-05-13
JP2013012175A (ja) 2013-01-17
US20130006887A1 (en) 2013-01-03
EP2541476A1 (en) 2013-01-02

Similar Documents

Publication Publication Date Title
CN102999800A (zh) 业务流程模型中对准用户的片断的自动识别
Zimmermann et al. Evolution of enterprise architecture for digital transformation
JP5875794B2 (ja) ネットワーク化されたビジネスプロセスにおけるネットワーク参加者に関するサービス品質を管理するための方法、およびそのような方法を実行するための命令を格納するマシン可読媒体
CN101820428B (zh) 基于协议组合机制的组合服务优化方法和装置
US8560636B2 (en) Methods and systems for providing a virtual network process context for network participant processes in a networked business process
CN104756460A (zh) 基于ldap的多顾客云内身份管理系统
CN102385718B (zh) 在联网业务过程中管理网络参与者的服务质量的方法和系统
CN102779087A (zh) 业务过程日志记录的系统和方法
CN104956330A (zh) 具有资源感知的工作量分配
CN104508625A (zh) 用于监视云资源的抽象模型
US11393175B2 (en) Methods and systems for digital twin augmented reality replication of non-homogeneous elements in integrated environments
US9240965B2 (en) Methods and systems for business interaction monitoring for networked business process
Poort et al. Architecting as a risk-and cost management discipline
Saraeian et al. Towards an extended BPMS prototype: Open challenges of BPM to flexible and robust orchestrate of uncertain processes
Keller et al. Support of collaborative business process networks in AEC
Gamidullaeva et al. The information and analytical platform for the big data mining about innovation in the region
Xiao et al. Supporting complex work in crowdsourcing platforms: A view from service-oriented computing
Aiello Workflow performance evaluation.
Zamani et al. The architecture of an effective software application for managing enterprise projects
US20210406808A1 (en) Method and system of planning and scheduling that incorporates inheritance, feedback learning, path optimization, and simulation
KR101736943B1 (ko) 임무 서비스 실행 방법 및 장치
Schillinger Semantic service oriented architectures in research and practice
Aagesen Multi-channel Provisioning of Public Services
Stefanovic et al. Integration of virtual and networked organization using server oriented architecture
Govindarajan Developing Function Blocks for Collecting Data and Integrating Legacy Systems in Manufacturing and Logistics

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C53 Correction of patent of invention or patent application
CB02 Change of applicant information

Address after: German Waldo

Applicant after: SAP AG

Address before: German Waldo

Applicant before: SAP AG

COR Change of bibliographic data

Free format text: CORRECT: APPLICANT; FROM: SAP AG TO: SAP EUROPE AG

RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20130327