CN105739979B - 一种基于概率服务流程的工作流选取方法 - Google Patents

一种基于概率服务流程的工作流选取方法 Download PDF

Info

Publication number
CN105739979B
CN105739979B CN201610060360.XA CN201610060360A CN105739979B CN 105739979 B CN105739979 B CN 105739979B CN 201610060360 A CN201610060360 A CN 201610060360A CN 105739979 B CN105739979 B CN 105739979B
Authority
CN
China
Prior art keywords
workflow
node
probability
service
method based
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
CN201610060360.XA
Other languages
English (en)
Other versions
CN105739979A (zh
Inventor
杨晓贤
俞涛
许华虎
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.)
SHANGHAI SHANGDA HAIRUN INFORMATION SYSTEM CO Ltd
University of Shanghai for Science and Technology
Original Assignee
SHANGHAI SHANGDA HAIRUN INFORMATION SYSTEM CO Ltd
University of Shanghai for Science and Technology
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 SHANGHAI SHANGDA HAIRUN INFORMATION SYSTEM CO Ltd, University of Shanghai for Science and Technology filed Critical SHANGHAI SHANGDA HAIRUN INFORMATION SYSTEM CO Ltd
Priority to CN201610060360.XA priority Critical patent/CN105739979B/zh
Publication of CN105739979A publication Critical patent/CN105739979A/zh
Application granted granted Critical
Publication of CN105739979B publication Critical patent/CN105739979B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/10Requirements analysis; Specification techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明涉及一种基于概率服务流程的工作流选取方法,包括步骤:1)抽取每个工作流中的业务节点、节点信息以及节点间的活动关系信息;2)针对每一个工作流,将该工作流中抽取到的业务节点和节点间的活动关系转化为一个可视化图形,并对每一个可视化图形,在其上添加用于标识节点迁移成功概率的概率值,以及用于标识节点租用成本的费用;3)对每一个工作流进行描述性质与执行检验,将检验结果为满足具体业务逻辑要求的工作流组成待选集合,并根据各工作流的总费用以及总成功概率,构造Skyline的筛选对象集,通过数据对象“支配”关系,挑选出最优工作流返回。与现有技术相比,本发明具有兼顾功能性和非功能形特性等优点。

Description

