CN109359188A - 一种组件编排方法和系统 - Google Patents

一种组件编排方法和系统 Download PDF

Info

Publication number
CN109359188A
CN109359188A CN201811161698.XA CN201811161698A CN109359188A CN 109359188 A CN109359188 A CN 109359188A CN 201811161698 A CN201811161698 A CN 201811161698A CN 109359188 A CN109359188 A CN 109359188A
Authority
CN
China
Prior art keywords
component
data
prebox
module
keyword
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.)
Granted
Application number
CN201811161698.XA
Other languages
English (en)
Other versions
CN109359188B (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.)
Beijing Number Gather Xin Yun Information Technology Co Ltd
Original Assignee
Beijing Number Gather Xin Yun Information Technology Co Ltd
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 Beijing Number Gather Xin Yun Information Technology Co Ltd filed Critical Beijing Number Gather Xin Yun Information Technology Co Ltd
Priority to CN201811161698.XA priority Critical patent/CN109359188B/zh
Publication of CN109359188A publication Critical patent/CN109359188A/zh
Priority to PCT/CN2019/107834 priority patent/WO2020063669A1/zh
Application granted granted Critical
Publication of CN109359188B publication Critical patent/CN109359188B/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/70Software maintenance or management
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种组件编排方法,所述方法包括:构建组件信息集合;基于收到的组件查询信息,利用所述组件信息集合生成与所述组件查询信息相应的组件列表。在避免花费用户大量的时间和精力的同时,确保了筛选得到较佳的组件,提高了组件编排的效率和成功率。

Description

