一种并行流程图的生成方法与系统技术方案

技术编号:36866069 阅读:10 留言:0更新日期:2023-03-15 19:09
本发明专利技术公开了一种并行流程图的生成方法与系统,属于流程图生成技术领域,该并行流程图的生成方法具体步骤如下:创建流程图:利用Java Web客户端新增各类节点模板组件和节点信息编辑组件,形成节点组件,并定义校验规则和封装方法,再集成各类节点组件,形成集成节点组件;其中,所述各类节点组件包括开始节点、结束节点、并行网关、分支网关、hop节点和任务节点,再加载可拖拽工具栏和画布,并将集成节点组件配置至可拖拽工具栏中,再从可拖拽工具栏中拖拽出需要的节点到画布中,再通过鼠标在节点间拖拽建立连接线,即得流程图,本发明专利技术能够使流程图的形成较为简便,同时能够判断流程图是否准确,充分提高了流程图的准确性,且能够生成并行流程图。够生成并行流程图。够生成并行流程图。

【技术实现步骤摘要】
一种并行流程图的生成方法与系统


[0001]本专利技术涉及流程图生成
,尤其涉及一种并行流程图的生成方法与系统。

技术介绍

[0002]任务并行,也称为功能平行或控制平行,是平行计算程序设计模型的一种,在这个模型中,每一个线程执行一个分配到的任务,而这些线程则被分配到该并行计算体系的各个计算节点中去。
[0003]经检索,中国专利号CN201811396956.2公开了一种并行流程图的生成方法与系统,虽然可以根据工艺结构树自动生成工艺流程图,提高了工艺流程图的绘图效率和绘制结果的准确性,但是其无法判断流程图是否准确,且无法生成并行流程图,带来了方法缺陷的问题。

技术实现思路