一种基于概率服务流程的工作流选取方法
技术领域
本发明涉及一种软件工程技术,尤其是涉及一种基于概率服务流程的工作流选取方法。
背景技术
工作流模型是软件工程领域研究的重点和难点,适用于软件概要设计和详细设计等过程,作为流程图辅助工具能有效地指导软件开发。工作流模型也是基于服务的软件的重要展现形式,能清晰地描述软件实体内部流程、功能和信息,是软件重用的实现方式之一。
基于服务的工作流模型被广泛地应用于服务软件系统,其流程的业务节点表现形式主要依靠Web服务实现功能。一个工作流模型上的业务节点可以由原子服务组成,也可由多个工作流组合构成。有别于传统的工作流模式,采用服务实现的工作流模型的成员可以临时组合并在动态执行之后自行解散,适用于云计算环境下以服务计算为主导的电子商务,能满足商品交易和企业业务功能重组等多种需求。
然而,现代企业管理非常重视时效性概念,力图抓住商业机遇做出快速有效地反应,实现企业利益最大化。选择合适的工作流至关重要,其涉及如下两方面问题:
1)如何校验服务流程的功能性性质,其涉及定性检验问题,即明确回答服务流程是否满足用户的功能需求。
2)如何评估服务流程的非功能性性质,其涉及定量检验问题,即通过计算给出服务流程的可靠性,费用等数值的度量。
因此,有必要对工作流进行验证,保障用户功能性和非功能性需求,选取合适的候选工作流返回给用户。
针对上述工作流选取问题,首先,需要研究工作流建模问题。一方面,对业务流程模型的活动,结构或行为进行形式化建模;另一方面,在该模型的基础上扩展能描述非功能性特征的时间和费用等特征。其次,需要研究工作流验证问题。定量模型检验是一种自动化的、基于有限状态机的性质验证方法,它不仅能给出检验性质真/假的断言,而且能给出定量计算结果值以满足非功能性计算的要求。当目标性质不满足时,定量模型检验还能根据反例解析业务节点,能进一步给出工作流不能满足用户需求或非功能需求的原因。
基于此,本发明基于概率服务流程的工作流选取方法是将定量模型检验技术应用于工作流选取,即在概率服务流程模型上,采用概率模型检验工具对服务流程进行定量验证,可以有效地验证服务流程的正确性和可靠性,从而为工作流模型的识别、去重等管理任务提供理论基础。
发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种基于概率服务流程的工作流选取方法。
本发明的目的可以通过以下技术方案来实现:
一种基于概率服务流程的工作流选取方法,包括步骤:
1)抽取每个工作流中的业务节点、节点信息以及节点间的活动关系信息;
2)针对每一个工作流,将该工作流中抽取到的业务节点和节点间的活动关系转化为一个可视化图形,并对每一个可视化图形,在其上添加用于标识节点迁移成功概率的概率值,以及用于标识节点租用成本的费用;
3)对每一个工作流进行描述性质与执行检验,将检验结果为满足具体业务逻辑要求的工作流组成待选集合,并根据各工作流的总费用以及总成功概率,构造Skyline的筛选对象集,通过数据对象支配关系,挑选出最优工作流返回。
所述步骤1)具体包括步骤:
11)对每一个工作流,分别输入BPEL4WS描述文件并检查语法;
12)抽取工作流的业务节点与节点信息;
13)抽取节点间的活动关系信息;
14)将业务节点和节点信息存储到容器HashMap中,将活动关系存储到容器ArrayList中。
所述步骤1)中抽取过程采用:基于SAX方法解析BPEL4WS描述文件的XML标签元素。
所述步骤2)具体包括步骤:
21)扩展SCXML语法,使之能描述非功能性特征,即增加节点迁移成功概率描述和节点租用成本描述,得到xSCXML语法与规则用于形式化描述服务流程模型;
22)将各工作流中抽取的业务节点、节点信息和活动关系,用xSCXML语句描述工作流;
23)将各工作流中抽取的业务节点和节点信息转化为图形元素,将节点间的活动关系转化为两个图形间的连接线;
24)对每一个可视化图形,在其图形元素上添加用于标识节点租用成本的费用,在连接线上添加用于标识两个节点迁移成功概率的概率值,其中,所述两个节点为该连接线所连接的两个节点。
所述可视化图形采用Graphviz展示。
用户在视化图形上所做的修改被自动同步至xSCXML语句和Graphviz语句。
所述步骤3)具体包括步骤:
31)对每一个工作流进行描述性质与执行检验;
32)将检验结果为满足具体业务逻辑要求的工作流组成待选集合;
33)以各工作流的总费用作为行坐标或列坐标,以各工作流的1/总成功概率作为列坐标或航坐标,构造Skyline的筛选对象集,并挑选出最优工作流返回。
检验结果满足具体业务逻辑要求具体为:工作流满足具体业务逻辑的功能性以及非功能性要求。
与现有技术相比,本发明具有以下优点:
1)扩展了面向服务的工作流,其转化模型能描述非功能性特征,图形化展示便于在工作流上添加这些特性,并支持用户自定义工作流检验性质,使工作流的选取更加直观,且除了符合功能性要求以外,还兼顾了成本以及可靠性。
2)基于Skyline筛选最优工作流,提高工作流选取的准确性。
3)同时,本方法还能自动计算概率值和费用,支持用户二次修改,提高交互性。
4)自动化执行概率模型检验工具PRISM以检验当前工作流是否满足用户描述的检验性质。
附图说明
图1本发明方法的主要步骤流程示意图;
图2为本发明的基于概率服务流程的工作流选取流程图;
图3为本发明的业务节点和节点间活动关系的抽取属性说明图;
图4为本发明的基于Skyline筛选工作流说明图。
具体实施方式
下面结合附图和具体实施例对本发明进行详细说明。本实施例以本发明技术方案为前提进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
一种基于概率服务流程的工作流选取方法,如图1所示,包括步骤:
1)抽取每个工作流中的业务节点、节点信息以及节点间的活动关系信息,即抽取工作流的服务流程:输入BPEL4WS描述文件,BPEL4WS(Business Process ExecutionLanguage for Web Services)是2002年8月由微软公司、IBM公司和BEA公司联合发布的“网络服务业务流程执行语言”,用于商业流程描述的规范化、标准化,该语言中包含多种网络服务,并能将系统内部和业务伙伴间的信息交换标准化。
该流程执行语言是从WSFL和XLANG脱胎而来的,继而发展为BPEL,抽取算法基于SAX方法解析BPEL4WS描述文件的XML标签元素,将得到的业务节点以及活动关系存储到Java容器HashMap和ArrayList中,具体包括步骤:
11)对每一个工作流,分别输入BPEL4WS描述文件并检查语法;
12)抽取工作流的业务节点与节点信息;
13)抽取节点间的活动关系信息;
14)将业务节点、节点信息和活动关系存储用Java存储到HashMap和ArrayList中,具体的,业务节点和节点信息存储到HashMap中,活动关系存储到ArrayList中。
2)针对每一个工作流,将该工作流中抽取到的业务节点和节点间的活动关系转化为一个可视化图形,并对每一个可视化图形,在其上添加用于标识节点迁移成功概率的概率值,以及用于标识节点租用成本的费用,即形式化构造服务流程模型并扩展描述非功能性特征:将抽取得到业务节点、节点信息和活动关系,用xSCXML语法形式化地描述服务流程模型,用可视化工具Graphviz展示其可视化图形。在形式化模型上,添加非功能性特征,包括在迁移关系上添加概率值以标识服务流程上服务调用的成功概率,在状态上添加费用以标识服务流程上服务租用的成本。图形一旦编辑将自动重写xSCXML描述语句和Graphviz展示语句,并校验状态迁移概率的一致性,具体包括步骤:
21)扩展SCXML语法,使之能描述非功能性特征,即增加节点迁移成功概率描述和节点租用成本描述,得到xSCXML语法与规则用于形式化描述服务流程模型;
22)将各工作流中抽取的业务节点、节点信息和活动关系,用xSCXML语句描述工作流的服务流程;
23)将各工作流中抽取的业务节点和节点信息转化为图形元素,将节点间的活动关系转化为两个图形间的连接线,用Graphviz展示可视化图形,Graphviz的是AT Labs-Research开发的图形绘制工具,他可以很方便的用来绘制结构化的图形网络,支持多种格式输出;
24)对每一个可视化图形,在其图形元素上添加用于标识节点租用成本的费用,在连接线上添加用于标识两个节点迁移成功概率的概率值,其中,所述两个节点为该连接线所连接的两个节点,用户在视化图形上所做的修改被自动同步至xSCXML语句和Graphviz语句。
3)对每一个工作流进行描述性质与执行检验:将抽取得到的业务节点和活动关系用下拉框形式供用户编写目标、待验证性质,提供概率操作符、成本操作符以及时态操作符等。根据验证性质计算工作流初始总概率值和总费用,用户根据计算值进行二次调整。将服务流程模型和检验性质转化为概率模型检验工具PRISM语法格式,调用命令行执行PRISM并对检验结果进行分析和统计,将检验结果为满足具体业务逻辑要求的工作流组成待选集合,并根据各工作流的总费用以及总成功概率,构造Skyline的筛选对象集,通过数据对象支配关系,挑选出最优工作流返回,具体包括步骤:
31)对每一个工作流进行描述性质与执行检验。
32)将检验结果为满足具体业务逻辑要求的工作流组成待选集合,检验结果为满足具体业务逻辑要求具体为:工作流满足具体业务逻辑的功能性以及非功能性要求;
33)以各工作流的总费用作为行坐标或列坐标,以各工作流的1/总成功概率作为列坐标或航坐标,构造Skyline的筛选对象集,并挑选出最优工作流返回。
其中步骤31)具体包括步骤:
311)将步骤1)抽取的业务节点、节点信息和活动关系用下拉框展示,供用户选择;
312)将时态逻辑关系符号用下拉框展示,供用户选择,提供概率操作符、成本操作符和时态操作符;
313)用户根据实际情况编写目标、待验证的需求性质,可多次编辑和多次添加性质;
314)根据验证性质计算初始概率值和费用,用户可以根据计算值进行二次调整;
315)将服务流程模型和检验性质转化为概率模型检验工具PRISM所接受的执行代码;
316)调用命令行执行PRISM,分析和统计性质校验结果并保存结果;
317)迭代地进行性质检验,直至所有用户输入的性质都检验完毕。
图2为本发明的基于概率服务流程的工作流选取流程图
首先,基于SAX解析BPEL4WS描述文件的XML标签,得到业务节点、节点信息和活动关系,并用Java存储到HashMap和ArrayList中。其次,将这些信息分别转化为xSCXML描述语句和Graphviz支持的DOT描述语句,前者用于形式化描述服务流程模型,后者用于图形化展示信息。接着,用户可在图形化展示上编辑图形以及在迁移关系和状态上增加概率值和费用等非功能性特征,同时,所有的修改将自动更新xSCXML描述语句和DOT描述语句,并检验概率值是否符合概率约束。然后,用户输入检验性质后,将服务流程模型和性质转化为PRISM支持的语法,并执行定量的模型检验。最后,根据性质校验结果,构造Skyline筛选集合,由支配算法筛选出候选工作流并返回给用户。
图3为本发明的业务节点和节点间活动关系的抽取属性说明图。
A21:抽取业务节点信息,包括解析<invoke>调用其它Web服务,<receive>等待客户端通过发送消息调用业务流程,<reply>生成同步操作的响应,<assign>操作数据变量,<throw>指示故障和异常,<wait>等待一段时间,<terminate>终止整个流程等。
A22:抽取节点间活动信息,包括解析<sequence>顺序活动,<flow>流活动,<switch>分支活动,<while>循环活动,<pick>多选一活动等。
A23:将得到的这些信息用xSCXML描述服务流程,如下示例:
每个状态扩展成本标签cost和迁移概率标签tranPro的描述,其中概率迁移必须满足概率约束限制:
图4为本发明的基于Skyline筛选工作流说明图。Skyline最主要的目标是在给定的数据集中查询不被其它数据对象“支配”的数据对象。支配关系定义为:如果wi支配wj,记为那么wi中的属性必须优于wj中的属性,且至少有一个wi的属性优于wj的属性。为了筛选工作流,本发明方法以费用和1/概率作为行坐标和列坐标,预期目标是选取费用尽可能少、概率值尽可能大的工作流作为候选服务。以图例为说明,坐标系上所给出的工作流都是满足用户需求的,但筛选目标是挑选出黑色圆点所代表的工作流。

