[发明专利]基于动态依赖图的服务组合实例迁移有效性判定方法有效
申请号: | 201310581404.X | 申请日: | 2013-11-18 |
公开(公告)号: | CN103606042A | 公开(公告)日: | 2014-02-26 |
发明(设计)人: | 宋巍;陈先博;张功萱 | 申请(专利权)人: | 南京理工大学 |
主分类号: | G06Q10/06 | 分类号: | G06Q10/06 |
代理公司: | 南京理工大学专利中心 32203 | 代理人: | 朱显国 |
地址: | 210094 *** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 动态 依赖 服务 组合 实例 迁移 有效性 判定 方法 | ||
1.一种基于动态依赖图的服务组合实例迁移有效性判定方法,其特征在于,以演化前后的服务组合、以及待迁移实例的已执行路径为输入,以待迁移实例的迁移有效性判定结果为输出,其实现包括以下步骤:
步骤1、分析待迁移实例的已执行路径中活动间的依赖关系,自动生成该已执行路径的动态依赖图,即待迁移实例的动态依赖图,并获得到达已执行路径结束处的所有可达变量定义的集合;
步骤2、约简动态依赖图:通过向后动态切片的方法,删除对实例迁移没有影响的活动及其相应的依赖边;
步骤3、对演化后的服务组合使用控制流分析方法得到控制流图;以及
步骤4、基于演化后的服务组合的控制流图和待迁移实例约简后的动态依赖图,判断约简后的动态依赖图下是否存在一个拓扑排序可以在演化后的服务组合下重现,即判断是否存在一个拓扑排序是演化后服务组合的一个活动序列,如果存在,则迁移的有效性得到满足,反之不满足。
2.根据权利要求1所述的基于动态依赖图的服务组合实例迁移有效性判定方法,其特征在于,所述步骤1的具体实现中,待迁移实例的已执行路径表示为σ={σ1,σ2,…},σ1,σ2,…表示活动,活动σi的所有输入变量为inPut(σi),所有输出变量为outPut(σi);活动间的依赖关系表示为R=(σi,σj),σi和σj表示前述执行路径中的活动,其包含控制依赖关系、异步调用依赖关系和数据依赖关系,并通过有向边的形式在动态依赖图DDG中展现;待迁移实例的动态依赖图表示为DDG=(NDDG,EDDG),NDDG代表动态依赖图的活动结点集,由事件日志中所有不重复的活动组成,EDDG代表动态依赖图结点间的依赖边集,由控制依赖关系集、异步调用依赖集和数据依赖关系集组成;本步骤1的实现包括以下步骤:
1.1初始化集合ReachingDefs(P1,σ)和集合Uses为集合Uses代表所使用的变量集合,集合ReachingDefs(P1,σ)为动态可达定义集合,即执行路径σ结束处的所有定义变量集合,其中P1为演化前的服务组合,遍历演化前待迁移实例的执行路径中的所有活动结点,添加到动态依赖图的活动结点集NDDG中,分析可得所有活动结点间的控制依赖关系集SCD和异步调用依赖关系集SAD;
1.2遍历活动结点集NDDG,如果活动i与活动j间存在控制依赖或异步调用依赖,也即:活动i与活动j间的二元关系属于控制依赖关系集SCD和异步调用依赖关系集SAD,则将相应的控制依赖边或异步调用依赖边添加到动态依赖图的依赖边集合EDDG中;
1.3采用数据流分析方法,将所有真数据依赖边加入动态依赖图DDG中,具体地,遍历执行路径σ中活动j的所有输入变量var∈inPut(σj),如果活动j使用了活动k定义的变量,即活动k的变量属于所述集合ReachingDefs(P1,σ),则将以活动j为起点、以活动k为终点的真数据依赖边添加到动态依赖图DDG中,同时将活动j的输入变量添加到所述集合Uses中;
1.4采用数据流分析方法,将所有反数据依赖边加入到动态依赖图DDG中,具体地,遍历执行路径σ中活动j的所有输出变量var∈outPut(σj),如果活动j定义了活动k使用的变量,即活动k的变量属于所述集合Uses,则将以活动k为起点、以活动j为终点的反数据依赖边添加到动态依赖图DDG中,同时将活动j的输出变量添加到活动j所定义的所有变量的集合Def(σ[j])中;
1.5采用数据流分析方法,将所有输出数据依赖边加入到动态依赖图DDG中,具体地,遍历执行路径σ中活动j的所有输出变量var∈outPut(σj),若该输出变量已经被活动i定义,即活动i的变量属于所述集合ReachingDefs(P1,σ),且活动j重新定义了该输出变量,则将以活动i为起点、以活动j为终点的输出数据依赖边添加到DDG中,同时将活动j的输出变量添加到所述集合Def(σ[j])中,活动i的定义变量添加到集合Kill(σ[j]),该集合Kill(σ[j])为待迁移实例沿执行路径σ执行时,所有到达活动j而被活动j重新定义后被覆盖掉的变量定义构成的集合;
1.6将所述集合Def(σ[j])中的所有元素添加到所述集合ReachingDefs(P1,σ)中,将所述Kill(σ[j])中的所有元素从所述集合ReachingDefs(P1,σ)中删除;
1.7重复上述步骤1.2到1.6,直到遍历完整个执行路径σ中的所有活动;以及
1.8根据执行路径中所有活动结点以及它们之间的依赖关系确立动态依赖图DDG的活动结点集NDDG和依赖边集EDDG。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京理工大学,未经南京理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310581404.X/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种树木快速安装护架
- 下一篇:一种育苗用加温加湿设备的制造方法
- 同类专利
- 专利分类
G06Q 专门适用于行政、商业、金融、管理、监督或预测目的的数据处理系统或方法;其他类目不包含的专门适用于行政、商业、金融、管理、监督或预测目的的处理系统或方法
G06Q10-00 行政;管理
G06Q10-02 .预定,例如用于门票、服务或事件的
G06Q10-04 .预测或优化,例如线性规划、“旅行商问题”或“下料问题”
G06Q10-06 .资源、工作流、人员或项目管理,例如组织、规划、调度或分配时间、人员或机器资源;企业规划;组织模型
G06Q10-08 .物流,例如仓储、装货、配送或运输;存货或库存管理,例如订货、采购或平衡订单
G06Q10-10 .办公自动化,例如电子邮件或群件的计算机辅助管理