一种组件编排方法和系统
技术领域
本发明涉及计算机软件技术领域,尤其涉及一种组件编排方法及系统。
背景技术
在典型的基于可重用组件封装的集成编排系统中,系统通常提供具有不同功能的组件组成的组件库来快速编排组合,以连接不同应用系统,并且也提供各种数据组件对业务流程中的数据进行加工处理。这些可重用的组件随着时间的积累可能达到几百个,用户需要根据业务逻辑使用各种不同的组件进行组合编排来开发自己的业务流程,一个流程可能涉及到几十个甚至上百个组件的使用。用户从几百个组件中挑选合适的组件的工作十分繁琐,阻碍了使用可重用的组件来快速开发的设计初衷。
另外,组件库中的组件过多,每个组件的配置使用方法都需要积累很多实战经验。因此,在组件流程编排设计的过程中,用户需要大量时间来浏览并思考某一个组件是否适用于当前的上下文场景。
因此,需要一种能够实现组件的快速选择和组件流程的快速编排的方法和系统。
发明内容
为了解决现有技术中组件选择以及组件流程编排工作繁琐、耗时较大的问题,提出了一种组件编排方法和系统。
根据本发明专利申请的一个方面,提供了一种组件编排方法,所述方法包括:
构建组件信息集合;
基于收到的组件查询信息,利用所述组件信息集合生成与所述组件查询信息相应的组件列表。
其中,所述方法还包括:
当检测到需要选择关联组件时,获取待被关联的前置组件,基于所述前置组件,利用所述组件信息集合生成相应于所述前置组件的后置组件列表。
其中,构建组件信息集合包括:
基于各组件的历史使用数据构建所述组件信息集合,所述组件信息集合包括组件关键字数据、组件使用频率数据、组件关联数据。
其中,利用所述组件信息集合生成与所述组件查询信息相应的组件列表包括:
基于所述组件查询信息,利用所述组件关键字数据和所述组件使用频率数据计算各组件的匹配得分,并选择所述匹配得分高的前L个组件生成与所述组件查询信息相应的组件列表,L为大于等于1的正整数。
其中,利用所述组件关键字数据和所述组件使用频率数据计算各组件的匹配得分包括:
获取所述查询信息包括的j个关键字t1,t2,…,tj,j为大于等于1的正整数;
通过下述公式计算各组件的匹配得分:
其中,d表示计算所述匹配得分的组件,tf(tiind)表示关键字ti在组件d的组件关键字数据中出现频率的平方根,idf(ti)表示关键字ti在组件d的组件关键字数据中的逆文本频率指数,fq(d)表示组件d在流程库中的出现频率,norm(d)表示关键字归一化因子,
并且其中,numDocs表示所述流程库中总的组件个数,docFreq表示一组件的组件关键字数据中包括关键字ti的组件个数,
numTerms表示组件d的组件关键字数据中包括的所有关键字的个数。
其中,利用所述组件信息集合生成相应于所述前置组件的后置组件列表包括:
基于所述组件关联数据,在所述组件信息集合中选择所述前置组件后出现概率高的前N个组件,N为大于等于1的正整数;
获取所述前N个组件在所述前置组件后出现概率,基于所述出现概率分别计算所述前N个组件的推荐得分,并选择所述推荐得分高的前M个组件生成相应于所述前置组件的后置组件列表,M为大于等于1的正整数。
其中,通过下述方式计算所述前N个组件的推荐得分:
推荐得分=freq(p,s),
其中,freq(p,s)表示所述前置组件为p时,所述后置组件为s的概率的平方根。
根据本发明的另一方面,还提供了一种组件编排系统,所述系统包括:
索引模块,用于构建组件信息集合;
查询模块,用于基于收到的组件查询信息,利用所述组件信息集合生成与所述组件查询信息相应的组件列表。
其中,所述系统还包括:
推荐模块,用于当检测到需要选择关联组件时,获取待被关联的前置组件,基于所述前置组件,利用所述组件信息集合生成相应于所述前置组件的后置组件列表。
其中,所述索引模块还用于:
基于各组件的历史使用数据构建所述组件信息集合,所述组件信息集合包括组件关键字数据、组件使用频率数据、组件关联数据。
其中,所述查询模块还用于:
基于所述组件查询信息,利用所述组件关键字数据和所述组件使用频率数据计算各组件的匹配得分,并选择所述匹配得分高的前L个组件生成与所述组件查询信息相应的组件列表,L为大于等于1的正整数。
其中,所述查询模块还用于通过下述步骤计算各组件的匹配得分:
获取所述查询信息包括的j个关键字t1,t2,…,tj,j为大于等于1的正整数;
通过下述公式计算各组件的匹配得分:
i的取值范围为1,2,…j;
其中,d表示计算所述匹配得分的组件,tf(tiind)表示关键字ti在组件d的组件关键字数据中出现频率的平方根,idf(ti)表示关键字ti在组件d的组件关键字数据中的逆文本频率指数,fq(d)表示组件d在流程库中的出现频率,norm(d)表示关键字归一化因子,
并且其中numDocs表示所述流程库中总的组件个数,docFreq表示一组件的组件关键字数据中包括关键字ti的组件个数,
numTerms表示组件d的组件关键字数据中包括的所有关键字的个数。
其中,所述推荐模块还用于:
基于所述组件关联数据,在所述组件信息集合中选择所述前置组件后出现概率高的前N个组件,N为大于等于1的正整数;
获取所述前N个组件在所述前置组件后出现概率,基于所述出现概率分别计算所述前N个组件的推荐得分,并选择所述推荐得分高的前M个组件生成相应于所述前置组件的后置组件列表,M为大于等于1的正整数。
其中,所述推荐模块还用于通过下述方式计算所述前N个组件的推荐得分:
推荐得分=freq(p,s),
其中,freq(p,s)表示所述前置组件为p时,所述后置组件为s的概率的平方根。
现有组件编排方法并不能根据历史的组件使用频率统计数据来对返回结果进行更优的排序,也不能在用户没有提供关键字的时候提供智能的组件推荐。
本发明专利申请提出的组件编排方法和系统,与现有技术相比具有以下有益效果:
(1)通过组件的历史数据生成组件信息集合,这样在基于组件查询信息查询组件以及推荐后置组件时,可以借助于组件使用历史,包括使用频率、关联信息等,对待选择的组件进行智能的优化的推荐。
(2)科学地利用用户查询时输入的查询信息,通过对查询信息中的关键字进行拆分得到基本关键字,利用组件的关键字数据,并通过多次实验得到的计算公式计算组件的匹配得分,从而通过智能的方式得到满足用户查询要求的较佳组件。
(3)当捕获用户需要选择关联组件(后置组件)的操作时,自动通过推荐算法推荐后置组件,而无需用户提供关键字,极大地简化了用户操作。
(4)当用户没有提供关键字时,根据前置组件的信息和组件关联数据来推荐后置组件给用户,这种利用前置组件和组件关联数据进行推荐的方法更加科学,为用户提供了后置组件的最佳筛选方案。
本发明专利申请的方法的系统,通过智能的查询和推荐算法,在避免花费用户大量的时间和精力的同时,确保了筛选得到较佳的组件,提高了组件编排的效率和成功率。
附图说明
构成本发明的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明的组件编排方法的流程图;
图2是根据本发明的组件编排方法的一个具体实施例的流程图;
图3是根据本发明的组件编排系统的模块图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
在目前的组件编排系统中,用户从几百个组件中挑选合适的组件的工作十分繁琐。另外,组件库中的组件过多,每个组件的配置使用方法都需要积累很多实战经验。因此,在组件流程编排设计的过程中,用户需要大量时间来浏览并思考某一个组件是否适用于当前的上下文场景。上述情况阻碍了使用可重用的组件来快速开发的设计初衷。
本发明专利申请提供了一种组件编排方法,该方法可以使得用户在流程设计时更快捷流畅地使用组件库中提供的组件进行组件编排操作。
本发明专利申请的组件编排方法如图1所示,包括:
步骤101,构建组件信息集合;
步骤102,基于收到的组件查询信息,利用所述组件信息集合生成与所述组件查询信息相应的组件列表。
在很多情况下,需要根据前置组件选择后置组件,因此上述方法还包括:
步骤103,当检测到需要选择关联组件时,获取待被关联的前置组件,基于所述前置组件,利用所述组件信息集合生成相应于所述前置组件的后置组件列表。
现有技术中,通常需要用户输入关键字来对后置组件进行筛选,而用户输入关键字时,如果输入的关键字不恰当,例如对后置组件的功能或作用概括不当,则会导致对后置组件的选择不正确,从而影响编排的组件流程的功能实现,严重时可能导致组件编排失败。
在步骤103中,组件编排系统检测到用户需要选择关联组件(后置组件)时,不需要用户输入关键字,而是利用前置组件的信息以及根据历史数据生成的组件信息集合,来筛选适当的后置组件,从而减少了用户的工作量,并降低了选择不恰当关键字而导致后置组件选择错误的风险。
本发明专利申请中,构建组件信息集合包括:基于各组件的历史使用数据构建所述组件信息集合,所述组件信息集合包括组件关键字数据、组件使用频率数据、组件关联数据。这里的历史数据为实际应用过程中设计的编排流程的结构化数据,包过流程的个数,每个流程中的组件类型,组件和组件之间的连接信息等。并且这里的历史数据可以是包括之前设计的编排流程的所有数据,也可以是从上述所有数据中选择的部分数据。
组件关键字数据也可以称为组件元数据,是组件开发人员在开发某个组件时在该组件上定义的一些描述性的关键字,这些关键字可以是对组件功能作用的描述,也可以是对组件特征的描述,比如:”数据输入”、”数据输出”、”数据转换”、”Kafka”、“Hadoop”、”数据库”、”SQL”、”数据加密”等等。跟该组件有关的关键字都可以作为元数据,类别不限。一个组件的关键字数据中可以包括与该组件相关的一个或多个关键字。
组件使用频率数据是组件流程开发过程中积累的组件的使用频率。比如某API构建组件HandleHttpRequest为高频使用组件,在一次随机取样的100个流程中被使用了30次,因此该组件的使用频率为30/100=0.3。
组件关联数据是流程中一组件和其他组件连接时产生的统计数据。比如在一次随机取样的100个流程中,对应不同前置组件时,之后使用数据转换组件RecordMapper的概率如表1所示:
表1
前置组件 后续连接RecordMapper概率
HandleHttpRequest 0.21
InvokeHttp 0.19
QueryDatabaseTable 0.12
GetFile 0.08
在构建组件信息集合时,从组件库中通过提取关键字来得到组件关键字数据,从流程库中通过提取组件使用频率信息来得到组件使用频率数据以及通过提取组件连接信息来得到组件关联数据。将这些数据进行索引之后保存在服务器端的数据库中,可以供后续查询模块进行匹配组件查询以及推荐模块进行推荐组件排名计算。
本发明专利申请中,步骤102中,利用所述组件信息集合生成与所述组件查询信息相应的组件列表包括:
基于所述组件查询信息,利用所述组件关键字数据和所述组件使用频率数据计算各组件的匹配得分,并选择所述匹配得分高的前L个组件生成与所述组件查询信息相应的组件列表,L为大于等于1的正整数。
在用户设计编排流程时,往往需要快速定位某一个组件,本发明提供一个基于浏览器的界面来提供组件查询信息的输入,这里的组件查询信息即关键字。当用户在输入框输入关键字时,后台将根据用户输入的关键字对组件关键字数据进行检索,计算组件库中各组件的匹配得分,选取匹配得分较高的组件组成组件列表,并将该组件列表通过前台界面呈现给用户,以供用户进行选择。
具体地,利用所述组件关键字数据和所述组件使用频率数据计算各组件的匹配得分包括:
获取所述查询信息包括的j个关键字t1,t2,...,tj,j为大于等于1的正整数;
通过下述公式计算各组件的匹配得分:
其中,d表示计算所述匹配得分的组件,tf(tiind)表示关键字ti在组件d的组件关键字数据中出现频率的平方根,idf(ti)表示关键字ti在组件d的组件关键字数据中的逆文本频率指数,fq(d)表示组件d在流程库中的出现频率,norm(d)表示关键字归一化因子,
并且其中,numDocs表示所述流程库中总的组件个数,docFreq表示一组件的组件关键字数据中包括关键字ti的组件个数,
numTerms表示组件d的组件关键字数据中包括的所有关键字的个数。
计算匹配得分的具体实施例如下:
(1)对用户输入的查询信息进行分析并将查询信息分拆为一个或多个关键字。这里的关键字分拆可以是现有技术中基于分隔符如空格,标点符号分拆等。
(2)选定组件库中的一组件,针对分拆出的每个关键字,计算下述各项,并将各项结果求积:
tf(tiind)表示关键字ti在组件d的组件关键字数据中出现频率的平方根,组件关键字数据中匹配到的关键字ti越多,则匹配得分越高,具体地,tf(tiind)的计算方法如下:如组件A的组件关键字数据拆分后总共包含4个关键字:数据、输入、大数据、数据,则当ti为“数据”时,其在组件A的组件关键字数据中出现的频率为2/4=0.5,当ti为“输入”时,其在组件A的组件关键字数据中出现的频率为1/4=0.25,当ti为“大数据”时,其在组件A的组件关键字数据中出现的频率为1/4=0.25;
idf(ti)2表示关键字ti在组件d的组件关键字数据中的逆文本频率指数,其中,numDocs表示所述流程库中总的组件个数,docFreq表示一组件的组件关键字数据中包括关键字ti的组件个数(例如,组件关键字数据中包括ti的组件共有8个,则docFreq取值为8),组件关键字数据中出现关键字ti的组件数越少,则匹配得分越高;
fq(d)表示组件d在流程库中的出现频率,这里的流程库可以是整体的流程库,也可以是流程库的子集(即整体流程库中一部分流程组成的集合),因此组件d在流程库中使用的越频繁,匹配得分越高,具体地,fq(d)可以通过下述方法计算:fq(d)为流程库中所选择数量的流程中组件d出现的次数除以该所选择数量,例如,在100个流程中,A组件出现了30次,则组件A的出现频率fq(d)=30/100=0.3;
norm(d)表示关键字归一化因子,numTerms表示组件d的组件关键字数据中包括的所有关键字的个数,因此组件关键字数据中包括的关键字个数越少,则匹配得分越高。
(3)将针对每个关键字计算的各项乘积求和,得到一组件相应于该查询信息的匹配得分。
(4)重复上述步骤(1)-(3),分别计算组件库中各组件的匹配得分。
通过上述步骤计算得到组件库中各组件针对用户输入的查询信息的匹配得分后,选取匹配得分较高的组件组成组件列表,并将该组件列表通过前台界面呈现给用户,以供用户从组件列表中进行选择。
本发明专利申请中,步骤103中,利用所述组件信息集合生成相应于所述前置组件的后置组件列表包括:
基于所述组件关联数据,在所述组件信息集合中选择所述前置组件后出现概率高的前N个组件,N为大于等于1的正整数;
获取所述前N个组件在所述前置组件后出现概率,基于所述出现概率分别计算所述前N个组件的推荐得分,并选择所述推荐得分高的前M个组件生成相应于所述前置组件的后置组件列表,M为大于等于1的正整数。
这里的出现概率可以基于流程库进行统计,比如流程库里A组件出现了100次,在A出现的100次中,B在A后面出现了50次,则组件A后出现组件B的概率为0.5。即计算出现概率时,用流程库中一前置组件后出现一后置组件的次数除以出现该前置组件的次数。
经验不足的用户在设计组件编排流程的过程中,有时可能不能确定哪个组件可以适用于当前场景的下一步处理,即如何选择后置组件。为了解决这个问题,在本发明专利申请中,提供了一种后置组件的智能推荐方法,其可以在用户在基于浏览器的界面上的操作来实现。当前的组件提供拖拽功能来创建到下一个组件的连接,用户从当前组件拖拽一个连接到空白区域时,系统能够自动捕获到用户的该操作,并将当前组件(即前置组件)的信息发送给后台进行后置组件的推荐计算。系统的推荐算法会基于前置组件的信息和组件信息集合中的组件关联数据计算各可能的后置组件的推荐得分,并选择推荐得分较高的组件生成后置组件列表,将列表返回给前台界面并呈现给用户。用户从后置组件列表中选择合适的后置组件。本发明专利申请的这一后置组件推荐功能能够帮助经验不足的用户快速选择后置组件,避免在选择后置组件时花费大量的时间和精力。同时,可以通过更加科学和智能的方式,选择更合适的后置组件。
具体地,通过下述方式计算所述前N个组件的推荐得分:
推荐得分=freq(p,s),
其中,freq(p,s)表示所述前置组件为p时,所述后置组件为s的出现概率的平方根。因此,一后置组件出现的概率越高,其推荐得分越高。需要说明的是,这里对出现概率做平方根计算,是为了让取值差异更加平均。
下面详细说明根据本发明专利申请的具体实施例,假设所涉及的组件库中包括100个组件。如图2所示,该实施例包括:
步骤201,索引模块根据组件库以及流程库中的数据,包括历史使用数据,提取组件关键字数据、使用频率数据、组件关联数据,生成组件信息集合。
步骤202,接收到用户输入的组件查询信息后,对查询信息进行分析,将查询信息拆分为关键字t1,t2
步骤203,对组件库中的每个组件采用下述公式计算组件的匹配得分:
并选出匹配得分较高的前10个组件生成组件列表,通过用户界面显示给用户,供用户选择。
步骤204,捕获到用户拖拽一个连接到一个组件后时,基于当前组件(即前置组件)的信息以及之前提取的组件关联数据,选择该前置组件后出现概率较高的20个组件。
步骤205,计算该20个组件的推荐得分,推荐得分=freq(p,s),选择推荐得分较高的10个组件生成后置组件列表,通过用户界面显示给用户,供用户选择。
本发明提供的组件编排方法的以根据实际情况的需要进行不同的方式的组合。例如,在实际的编排过程中,如果一个流程只有一个组件,则不需要选择后置组件,因此就不需要上述步骤103及其具体实施方法,并且在构建组件信息集合时也不需要包括组件关联数据了。
本发明专利申请还提供了一种组件编排系统,如图3所示,所述系统包括:
索引模块301,用于构建组件信息集合;
查询模块302,用于基于收到的组件查询信息,利用所述组件信息集合生成与所述组件查询信息相应的组件列表。
其中,所述系统还包括:
推荐模块303,用于当检测到需要选择关联组件时,获取待被关联的前置组件,基于所述前置组件,利用所述组件信息集合生成相应于所述前置组件的后置组件列表。
其中,所述索引模块还用于:
基于各组件的历史使用数据构建所述组件信息集合,所述组件信息集合包括组件关键字数据、组件使用频率数据、组件关联数据。
其中,所述查询模块还用于:
基于所述组件查询信息,利用所述组件关键字数据和所述组件使用频率数据计算各组件的匹配得分,并选择所述匹配得分高的前L个组件生成与所述组件查询信息相应的组件列表,L为大于等于1的正整数。
其中,所述查询模块还用于通过下述步骤计算各组件的匹配得分:
获取所述查询信息包括的j个关键字t1,t2,...,tj,j为大于等于1的正整数;
通过下述公式计算各组件的匹配得分:
其中,d表示计算所述匹配得分的组件,tf(tiind)表示关键字ti在组件d的组件关键字数据中出现频率的平方根,idf(ti)表示关键字ti在组件d的组件关键字数据中的逆文本频率指数,fq(d)表示组件d在流程库中的出现频率,norm(d)表示关键字归一化因子,
并且其中,numDocs表示所述流程库中总的组件个数,docFreq表示一组件的组件关键字数据中包括关键字ti的组件个数,
numTerms表示组件d的组件关键字数据中包括的所有关键字的个数。
其中,所述推荐模块还用于:
基于所述组件关联数据,在所述组件信息集合中选择所述前置组件后出现概率高的前N个组件,N为大于等于1的正整数;
获取所述前N个组件在所述前置组件后出现概率,基于所述出现概率分别计算所述前N个组件的推荐得分,并选择所述推荐得分高的前M个组件生成相应于所述前置组件的后置组件列表,M为大于等于1的正整数。
其中,所述推荐模块还用于通过下述方式计算所述前N个组件的推荐得分:
推荐得分=freq(p,s),
其中,freq(p,s)表示所述前置组件为p时,所述后置组件为s的概率的平方根。
现有组件编排方法并不能根据历史的组件使用频率统计数据来对返回结果进行更优的排序,也不能在用户没有提供关键字的时候提供智能的组件推荐。
本发明专利申请提出的组件编排方法和系统,与现有技术相比具有以下有益效果:
(1)通过组件的历史数据生成组件信息集合,这样在基于组件查询信息查询组件以及推荐后置组件时,可以借助于组件使用历史,包括使用频率、关联信息等,对待选择的组件进行智能的优化的推荐。
(2)科学地利用用户查询时输入的查询信息,通过对查询信息中的关键字进行拆分得到基本关键字,利用组件的关键字数据,并通过多次实验得到的计算公式计算组件的匹配得分,从而通过智能的方式得到满足用户查询要求的较佳组件。
(3)当捕获用户需要选择关联组件(后置组件)的操作时,自动通过推荐算法推荐后置组件,而无需用户提供关键字,极大地简化了用户操作。
(4)当用户没有提供关键字时,根据前置组件的信息和组件关联数据来推荐后置组件给用户,这种利用前置组件和组件关联数据进行推荐的方法更加科学,为用户提供了后置组件的最佳筛选方案。
本发明专利申请的方法的系统,通过智能的查询和推荐算法,在避免花费用户大量的时间和精力的同时,确保了筛选得到较佳的组件,提高了组件编排的效率和成功率。
上面描述的内容可以单独地或者以各种方式组合起来实施,而这些变型方式都在本发明的保护范围之内。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的物品或者设备中还存在另外的相同要素。
以上实施例仅用以说明本发明的技术方案而非限制,仅仅参照较佳实施例对本发明进行了详细说明。本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围,均应涵盖在本发明的权利要求范围当中。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些组件或所有组件可以被实施为由处理器,如数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。