Claims (8)

1.一种基于概率服务流程的工作流选取方法,其特征在于,包括步骤:
1)抽取每个工作流中的业务节点、节点信息以及节点间的活动关系信息;
2)针对每一个工作流,将该工作流中抽取到的业务节点和节点间的活动关系转化为一个可视化图形,并对每一个可视化图形,在其上添加用于标识节点迁移成功概率的概率值,以及用于标识节点租用成本的费用;
3)对每一个工作流进行描述性质与执行检验,将检验结果为满足具体业务逻辑要求的工作流组成待选集合,并根据各工作流的总费用以及总成功概率,构造Skyline的筛选对象集,通过数据对象支配关系,挑选出最优工作流返回。
2.根据权利要求1所述的一种基于概率服务流程的工作流选取方法,其特征在于,所述步骤1)具体包括步骤:
11)对每一个工作流,分别输入BPEL4WS描述文件并检查语法;
12)抽取工作流的业务节点与节点信息;
13)抽取节点间的活动关系信息;
14)将业务节点和节点信息存储到容器HashMap中,将活动关系存储到容器ArrayList中。
3.根据权利要求2所述的一种基于概率服务流程的工作流选取方法,其特征在于,所述步骤1)中抽取过程采用:基于SAX方法解析BPEL4WS描述文件的XML标签元素。
4.根据权利要求1所述的一种基于概率服务流程的工作流选取方法,其特征在于,所述步骤2)具体包括步骤:
21)扩展SCXML语法,使之能描述非功能性特征,即增加节点迁移成功概率描述和节点租用成本描述,得到xSCXML语法与规则用于形式化描述服务流程模型;
22)将各工作流中抽取的业务节点、节点信息和活动关系,用xSCXML语句描述工作流;
23)将各工作流中抽取的业务节点和节点信息转化为图形元素,将节点间的活动关系转化为两个图形间的连接线;
24)对每一个可视化图形,在其图形元素上添加用于标识节点租用成本的费用,在连接线上添加用于标识两个节点迁移成功概率的概率值,其中,所述两个节点为该连接线所连接的两个节点。
5.根据权利要求4所述的一种基于概率服务流程的工作流选取方法,其特征在于,所述可视化图形采用Graphviz展示。
6.根据权利要求5所述的一种基于概率服务流程的工作流选取方法,其特征在于,用户在视化图形上所做的修改被自动同步至xSCXML语句和Graphviz语句。
7.根据权利要求4所述的一种基于概率服务流程的工作流选取方法,其特征在于,所述步骤3)具体包括步骤:
31)对每一个工作流进行描述性质与执行检验;
32)将检验结果为满足具体业务逻辑要求的工作流组成待选集合;
33)以各工作流的总费用作为行坐标或列坐标,以各工作流的1/总成功概率作为列坐标或航坐标,构造Skyline的筛选对象集,并挑选出最优工作流返回。
8.根据权利要求7所述的一种基于概率服务流程的工作流选取方法,其特征在于,检验结果为满足具体业务逻辑要求具体为:工作流满足具体业务逻辑的功能性以及非功能性要求。
CN201610060360.XA 2016-01-28 2016-01-28 一种基于概率服务流程的工作流选取方法 Active CN105739979B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610060360.XA CN105739979B (zh) 2016-01-28 2016-01-28 一种基于概率服务流程的工作流选取方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610060360.XA CN105739979B (zh) 2016-01-28 2016-01-28 一种基于概率服务流程的工作流选取方法

Publications (2)

Publication Number Publication Date
CN105739979A CN105739979A (zh) 2016-07-06
CN105739979B true CN105739979B (zh) 2018-11-02

Family

ID=56246949

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610060360.XA Active CN105739979B (zh) 2016-01-28 2016-01-28 一种基于概率服务流程的工作流选取方法

Country Status (1)

Country Link
CN (1) CN105739979B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11847599B1 (en) 2021-02-25 2023-12-19 Wells Fargo Bank, N.A. Computing system for automated evaluation of process workflows

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107025110B (zh) * 2017-02-24 2020-05-12 中国人民解放军海军大连舰艇学院 一种基于软件开发要素及要素之间的联系的时态建模方法
CN108052446B (zh) * 2017-12-11 2021-04-23 苏州大学 一种Web服务组合的建模与概率验证方法及装置
US11630852B1 (en) 2021-01-08 2023-04-18 Wells Fargo Bank, N.A. Machine learning-based clustering model to create auditable entities

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101237469A (zh) * 2008-02-27 2008-08-06 中山大学 运用蚁群算法优化多QoS网格工作流的方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120078678A1 (en) * 2010-09-23 2012-03-29 Infosys Technologies Limited Method and system for estimation and analysis of operational parameters in workflow processes

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101237469A (zh) * 2008-02-27 2008-08-06 中山大学 运用蚁群算法优化多QoS网格工作流的方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11847599B1 (en) 2021-02-25 2023-12-19 Wells Fargo Bank, N.A. Computing system for automated evaluation of process workflows

Also Published As

Publication number Publication date
CN105739979A (zh) 2016-07-06

Similar Documents

Publication Publication Date Title
Gao et al. Automated quantitative verification for service-based system design: A visualization transform tool perspective
Suri et al. Semantic framework for internet of things-aware business process development
CN105739979B (zh) 一种基于概率服务流程的工作流选取方法
CN110245110A (zh) 数据处理方法、装置及存储介质
Gao et al. Probabilistic model checking-based service selection method for business process modeling
Bruckner et al. Developing requirements for data warehouse systems with use cases
CN101520731A (zh) 图形用户接口应用比较器
US20170109639A1 (en) General Model for Linking Between Nonconsecutively Performed Steps in Business Processes
US20240069967A1 (en) Pipeline task verification for a data processing platform
Avdeenko et al. The ontology-based approach to support the completeness and consistency of the requirements specification
KR100910336B1 (ko) 논리 프로세스 및 물리 프로세스 모델을 맵핑한 비즈니스 프로세스 모델을 관리하기 위한 시스템 및 방법
Letsholo et al. TRAM: A tool for transforming textual requirements into analysis models
Swain et al. Minimal testcase generation for object-oriented software with state charts
Li et al. Verifying the concurrent properties in BPEL based web service composition process
US20170109637A1 (en) Crowd-Based Model for Identifying Nonconsecutive Executions of a Business Process
Tosi et al. Towards autonomic service-oriented applications
CN109101267B (zh) 应用发布管理方法、装置、电子设备、存储介质
US20100305986A1 (en) Using Service Exposure Criteria
CN111405060B (zh) 服务影响范围确定方法、装置、工具和电子设备
CN112232031A (zh) 电力物联网边缘数据模型校验方法、装置及存储介质
Estrada et al. A new service-based approach for enterprise modeling
Akaikine The impact of software design structure on product maintenance costs and measurement of economic benefits of product redesign
Chama et al. Formalization and analysis of timed BPEL
Liu et al. An RFID middleware business process integration framework based on EPC modeling and complex event processing
CN113419739B (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
GR01 Patent grant
GR01 Patent grant