[0004]本专利技术的目的是为了解决现有技术中存在的缺陷,而提出的一种并行流程图的生成方法与系统。
[0005]为了实现上述目的,本专利技术采用了如下技术方案:
[0006]一种并行流程图的生成方法,该并行流程图的生成方法具体步骤如下:
[0007](1)创建流程图:利用Java Web客户端新增各类节点模板组件和节点信息编辑组件,形成节点组件,并定义校验规则和封装方法,再集成各类节点组件,形成集成节点组件;其中,所述各类节点组件包括开始节点、结束节点、并行网关、分支网关、hop节点和任务节点,再加载可拖拽工具栏和画布,并将集成节点组件配置至可拖拽工具栏中,再从可拖拽工具栏中拖拽出需要的节点到画布中,再通过鼠标在节点间拖拽建立连接线,即得流程图;
[0008](2)检验流程图:再通过Java Web客户端执行流程图相关参数配置,形成可解析的Kettle文件,再读取Kettle文件的hop节点,根据hop节点调用基于GeoTools编写的ValidateHop方法判断流程是否为一个有效流程,并存储有效流程;
[0009](3)创建并行流程图:根据有效流程重新创建流程图,形成有效流程图,并进入图形化编辑界面,执行有效流程图的开始节点,从而启动流程,并根据连接线的规则依次执行有效流程图的节点,当执行至开始并行节点时,根据下一个节点列表的数量,新建对应数量的线程,并执行每个节点,当执行至结束并行节点时,判断每个并行的节点是否全部执行完成,若有没有执行完成的节点,则等待执行,若所有节点执行完成,则关闭新建线程,继续执行下一个节点,若仍有开始并行节点,则重复上述操作,直至执行到结束节点,即得并行流程图。
[0010]进一步地,步骤(1)中所述节点信息编辑组件采用弹窗的方式收集节点名称、步骤名称、输入参数和输出参数的信息。
[0011]进一步地,步骤(1)中所述校验规则用于判断节点组件是否允许添加。
[0012]进一步地,步骤(2)中所述判断有效流程的具体操作为:
[0013]S1、创建一个栈stack,创建一个数组array_hop,存储所有的hop对象,创建另一个数组array_tool,存储tool对象;
[0014]S2、根据hop计算每一个tool的入度indegree,把indegree=0 的tool加入栈;
[0015]S3、如果栈stack的容量capacity≠0,则取出stack的顶点 tool_A,并从array_tool删除对应的tool;
[0016]S4、从array_hop中删除所有以tool_A为起点的hop,如果删除的hop另一个顶点outputTool入度indegree为0,则把outputTool 入栈stack;
[0017]S5、重复步骤(3)和(4),直到stack的容量capacity=0,如果array_tool中还存在tool,则表示流程无效,反之则为有效流程。
[0018]一种并行流程图的生成系统,包括Java Web客户端和图像化编辑器;其中,所述Java Web客户端包括节点新增模块、定义输入模块、集成模块、绘制模块、执行读取模块和初次判断模块;所述图像化编辑器包括编辑界面、线程新建模块、分析模块、二次判断模块和生成模块。
[0019]进一步地,所述节点新增模块用于新增各类节点模板组件和节点信息编辑组件,形成节点组件;所述定义输入模块用于输入校验规则和封装方法;所述集成模块依据校验规则和封装方法集成节点组件,形成集成节点组件;所述绘制模块依据集成节点组件绘制流程图;所述执行读取模块用于执行流程图,形成Kettle文件,并读取Kettle 文件中的hop节点;所述初次判断模块依据hop节点判断流程是否为有效流程,并将有效流程重新输入绘制模块,形成有效流程图。
[0020]进一步地,所述编辑界面用于执行有效流程图,至开始并行节点处;所述线程新建模块根据下一个节点列表的数量,新建对应数量的线程,并执行每个节点;所述分析模块用于分析每个并行的节点是否全部执行完成,若未完成,则等待执行,若完成,则关闭线程新建模块;所述二次判断模块用于判断是否还有开始并行节点,若有,则返回编辑界面,若没有,则启动生成模块;所述生成模块用于生成并行流程图。
[0021]相比于现有技术,本专利技术的有益效果在于:
[0022]1、本专利技术通过将集成节点组件配置至可拖拽工具栏中,再从可拖拽工具栏中拖拽出需要的节点到画布中,再通过鼠标在节点间拖拽建立连接线,即得流程图,使得流程图的形成较为简便,再通过JavaWeb客户端执行流程图相关参数配置,形成可解析的Kettle文件,再读取Kettle文件的hop节点,根据hop节点调用基于GeoTools编写的ValidateHop方法判断流程是否为一个有效流程,根据有效流程重新创建流程图,形成有效流程图,达到判断流程图是否准确的目的,充分提高了流程图的准确性,再通过图形化编辑界面执行至开始并行节点时,根据下一个节点列表的数量,新建对应数量的线程,并执行每个节点,达到生成并行流程图的目的。
附图说明
[0023]附图用来提供对本专利技术的进一步理解,并且构成说明书的一部分,与本专利技术的实施例一起用于解释本专利技术,并不构成对本专利技术的限制。
[0024]图1为本专利技术提出的一种并行流程图的生成方法的流程示意图;
[0025]图2为本专利技术提出的一种并行流程图的生成系统的流程示意图。
具体实施方式
[0026]下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。
[0027]在本专利技术的描述中,需要理解的是,术语“上”、“下”、“前”、“后”、“左”、“右”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本专利技术和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本专利技术的限制。
[0028]实施例1:
[0029]请参阅图1,本专利技术提供一种技术方案:一种并行流程图的生成方法,该并行流程图的生成方法具体步骤如下:
[00本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种并行流程图的生成方法,其特征在于,该并行流程图的生成方法具体步骤如下:(1)创建流程图:利用Java Web客户端新增各类节点模板组件和节点信息编辑组件,形成节点组件,并定义校验规则和封装方法,再集成各类节点组件,形成集成节点组件;其中,所述各类节点组件包括开始节点、结束节点、并行网关、分支网关、hop节点和任务节点,再加载可拖拽工具栏和画布,并将集成节点组件配置至可拖拽工具栏中,再从可拖拽工具栏中拖拽出需要的节点到画布中,再通过鼠标在节点间拖拽建立连接线,即得流程图;(2)检验流程图:再通过Java Web客户端执行流程图相关参数配置,形成可解析的Kettle文件,再读取Kettle文件的hop节点,根据hop节点调用基于GeoTools编写的ValidateHop方法判断流程是否为一个有效流程,并存储有效流程;(3)创建并行流程图:根据有效流程重新创建流程图,形成有效流程图,并进入图形化编辑界面,执行有效流程图的开始节点,从而启动流程,并根据连接线的规则依次执行有效流程图的节点,当执行至开始并行节点时,根据下一个节点列表的数量,新建对应数量的线程,并执行每个节点,当执行至结束并行节点时,判断每个并行的节点是否全部执行完成,若有没有执行完成的节点,则等待执行,若所有节点执行完成,则关闭新建线程,继续执行下一个节点,若仍有开始并行节点,则重复上述操作,直至执行到结束节点,即得并行流程图。2.根据权利要求1所述的一种并行流程图的生成方法,其特征在于,步骤(1)中所述节点信息编辑组件采用弹窗的方式收集节点名称、步骤名称、输入参数和输出参数的信息。3.根据权利要求1所述的一种并行流程图的生成方法,其特征在于,步骤(1)中所述校验规则用于判断节点组件是否允许添加。4.根据权利要求1所述的一种并行流程图的生成方法,其特征在于,步骤(2)中所述判断有效流程的具体操作为:S1、创建一个栈stack,创建一个数组array_hop,存储所有的hop对象,创建另一个数组array_tool,存储tool对象;S2、根据...

【专利技术属性】
技术研发人员:索强任舟刘璐瑶汪志鹏潘彦
申请(专利权)人:上海望繁信科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1