Claims (14)

1.一种组件编排方法,其特征在于,所述方法包括:
构建组件信息集合;
基于收到的组件查询信息,利用所述组件信息集合生成与所述组件查询信息相应的组件列表。
2.如权利要求1所述的方法,其特征在于,所述方法还包括:
当检测到需要选择关联组件时,获取待被关联的前置组件,基于所述前置组件,利用所述组件信息集合生成相应于所述前置组件的后置组件列表。
3.如权利要求2所述的方法,其特征在于,构建组件信息集合包括:
基于各组件的历史使用数据构建所述组件信息集合,所述组件信息集合包括组件关键字数据、组件使用频率数据、组件关联数据。
4.如权利要求3所述的方法,其特征在于,利用所述组件信息集合生成与所述组件查询信息相应的组件列表包括:
基于所述组件查询信息,利用所述组件关键字数据和所述组件使用频率数据计算各组件的匹配得分,并选择所述匹配得分高的前L个组件生成与所述组件查询信息相应的组件列表,L为大于等于1的正整数。
5.如权利要求4所述的方法,其特征在于,利用所述组件关键字数据和所述组件使用频率数据计算各组件的匹配得分包括:
获取所述查询信息包括的j个关键字t1,t2,...,tj,j为大于等于1的正整数;
通过下述公式计算各组件的匹配得分:
其中,d表示计算所述匹配得分的组件,tf(tiind)表示关键字ti在组件d的组件关键字数据中出现频率的平方根,idf(ti)表示关键字ti在组件d的组件关键字数据中的逆文本频率指数,fq(d)表示组件d在流程库中的出现频率,norm(d)表示关键字归一化因子,
并且其中,numDocs表示所述流程库中总的组件个数,docFreq表示一组件的组件关键字数据中包括关键字ti的组件个数,
numTerms表示组件d的组件关键字数据中包括的所有关键字的个数。
6.如权利要求3所述的方法,其特征在于,利用所述组件信息集合生成相应于所述前置组件的后置组件列表包括:
基于所述组件关联数据,在所述组件信息集合中选择所述前置组件后出现概率高的前N个组件,N为大于等于1的正整数;
获取所述前N个组件在所述前置组件后出现概率,基于所述出现概率分别计算所述前N个组件的推荐得分,并选择所述推荐得分高的前M个组件生成相应于所述前置组件的后置组件列表,M为大于等于1的正整数。
7.如权利要求6所述的方法,其特征在于,通过下述方式计算所述前N个组件的推荐得分:
推荐得分=freq(p,s),
其中,freq(p,s)表示所述前置组件为p时,所述后置组件为s的概率的平方根。
8.一种组件编排系统,其特征在于,所述系统包括:
索引模块,用于构建组件信息集合;
查询模块,用于基于收到的组件查询信息,利用所述组件信息集合生成与所述组件查询信息相应的组件列表。
9.如权利要求8所述的系统,其特征在于,所述系统还包括:
推荐模块,用于当检测到需要选择关联组件时,获取待被关联的前置组件,基于所述前置组件,利用所述组件信息集合生成相应于所述前置组件的后置组件列表。
10.如权利要求9所述的系统,其特征在于,所述索引模块还用于:
基于各组件的历史使用数据构建所述组件信息集合,所述组件信息集合包括组件关键字数据、组件使用频率数据、组件关联数据。
11.如权利要求10所述的系统,其特征在于,所述查询模块还用于:
基于所述组件查询信息,利用所述组件关键字数据和所述组件使用频率数据计算各组件的匹配得分,并选择所述匹配得分高的前L个组件生成与所述组件查询信息相应的组件列表,L为大于等于1的正整数。
12.如权利要求11所述的系统,其特征在于,所述查询模块还用于通过下述步骤计算各组件的匹配得分:
获取所述查询信息包括的j个关键字t1,t2,…,tj,j为大于等于1的正整数;
通过下述公式计算各组件的匹配得分:
其中,d表示计算所述匹配得分的组件,tf(tiind)表示关键字ti在组件d的组件关键字数据中出现频率的平方根,idf(ti)表示关键字ti在组件d的组件关键字数据中的逆文本频率指数,fq(d)表示组件d在流程库中的出现频率,norm(d)表示关键字归一化因子,
并且其中,numDocs表示所述流程库中总的组件个数,docFreq表示一组件的组件关键字数据中包括关键字ti的组件个数,
numTerms表示组件d的组件关键字数据中包括的所有关键字的个数。
13.如权利要求10所述的系统,其特征在于,所述推荐模块还用于:
基于所述组件关联数据,在所述组件信息集合中选择所述前置组件后出现概率高的前N个组件,N为大于等于1的正整数;
获取所述前N个组件在所述前置组件后出现概率,基于所述出现概率分别计算所述前N个组件的推荐得分,并选择所述推荐得分高的前M个组件生成相应于所述前置组件的后置组件列表,M为大于等于1的正整数。
14.如权利要求13所述的系统,其特征在于,所述推荐模块还用于通过下述方式计算所述前N个组件的推荐得分:
推荐得分=freq(p,s),
其中,freq(p,s)表示所述前置组件为p时,所述后置组件为s的概率的平方根。
CN201811161698.XA 2018-09-30 2018-09-30 一种组件编排方法和系统 Active CN109359188B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201811161698.XA CN109359188B (zh) 2018-09-30 2018-09-30 一种组件编排方法和系统
PCT/CN2019/107834 WO2020063669A1 (zh) 2018-09-30 2019-09-25 一种组件编排方法、装置、设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811161698.XA CN109359188B (zh) 2018-09-30 2018-09-30 一种组件编排方法和系统

Publications (2)

Publication Number Publication Date
CN109359188A true CN109359188A (zh) 2019-02-19
CN109359188B CN109359188B (zh) 2020-01-14

Family

ID=65348706

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811161698.XA Active CN109359188B (zh) 2018-09-30 2018-09-30 一种组件编排方法和系统

Country Status (2)

Country Link
CN (1) CN109359188B (zh)
WO (1) WO2020063669A1 (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110489120A (zh) * 2019-07-03 2019-11-22 平安证券股份有限公司 基于组件的页面开发方法及服务器
CN110647666A (zh) * 2019-09-03 2020-01-03 平安科技(深圳)有限公司 模板与公式的智能匹配方法、装置及计算机可读存储介质
WO2020063669A1 (zh) * 2018-09-30 2020-04-02 北京数聚鑫云信息技术有限公司 一种组件编排方法、装置、设备及介质
CN112506529A (zh) * 2020-11-26 2021-03-16 杭州讯酷科技有限公司 一种使用插件快速构建兼容系统的方法
CN112540758A (zh) * 2020-12-08 2021-03-23 杭州讯酷科技有限公司 一种基于语音识别的ui界面智能构建方法
CN113703753A (zh) * 2021-07-19 2021-11-26 青岛海尔科技有限公司 用于产品开发的方法、装置和产品开发系统

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101030136A (zh) * 2006-01-30 2007-09-05 国际商业机器公司 从分层目录中选择软件组件的方法和系统
CN101872375A (zh) * 2010-05-28 2010-10-27 浙江大学 基于索引的汽车电子软件组件模型仓库的实现方法
CN102779151A (zh) * 2012-05-10 2012-11-14 北京奇虎科技有限公司 应用程序的搜索方法、装置及系统
CN106227668A (zh) * 2016-07-29 2016-12-14 腾讯科技(深圳)有限公司 数据处理方法和装置
CN106294786A (zh) * 2016-08-12 2017-01-04 北京创新乐知信息技术有限公司 一种代码搜索方法和系统
CN107045504A (zh) * 2016-02-05 2017-08-15 百度在线网络技术(北京)有限公司 提供与功能组件相关联的搜索建议项的方法与装置
KR20170130821A (ko) * 2016-05-19 2017-11-29 충북대학교 산학협력단 컴포넌트 상호연관성 추출 기반 소프트웨어 컴포넌트 추천 방법 및 이를 기록한 기록 매체

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102750280A (zh) * 2011-04-19 2012-10-24 国际商业机器公司 用于搜索的计算机处理方法及系统
CN108153520B (zh) * 2018-03-20 2020-10-27 上海屹通信息科技发展有限公司 软件开发方法及装置
CN109359188B (zh) * 2018-09-30 2020-01-14 北京数聚鑫云信息技术有限公司 一种组件编排方法和系统

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101030136A (zh) * 2006-01-30 2007-09-05 国际商业机器公司 从分层目录中选择软件组件的方法和系统
CN101872375A (zh) * 2010-05-28 2010-10-27 浙江大学 基于索引的汽车电子软件组件模型仓库的实现方法
CN102779151A (zh) * 2012-05-10 2012-11-14 北京奇虎科技有限公司 应用程序的搜索方法、装置及系统
CN107045504A (zh) * 2016-02-05 2017-08-15 百度在线网络技术(北京)有限公司 提供与功能组件相关联的搜索建议项的方法与装置
KR20170130821A (ko) * 2016-05-19 2017-11-29 충북대학교 산학협력단 컴포넌트 상호연관성 추출 기반 소프트웨어 컴포넌트 추천 방법 및 이를 기록한 기록 매체
CN106227668A (zh) * 2016-07-29 2016-12-14 腾讯科技(深圳)有限公司 数据处理方法和装置
CN106294786A (zh) * 2016-08-12 2017-01-04 北京创新乐知信息技术有限公司 一种代码搜索方法和系统

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020063669A1 (zh) * 2018-09-30 2020-04-02 北京数聚鑫云信息技术有限公司 一种组件编排方法、装置、设备及介质
CN110489120A (zh) * 2019-07-03 2019-11-22 平安证券股份有限公司 基于组件的页面开发方法及服务器
CN110647666A (zh) * 2019-09-03 2020-01-03 平安科技(深圳)有限公司 模板与公式的智能匹配方法、装置及计算机可读存储介质
CN112506529A (zh) * 2020-11-26 2021-03-16 杭州讯酷科技有限公司 一种使用插件快速构建兼容系统的方法
CN112506529B (zh) * 2020-11-26 2024-03-26 杭州讯酷科技有限公司 一种使用插件快速构建兼容系统的方法
CN112540758A (zh) * 2020-12-08 2021-03-23 杭州讯酷科技有限公司 一种基于语音识别的ui界面智能构建方法
CN112540758B (zh) * 2020-12-08 2024-05-07 杭州讯酷科技有限公司 一种基于语音识别的ui界面智能构建方法
CN113703753A (zh) * 2021-07-19 2021-11-26 青岛海尔科技有限公司 用于产品开发的方法、装置和产品开发系统
CN113703753B (zh) * 2021-07-19 2023-06-09 青岛海尔科技有限公司 用于产品开发的方法、装置和产品开发系统

Also Published As

Publication number Publication date
WO2020063669A1 (zh) 2020-04-02
CN109359188B (zh) 2020-01-14

Similar Documents

Publication Publication Date Title
CN109359188A (zh) 一种组件编排方法和系统
US11669750B2 (en) System and/or method for generating clean records from imperfect data using model stack(s) including classification model(s) and confidence model(s)
US20170161375A1 (en) Clustering documents based on textual content
US9117006B2 (en) Recommending keywords
US20110225161A1 (en) Categorizing products
US9875294B2 (en) Method and apparatus for classifying object based on social networking service, and storage medium
Das et al. Sense GST: Text mining & sentiment analysis of GST tweets by Naive Bayes algorithm
CN103136228A (zh) 一种图片搜索方法以及图片搜索装置
CN106997390B (zh) 一种设备配件或零部件商品交易信息搜索方法
WO2020077350A1 (en) Adaptable systems and methods for discovering intent from enterprise data
CA2788435A1 (en) Method and system for conducting legal research using clustering analytics
US10565188B2 (en) System and method for performing a pattern matching search
CN111428100A (zh) 一种数据检索方法、装置、电子设备及计算机可读存储介质
CN106294689B (zh) 一种基于文本类特征选择进行降维的方法和装置
CN110134812A (zh) 一种人脸搜索方法及其装置
EP4002151A1 (en) Data tagging and synchronisation system
CN109684552A (zh) 一种智能信息推荐系统
CN115495587A (zh) 一种基于知识图谱的告警分析方法及装置
Harakawa et al. Extraction of hierarchical structure of Web communities including salient keyword estimation for Web video retrieval
CN110378560B (zh) 仲裁员数据筛选方法、装置、计算机设备和存储介质
CN104978375B (zh) 一种语料过滤方法及装置
CN113392208A (zh) It运维故障处理经验积累的方法、装置及存储介质
US9646094B2 (en) System and method for performing a multiple pass search
US20230134989A1 (en) System and method for building document relationships and aggregates
CN114625916A (zh) 一种视频搜索方法、装置、电子设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant