CN102866911B - Mashup应用建立方法及装置 - Google Patents

Mashup应用建立方法及装置 Download PDF

Info

Publication number
CN102866911B
CN102866911B CN201210337030.2A CN201210337030A CN102866911B CN 102866911 B CN102866911 B CN 102866911B CN 201210337030 A CN201210337030 A CN 201210337030A CN 102866911 B CN102866911 B CN 102866911B
Authority
CN
China
Prior art keywords
assembly
mashup
flow process
user
terminal
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
CN201210337030.2A
Other languages
English (en)
Other versions
CN102866911A (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.)
Beihang University
Original Assignee
Beihang University
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 Beihang University filed Critical Beihang University
Priority to CN201210337030.2A priority Critical patent/CN102866911B/zh
Publication of CN102866911A publication Critical patent/CN102866911A/zh
Application granted granted Critical
Publication of CN102866911B publication Critical patent/CN102866911B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Transfer Between Computers (AREA)

Abstract

本发明提供一种Mashup应用建立方法及装置,其中该方法包括接收终端发送的待连接组件的组件信息;将待连接组件可以连接的一个或多个目标组件的组件信息分别发送给终端;根据接收到的用户通过终端选择的目标组件的组件信息,将选择的目标组件与待连接组件进行连接,直至接收到终端发送的结束请求时,生成包括已连接的两个或多个组件的Mashup应用。通过利用Mashup平台内的数据源和第三方开放API在用户建立Mashup应用的过程中进行推荐,使得用户可以通过半自动化的方式建立Mashup应用,并且推荐组件的方式还能够对用户的创建过程产生提示和引导的作用,可以方便用户快速地对资源进行整合,高效地构建个性化的应用,有效地提高了开发效率和用户体验。

Description

Mashup应用建立方法及装置
技术领域
本发明涉及计算机及网络技术,尤其涉及一种Mashup应用建立方法及装置。
背景技术
面向服务的体系结构(Service-Oriented Architecture,SOA)是在高速发展的网络信息技术背景下诞生的一种新的软件体系结构,Web服务是面向服务的体系结构的最佳技术实践之一。随着Web服务技术的发展,Web服务的定义也开始进一步扩展和延伸,互联网进入Web2.0时代以来,提倡资源的共享、聚集和复用,更加关注用户的参与和协作,强调良好的用户交互体验和个性化,大量的开放数据源和第三方应用程序编程接口(Application Programming Interface,API)开始涌现,通过对其进行整合来快速开发出满足用户特定需求的、生动有趣的应用。在这样的技术背景下,信息整合(Mashup)技术应运而生。
图1为现有技术中Mashup应用的系统架构示意图,如图1所示,Mashup应用的架构划分为三个部分,分别为API/内容提供者、Mashup站点和客户端,其中Mashup站点也可称为Mashup平台,用户通过客户端上的浏览器与Mashup站点进行通信交互。Mashup平台内往往包含大量的数据源和第三方API等组件。用户利用Mashup平台内的组件,不需要编程经验即可构建成满足其需求的应用。
但是,用户在构建Mashup应用时,需要从Mashup平台内部大量的组件中进行选择,并且通过查看各组件的相关解释说明,来判断所选择的组件之间是否可以进行连接,因此,现有技术中构建Mashup应用存在开发效率较低的问题。
发明内容
本发明提供了一种Mashup应用建立方法及装置,用于提高Mashup应用建立的效率。
本发明的第一个方面是提供一种Mashup应用建立方法,包括:
接收终端发送的待连接组件的组件信息;
将所述待连接组件可以连接的一个或多个目标组件的组件信息分别发送给所述终端;
根据接收到的用户通过所述终端选择的目标组件的组件信息,将所述选择的目标组件与所述待连接组件进行连接,直至接收到所述终端发送的结束请求时,生成包括已连接的两个或多个组件的Mashup应用。
本发明的另一个方面是提供一种Mashup平台,包括:
执行引擎,用于接收终端发送的待连接组件的组件信息;
推荐引擎,用于将所述待连接组件可以连接的一个或多个目标组件的组件信息分别发送给所述终端;
所述执行引擎还用于,根据接收到的用户通过所述终端选择的目标组件的组件信息,将所述选择的目标组件与所述待连接组件进行连接,直至接收到所述终端发送的结束请求时,生成包括已连接的两个或多个组件的Mashup应用。
本发明实施例提供的Mashup应用建立方法及装置,通过接收终端发送的待连接组件的组件信息,将待连接组件可以连接的一个或多个目标组件的组件信息分别发送给终端,根据接收到的用户通过终端选择的目标组件的组件信息,将选择的目标组件与待连接组件进行连接,直至接收到终端发送的结束请求时,生成包括已连接的两个或多个组件的Mashup应用。通过利用Mashup平台内的数据源和第三方开放API在用户建立Mashup应用的过程中进行推荐,使得用户可以通过半自动化的方式建立Mashup应用,而无需查看各组件的相关解释说明,并且推荐组件的方式还能够对用户的创建过程产生提示和引导的作用,可以方便用户快速地对资源进行整合,高效地构建个性化的应用,有效地提高了开发效率和用户体验。
附图说明
图1为现有技术中Mashup应用的系统架构示意图;
图2为现有技术中Mashup应用的分层示意图;
图3为本发明提供的Mashup应用建立方法一实施例的流程图;
图4为本发明提供的Mashup应用建立方法另一实施例的流程图;
图5为本发明提供的Mashup应用建立方法又一实施例的流程图;
图6a为两个Mashup应用的流程;
图6b为两个Mashup应用的带权有向图;
图7为本发明提供的Mashup平台一实施例的结构示意图;
图8为本发明提供的Mashup平台另一实施例的结构示意图;
图9为本发明提供的Mashup平台的系统架构示意图。
具体实施方式
Mashup大量运用Web2.0技术,在资源共享、聚集与复用方面,通过第三方开放API和Web服务(Web Service)扩展应用的功能,使用简易信息聚合协议(Really Simple Syndication,RSS)、Atom等信息聚集技术获取数据资源,其中Atom是Atom联合格式(Atom Syndication Format)的简称,是一种基于可扩展标记语言(eXtensible Markup Language,XML)的超媒体格式;在用户参与、协作方面,由于Mashup应用具有逻辑简单,开发周期短,维护成本低等特点,使得非信息技术(Information Technology,IT)背景的普通用户也可以构建符合其特定需求的应用;在用户体验方面,Mashup应用从客户端的角度出发,关注软件的交互性与用户体验,通常结合阿贾克斯(Asynchronous JavaScript and XML,Ajax)和富互联网应用(RichInternet Applications,RIA)等富互联网应用技术将应用直观地呈现给用户,Ajax是一种综合XML和javascript来实现浏览器与服务器端异步交互的技术。
Mashup结构中的API/内容提供者是聚合内容的来源,通常会以表述性状态转移(Representational state transfer,REST)、Web Service和RSS/Atom等形式对外提供服务和数据;Mashup站点用于将所获得的,或者自有的资源和服务封装成标准组件,管理这些组件,并响应应用程序对于资源、服务的开放调用;客户端用于以图形化的方式为用户展现执行结果,并提供用户交互界面,为减轻服务器的运行压力,一些数据整合工作也可在客户端上进行。
图2为现有技术中Mashup应用的分层示意图,如图2所示,Mashup应用采用模型、视图和控制(Model View Controller,MVC)模式,包括数据层、流程层、表现层,Mashup应用的整合是通过数据层整合、流程层整合和表现层整合实现的。
数据层主要进行数据的初始化与整合,即实现数据层整合。资源的访问方式有通过REST或简单对象访问协议(Simple Object Access Protocol,SOAP)形式的Web服务获取、超文本传送协议(hypertext transport protocol,HTTP)获取和XML远程方法调用(XML Remote Procedure Call,XML RPC)获取等几种形式,其中XML RPC以XML作为传送内容的组织格式,使用超文本传送协议(Hypertext Transport Protocol,HTTP)进行传输。这些数据具有各自的数据结构和语义信息,数据层提供对数据进行转换、过滤、格式化、合并等的操作组件,通过对数据进行格式化与整合,使得各种形式的数据以结构化的格式,例如XML格式或RSS/Atom提要格式等格式,输出到流程层。
流程层通过调用第三方开放API,实现流程层整合,合并过程通常使用程序语言,例如Java编程语言,或工作流语言,例如(Web ServiceBusiness Process Execution Language,WS-BPEL)来实现,WS-BPEL是一种基于XML的业务流程描述语言。但是因为这类语言不能提供对不同资源的连接,不能处理与浏览器的交互,因此并不能完全适应对Mashup应用建模的需要,难以直接用于建立Mashup应用。为了描述建模逻辑及交互过程,在参考工作流语言设计思想的基础上,采用新的符合需求的描述语言。目前,Bite或Swashup是Mashup中用来描述交互和模型组合的语言。流程层整合输出的结果,通过微件(Widget)部件的形式展现给表现出,Widget本身包含一定的功能,并且提供交互的接口。
表现层用于提供与用户交互的接口,并向用户展现整合结果。现有的实现方式通常使用HTML、Ajax、JavaScript技术构建复杂网页。表现层整合网页用户界面(User Interface,UI)组件的操作,可以在客户端或服务器端进行。若在服务器端进行表现层整合,则服务器作为Mashup应用与其它数据、服务之间的代理;若在客户端进行表现层整合,则Mashup的数据与表现整合均在客户端完成。表现层整合的工作需要用户参与,区别于现有技术中的实现方式,本发明不需要用户完全手动配置所需组件间的接口连接,可以通过半自动的方式完成所需组件间的接口连接。
本发明各实施例的执行主体为Mashup平台,即上述Mashup站点。
图3为本发明提供的Mashup应用建立方法一实施例的流程图,如图3所示,该方法包括:
步骤101、接收终端发送的待连接组件的组件信息。
Mashup平台由一台或多台服务器搭建,该Mashup平台可以与终端通信连接,终端可以为个人电脑(Personal Computer,PC)或者手机等移动终端。当终端为PC时,该终端可以通过宽带互联网与Mashup平台通信连接;当终端为手机等移动终端时,该终端可以通过移动互联网与Mashup平台通信连接。
终端与Mashup平台通信时,可以在所发送的信息中携带标识,用于表征该终端为PC或者移动终端。由于PC的运行性能普遍高于移动终端,因此,创建Mashup应用的操作步骤可以利用PC完成,进而利用PC或者移动终端登录Mashup平台均可运行所创建的Mashup应用。但是利用PC创建Mashup应用仅为一种可选的实施方式,如果移动终端的运行性能足以用于创建Mashup应用,那么创建Mashup应用的操作步骤也可以在移动终端上进行。
用户需要在Mashup平台上创建Mashup应用,需要先在Mashup平台上进行注册。当用户利用已注册的用户信息登录到Mashup平台之后,所创建的Mashup应用将保存在该用户信息对应的存储空间中,以供用户在登录到Mashup平台之后,可以看到其已创建的一个或多个Mashup应用。
用户在终端上通过浏览器可以远程登录Mashup平台,在根据提示信息将Mashup平台提供的插件安装在终端上之后,即可通过终端上的可视化编辑器创建Mashup应用。终端将用户通过可视化编辑器进行的操作发送给Mashup平台,Mashup平台向终端返回消息或操作之后,终端将从Mashup平台接收到的消息或操作通过可视化编辑器展现给用户。也就是说,可视化编辑器是Mashup平台与用户之间的接口,用户通过可视化编辑器访问Mashup平台,用户在可视化编辑器上进行的操作即为对Mashup平台进行的操作。
用户通过可视化编辑器创建Mashup应用时,将可视化编辑器中所展现的组件根据用户所需创建的Mashup应用进行排列组合,按照用户所选择的流程连接之后,即完成对Mashup应用的创建。对于用户而言,Mashup平台中的实现方式对用户不可见,用户只需要通过终端在可视化编辑器上进行操作即可。因此,用户不需要具有丰富的编程经验,也可以创建Mashup应用。
本发明各实施例区别于现有技术中的是,不需要用户阅读大量关于各个组件的功能介绍或用于解释说明的文档,来人工选择与当前所选择的组件连接的下一个组件,Mashup平台会向用户推荐一个或多个组件,供用户进行选择,并且推荐操作贯穿建立Mashup应用的整个过程。也就是说,用户每次选择了新的组件,Mashup平台就向该用户继续推荐适合连接在该组件之后的一个或多个组件。
当用户通过终端上的可视化编辑器选择了一个组件时,无论该组件是创建Mashup应用过程中选择的第一个组件,还是在创建过程中选择的中间组件,终端均在用户选择了一个新的组件之后,向Mashup平台发送该组件的组件信息,即待连接组件的组件信息。
步骤102、将所述待连接组件可以连接的一个或多个目标组件的组件信息分别发送给所述终端。
Mashup平台中预先存储有各组件之间是否可以连接的连接关系,该连接关系可以通过数据表或者其他形式存储。Mashup平台接收终端发送的待连接组件的组件信息之后,根据待连接组件的组件信息,查找到与该待连接组件可以连接的一个或多个目标组件,进而将所查找到的一个或多个目标组件的组件信息发送给该终端。
从而,终端在接收到一个或多个目标组件的组件信息之后,即可获知待连接组件可连接的目标组件,并将这些组件的组件信息通过可视化编辑器展示给用户。用户可以从一个或多个目标组件中选择需要连接的组件。
步骤103、根据接收到的用户通过所述终端选择的目标组件的组件信息,将所述选择的目标组件与所述待连接组件进行连接,直至接收到所述终端发送的结束请求时,生成包括已连接的两个或多个组件的Mashup应用。
用户从可视化编辑器展示的一个或多个目标组件中选择了需要连接的组件之后,终端将用户所选择组件的组件信息发送给Mashup平台。Mashup平台将用户所选择的组件与该待连接组件进行连接。Mashup平台将用户所选择的组件与该待连接组件进行连接的过程对用户是透明的,具体的连接操作,由Mashup平台在后台完成。
其中,Mashup平台发送给终端的目标组件的组件信息,可以为一个或多个单独的组件,还可以为一个或多个流程片段,流程片段由已连接的一个或多个组件所构成。
在用户从目标组件中选择了单独的组件和/或流程片段之后,Mashup平台相应地将用户选择的组件分别与该待连接组件进行连接即可。当用户需要使用流程片段中的一个或多个单独的组件时,可以在选择了该流程片段之后,将该流程片段中不需要使用的组件删除。
在用户所选择的组件与该待连接组件连接完成后,该用户所选择的组件即成为下一次操作中的待连接组件。也就是说,无论用户选择的是单独的组件还是流程片段,当所选择的组件与待连接组件建立连接之后,已连接完成的各组件中,按照运行流程的最后一个组件,即为下一次操作中的待连接组件,当已连接完成的各组件的流程为多条分支时,每条分支的最后一个组件均为下一次操作中的待连接组件。
用户每次选择了新的一个或多个组件之后,Mashup平台即可获知用户所选择的组件,进而继续推荐可以与当前已建立的组件流程中的待连接组件组件连接的其他组件的组件信息,以供用户进行选择,直至用户完成建立Mashup应用所需的若干个组件之后,用户可以通过终端向Mashup平台发送结束请求,表示需要结束Mashup应用的建立过程,生成由已选择的两个或多个组件组成的Mashup应用。
本发明实施例提供的Mashup应用建立方法,通过接收终端发送的待连接组件的组件信息,将待连接组件可以连接的一个或多个目标组件的组件信息分别发送给终端,根据接收到的用户通过终端选择的目标组件的组件信息,将选择的目标组件与待连接组件进行连接,直至接收到终端发送的结束请求时,生成包括已连接的两个或多个组件的Mashup应用。通过利用Mashup平台内的数据源和第三方开放API在用户建立Mashup应用的过程中进行推荐,使得用户可以通过半自动化的方式建立Mashup应用,而无需查看各组件的相关解释说明,并且推荐组件的方式还能够对用户的创建过程产生提示和引导的作用,可以方便用户快速地对资源进行整合,高效地构建个性化的应用,有效地提高了开发效率和用户体验。
图4为本发明提供的Mashup应用建立方法另一实施例的流程图,如图4所示,在上述实施例的基础上,在执行步骤101之后,执行步骤102之前,该方法还可以包括步骤104。
步骤104、判断所述待连接组件是否属于至少一个流程片段;
相应地,步骤102具体包括步骤1021和步骤1022。在步骤104的判断结果为是时,执行步骤1021;在判断结果为否时,执行步骤1022。
步骤1021、将所述待连接组件所属的一个或多个流程片段作为目标组件,并将所述目标组件的组件信息发送给所述终端。
步骤1022、将所述待连接组件可以连接的组件所属的一个或多个流程片段作为目标组件,并将所述目标组件的组件信息发送给所述终端。
Mashup平台在向用户推荐组件时,也就是Mashup平台将待连接组件可以连接的一个或多个目标组件的组件信息发送给终端时,一种方式可以是,向用户推荐一个或多个单独的组件;另一种方式可以是,优先向用户推荐一个或多个流程片段,当没有流程片段可供推荐的时候,再向用户推荐一个或多个单独的组件。
具体的,向用户推荐一个或多个单独的组件的方式为,Mashup平台将待连接组件可以连接组件的组件信息发送给终端,以供用户从中进行选择。所推荐的单独的组件的数量可以为待连接组件可以连接的全部组件,也可以为其中的部分组件。当采用推荐与待连接组件可以连接的部分组件时,可以利用相关度为衡量标准,将相关度符合预设条件的组件推荐给用户。其中,相关度可以根据Mashup平台中已有的Mashup应用中组件之间的连接概率进行统计,被连接在一起的概率越高的组件之间的相关度越高,被连接在一起的概率越低的组件之间的相关度越低。
具体的,在向用户推荐一个或多个流程片段时,首先判断待连接组件是否属于Mashup平台已存储的流程片段中的一个组件。
Mashup平台中可以预先存储有至少一个流程片段。流程片段由两个或多个已连接在一起的组件所组成。相应地,Mashup平台在接收到待连接组件的组件信息之后,可以对待连接组件进行判断,即判断该待连接组件是否为至少一个流程片段中的一个组件。
若判断结果为,该待连接组件是Mashup平台已存储的至少一个流程片段中的一个组件,则将该待连接组件所属的流程片段作为目标组件,该待连接组件可以属于一个或多个流程片段。进而将待连接组件所属的一个或多个流程片段中除了该待连接组件以外的其他组件的组件信息发送给终端,由于流程片段中的组件是存在连接关系的,因此在组件信息中还携带有存在连接关系的组件之间的连接关系。
若判断结果为,该待连接组件不是Mashup平台已存储的至少一个流程片段中的一个组件,则将该待连接组件可以连接的一个或多个单独的组件所属的一个或多个流程片段作为目标组件,各单独的组件可以属于一个或多个流程片段,进而将作为目标组件的整个流程片段发送给终端。由于流程片段中的组件是存在连接关系的,因此在组件信息中还携带有存在连接关系的组件之间的连接关系。
若待连接组件所属的流程片段为多条,或者待连接组件可以连接的组件所属的流程片段为多条,当向用户推荐的,或者说发送给终端的组件信息是多条流程片段的组件信息时,用户可以通过终端从中选择一个或多个流程片段连接到待连接组件上。如果用户需要使用流程片段中的某一个或几个组件,可以选择将其需要使用的组件连接到待连接组件上,将其余不需要使用的组件删除即可。
由于可以与待连接组件进行连接的组件的数量可能较多,相应地,该待连接组件可以连接的组件所属的流程片段也可能较多,因此,一种可选的实施方式为,将所述待连接组件可以连接的组件所属的一个或多个流程片段中,与所述待连接组件的相关度大于或等于相关度门限值的流程片段作为目标组件。
相关度是根据Mashup平台已建立和存储的Mashup应用中各组件之间的连接关系预先计算出的,如果两个组件经常被连接在一起使用,那么这两个组件被连接在一起的概率越高,也就是说这两个组件之间的相关度较高;如果两个组件不经常被连接在一起使用,那么这两个组件被连接在一起的概率越低,也就是说这两个组件之间的相关度较低。
同样,如果一个组件与一个流程片段之间经常被连接在一起使用,那么这个组件与该流程片段之间被连接在一起的概率越高,也就是说这个组件与该流程片段之间的相关度较高;如果一个组件与一个流程片段之间不经常被连接在一起使用,那么这个组件与该流程片段之间被连接在一起的概率越低,也就是说这个组件与该流程片段之间的相关度较低。
因此,将与待连接组件的相关度较高的流程片段推荐给用户,会使得推荐操作更有针对性。此外,可以根据预先设置的推荐方式,将相关度最大的一个流程片段作为目标组件推荐给用户,或者将相关度大于或等于预设的相关度门限值的一个或多个流程片段作为目标组件推荐给用户。
在执行完步骤1021或1022之后,继续执行步骤103。
需要说明的是,用户可以通过终端对Mashup平台的操作模式进行设置,也就是说,用户可以选择Mashup平台向其推荐单独的组件,也可以选择Mashup平台向其推荐流程片段,还可以选择Mashup平台不向其进行推荐。
当用户开启推荐流程片段的功能后,推荐给用户的不是一个单独的组件,而是多个组件组成的一个流程片段。例如,一个由10个组件组成的流程,推荐单个组件需要用户选择10次左右,而推荐片段可能每个片段包含3-4个组件,用户只需要选择3次即可完成,流程片段的连接会由平台自动完成。这样既能够提高开发效率,又能够降低流程的复杂度和流程出错的可能性。
具体的,一种可选的实施方式为,Mashup平台向用户推荐目标组件的方法基于概率统计模块。若干组件如果经常同时出现并且连接在一起使用,那么说明这些组件的组合是有特定意义的。
假设Mashup平台中包括流程片段S,S中包括流程片段{S1,S2,…Sk},当前用户选择的组件为C,即待连接组件为C,Mashup平台需要为用户推荐备选组件C*,用于连接到C。可以对C进行输入的组件集合I,I中包括{I1,I2,I3,…Ii},可以与C的输出端连接的组件集合O,O中包括{O1,O2,O3,…Oj}。
如果Mashup平台判断出组件C属于S,也就是说,C为S中的某个组件Si,则Mashup平台将与C相连的各组件作为目标组件推荐给用户。
如果Mashup平台判断出组件C不属于S,也就是说,C不是S中的某个组件Si,则需要计算可以与C连接的一个或多个C*与C的相关度,或者说C*与C被连接在一起的概率。具体的计算方法如下:
P ( C * | ∪ m = 1 i + j + 1 A m )
= &Sigma; m = 1 i + j + 1 P ( C * | A m ) - &Sigma; 1 &le; m 1 < m 2 &le; i + j + 1 P ( C * | A m 1 &cap; A m 2 ) + . . . + P ( C * | &cap; m = 1 i + j + 1 A m )
= &Sigma; m = 1 i + j + 1 ( - 1 ) m - 1 &Sigma; sub &Subset; { 1,2 , . . . , i + j + 1 } , | sub | = m P ( C * | A sub )
其中集合A中包括{A1,A2,A3,…Ai+j+1},A中包含了待连接组件C、集合I和集合O中的组件,即{A1,A2,A3,…Ai+j+1}={I1,I2,I3,…Ii}∪{O1,O2,O3,…Oj}∪C。Asub表示{A1,A2,A3,…Ai+j+1}中的任意一个子集,|sub|表示子集的大小,即子集中元素的个数。
根据计算出的可以与C连接的一个或多个C*分别与C的相关度,选择相关度大于或等于相应阈值的C*,从流程片段的集合S中搜索包含C*的候选流程片段Sc。假定搜索结果为多个流程片段,则包含搜索结果的流程片段的集合B包括{B1,B2,B3,…Bn},利用计算C*与集合B中的各流程片段的相关度,通过计算出集合B中的各流程片段与C的相关度,即集合B中的各流程片段与C被连接在一起的概率。根据计算结果,Mashup平台可以将相关度大于或等于相应门限值的流程片段推荐给用户,即将一个或多个流程片段的组件信息发送给终端。上述选择推荐给用户流程片段的方法对应的算法1如下:
上述算法是伪代码描述,即用简单的形式化语言描述逻辑过程,实际实现时使用的是java语言。
本发明实施例提供的Mashup应用建立方法,通过在接收到待连接组件的组件信息之后,判断该待连接组件是否属于Mashup平台中已存储的至少一个流程片段,在待连接组件属于其中至少一个流程片段时,将该待连接组件所属的流程片段作为目标组件,在待连接组件不属于Mashup平台中已存储的流程片段时,将该待连接组件可以连接的组件所属的流程片段作为目标组件,利用将流程片段作为目标组件推荐给用户的方式,使得建立Mashup应用的过程可以通过半自动化的方式完成,不仅无需用户查看各组件的相关解释说明,并且推荐流程片段的方式还能够对用户的创建过程产生提示和引导的作用,可以方便用户快速地对资源进行整合,高效地构建个性化的应用,有效地提高了开发效率和用户体验。
图5为本发明提供的Mashup应用建立方法又一实施例的流程图,如图5所示,在执行步骤101之前,该方法还包括:
步骤106、根据所存储的一个或多个Mashup应用,生成所述一个或多个Mashup应用的带权有向图,所述带权有向图用于表征所述一个或多个Mashup应用中各组件之间的连接关系和各组件之间连接的次数。
步骤107、将所述带权有向图中具有连接关系的各组件中,所述次数大于或等于次数门限值的两个或多个组件作为所述流程片段。
Mashup平台所存储的一个或多个Mashup应用可以是从真实的Mashup在线站点所获取到的。例如,本发明实施例中Mashup平台所存储的Mashup应用是根据Mashup在线站点YahooPipes上爬取到的8000多个Mashup流程文件,经过过滤、挑选并除去了其中语义信息较少、语义信息错误以及包含特殊的不易处理文本信息的流程文件之后,最终筛选出的6500个左右流程文件进行解析得到的。解析后的Mashup流程文件存储在Mashup平台的Mashup流程资源库中。
由于这些流程都来自YahooPipes社区中真实的用户,一个用户的偏好往往也体现了其他用户的兴趣偏好,因此将那些同时出现频率较高的一组组件所形成的流程片段,作为向用户推荐的主要内容。基于群智思想和类似协同过滤的思想,利用概率统计的方法从已获取到的Mashup流程文件中提取流程片段。其中,群智思想和协调过滤的思想是通过找到与目标用户相似的其他用户,基于其他用户对某一内容的评价找到适合目标用户的内容,从而向目标用户进行推荐。
例如,图6a为两个Mashup应用的流程,图6b为两个Mashup应用的带权有向图。如图6a所示,一个Mashup应用中的每个节点分别表示该Mashup应用中的一个组件,流程片段1-2-3-4和9-10-11同时出现在两个Mashup应用的流程中,在概率统计模型中频繁出现的流程片段很有可能是具有意义的,因此,根据如图6a所示的两个Mashup应用生成如图6b所示的带权有向图。其中,在带权有向图中连接两个节点的边上记录了该边所属的Mashup应用的序号。这种序号表示仅为一种表示方式,可选的表示方式还可以为在各条边上记录该边所属的Mashup应用的序号,以及该边出现的次数,也就是说,该边所连接的两个节点在多个Mashup应用中被连接在一起的次数。从而,利用从带权有向图中选择频繁出现的子图的方式,提取其中的流程片段。
一种可选的实施方式为,Mashup平台根据存储在Mashup流程资源库中的各Mashup应用,生成一个大的带权有向图,在带权有向图中节点之间的边上记录该边所属的Mashup应用的序号,以及该边在各Mashup应用中出现的次数。根据设定的次数阈值T,对该带权有向图执行广度优先搜索生成算法(Bread First Search Generation,BFSGen)算法,对于出现次数小于T的边可以被认为是无意义的,利用出现次数大于或等于T的边获得一系列互相联通的区域,即一个或多个流程片段。对于获得的一系列互相联通的区域,寻找区域中的边界叶子节点Vleaf,每个区域中出度为0的节点即为该区域中的边界叶子节点。以每个叶子节点Vleaf为起始进行反向遍历,即按照边所指向的方向反向进行,遍历得到一个子区域。考虑各子区域中的边的权值,根据各条边所属的Mashup应用的序号,当多条边中属于同一Mashup应用的边的数量超过预设数量阈值,则可以采用连通域抽取算法ExtractConnectedArea(sub-domain)算法从子区域中提取出流程片段。在获取到多个流程片段之后,对所获取到的流程片段进行去重处理,可以根据预先设定的规则,将相似度超过预设相似度阈值的流程片段判定为相同的流程片段,具体判断两个流程片段是否相同的规则可以有多种设定方式。最终获得不存在重复的一个或多个流程片段。上述提取流程片段的方法对应的算法2如下:
上述算法是伪代码描述,即用简单的形式化语言描述逻辑过程,实际实现时使用的是java语言。
本发明实施例提供的Mashup应用建立方法,根据所存储的一个或多个Mashup应用,生成一个或多个Mashup应用的带权有向图,利用带权有向图表征一个或多个Mashup应用中各组件之间的连接关系和各组件之间连接的次数,将带权有向图中具有连接关系的各组件中,次数大于或等于次数门限值的两个或多个组件作为流程片段。通过上述方式提取出流程片段,可以有助于向用户推荐流程片段,能够对用户的创建过程产生提示和引导的作用,可以方便用户快速地对资源进行整合,高效地构建个性化的应用,有效地提高了开发效率和用户体验。
进一步地,在上述各实施例的基础上,在执行步骤103中的将所述选择的目标组件与所述待连接组件进行连接之后,所述方法还包括:
步骤108、顺序运行已连接的组件,将运行结果发送给所述终端,以供所述终端的用户在所述运行结果表明所述选择的目标组件与所述待连接组件之间运行出错时,利用所述终端从一个或多个所述目标组件中重新选择用于与所述待连接组件进行连接的组件。
Mashup平台在每次将用户通过终端选择的目标组件与待连接组件进行连接之后,顺序运行已连接的组件,并在运行完成后,将运行结果返回给终端。用户通过终端即可获知其所选择的目标组件是否与待连接组件连接成功。尽管Mashup平台选择的目标组件是可以与待连接组件进行连接的,但是在连接过程中,可能出现组件之间参数不匹配的问题,因此,通过及时对已连接的组件进行运行,有利于及时发现组件连接中的错误。当用户通过终端获得的运行结果表明连接正确时,用户可以继续通过终端继续建立Mashup应用的操作;当用户通过终端获得的运行结果表明运行出错,即连接错误时,需要利用终端从Mashup平台所推荐的一个或多个目标组件中重新进行选择。
本发明实施例提供的Mashup应用建立方法,在将选择的目标组件与待连接组件进行连接之后,顺序运行已连接的组件,将运行结果发送给终端,以供终端的用户在运行结果表明选择的目标组件与待连接组件之间运行出错时,利用终端从一个或多个目标组件中重新选择用于与待连接组件进行连接的组件,能够有效地降低开发过程中的出错率和开发难度,最终达到Mashup开发流程半自动化的效果,实现真正的面向最终用户的平台,最大限度地降低开发准入门槛,使得不具备程序开发经验的用户也能够很容易的构建满足个人需求的个性化应用。
图7为本发明提供的Mashup平台一实施例的结构示意图,如图7所示,该Mashup平台包括执行引擎11和推荐引擎12。
执行引擎11,用于接收终端发送的待连接组件的组件信息;推荐引擎12,用于将所述待连接组件可以连接的一个或多个目标组件的组件信息分别发送给所述终端;所述执行引擎11还用于,根据接收到的用户通过所述终端选择的目标组件的组件信息,将所述选择的目标组件与所述待连接组件进行连接,直至接收到所述终端发送的结束请求时,生成包括已连接的两个或多个组件的Mashup应用。
本发明实施例提供的Mashup平台,通过接收终端发送的待连接组件的组件信息,将待连接组件可以连接的一个或多个目标组件的组件信息分别发送给终端,根据接收到的用户通过终端选择的目标组件的组件信息,将选择的目标组件与待连接组件进行连接,直至接收到终端发送的结束请求时,生成包括已连接的两个或多个组件的Mashup应用。通过利用Mashup平台内的数据源和第三方开放API在用户建立Mashup应用的过程中进行推荐,使得用户可以通过半自动化的方式建立Mashup应用,而无需查看各组件的相关解释说明,并且推荐组件的方式还能够对用户的创建过程产生提示和引导的作用,可以方便用户快速地对资源进行整合,高效地构建个性化的应用,有效地提高了开发效率和用户体验。
图8为本发明提供的Mashup平台另一实施例的结构示意图,如图8所示,该Mashup平台还包括数据分析模块13。
数据分析模块13,用于在所述执行引擎11接收所述终端发送的所述待连接组件的组件信息之后,判断所述待连接组件是否属于至少一个流程片段;
相应地,所述推荐引擎12包括第一推荐单元121和第二推荐单元122。
第一推荐单元121,用于在判断出所述待连接组件属于所述至少一个流程片段时,将所述待连接组件所属的一个或多个流程片段作为目标组件,并将所述目标组件的组件信息发送给所述终端;
第二推荐单元122,用于在判断出所述待连接组件不属于所述至少一个流程片段时,将所述待连接组件可以连接的组件所属的一个或多个流程片段作为目标组件,并将所述目标组件的组件信息发送给所述终端。
本发明实施例提供的Mashup平台,通过在接收到待连接组件的组件信息之后,判断该待连接组件是否属于Mashup平台中已存储的至少一个流程片段,在待连接组件属于其中至少一个流程片段时,将该待连接组件所属的流程片段作为目标组件,在待连接组件不属于Mashup平台中已存储的流程片段时,将该待连接组件可以连接的组件所属的流程片段作为目标组件,利用将流程片段作为目标组件推荐给用户的方式,使得建立Mashup应用的过程可以通过半自动化的方式完成,不仅无需用户查看各组件的相关解释说明,并且推荐流程片段的方式还能够对用户的创建过程产生提示和引导的作用,可以方便用户快速地对资源进行整合,高效地构建个性化的应用,有效地提高了开发效率和用户体验。
进一步地,在上述实施例的基础上,所述第二推荐单元121还用于,将所述待连接组件可以连接的组件所属的一个或多个流程片段中,与所述待连接组件的相关度大于或等于相关度门限值的流程片段作为目标组件。
进一步地,在上述各实施例的基础上,所述数据分析模块13还用于,在所述执行引擎11接收所述终端发送的所述待连接组件的组件信息之前,根据所存储的一个或多个Mashup应用,生成所述一个或多个Mashup应用的带权有向图,所述带权有向图用于表征所述一个或多个Mashup应用中各组件之间的连接关系和各组件之间连接的次数;将所述带权有向图中具有连接关系的各组件中,所述次数大于或等于次数门限值的两个或多个组件作为所述流程片段。
本发明实施例提供的Mashup平台,根据所存储的一个或多个Mashup应用,生成一个或多个Mashup应用的带权有向图,利用带权有向图表征一个或多个Mashup应用中各组件之间的连接关系和各组件之间连接的次数,将带权有向图中具有连接关系的各组件中,次数大于或等于次数门限值的两个或多个组件作为流程片段。通过上述方式提取出流程片段,可以有助于向用户推荐流程片段,能够对用户的创建过程产生提示和引导的作用,可以方便用户快速地对资源进行整合,高效地构建个性化的应用,有效地提高了开发效率和用户体验。
进一步地,在上述各实施例的基础上,所述执行引擎11还用于,将所述选择的目标组件与所述待连接组件进行连接之后,顺序运行已连接的组件,将运行结果发送给所述终端,以供所述终端的用户在所述运行结果表明所述选择的目标组件与所述待连接组件之间运行出错时,利用所述终端从一个或多个所述目标组件中重新选择用于与所述待连接组件进行连接的组件。
本发明实施例提供的Mashup平台,在将选择的目标组件与待连接组件进行连接之后,顺序运行已连接的组件,将运行结果发送给终端,以供终端的用户在运行结果表明选择的目标组件与待连接组件之间运行出错时,利用终端从一个或多个目标组件中重新选择用于与待连接组件进行连接的组件,能够有效地降低开发过程中的出错率和开发难度,最终达到Mashup开发流程半自动化的效果,实现真正的面向最终用户的平台,最大限度地降低开发准入门槛,使得不具备程序开发经验的用户也能够很容易的构建满足个人需求的个性化应用。
具体的,本发明各实施例提供的Mashup平台建立Mashup应用的方法,可以参见上述对应的方法实施例中的步骤,此处不再赘述。
图9为本发明提供的Mashup平台的系统架构示意图。图9中所示的可视化编辑器(Visual Editor)为用户提供了一个图形化的开发环境,所有的组件都以图元的形式展现,用户通过简单的拖拽和连接操作即可完成整个编程过程;如果已开启推荐功能,用户只需不断选择备选项,连接工作由Mashup平台的编辑环境自动完成。从而降低了Mashup应用的开发难度。用户在PC的浏览器上安装相应的插件之后,即可通过浏览器登录Mashup平台,创建Mashup应用。
数据源收集注册(Data Source Register)是指Mashup平台开发给用户的接口,用户可以随时将自己喜欢的数据源添加并注册到Mashup平台中,从而在构建Mashup应用时使用自己添加的数据源。用户通过该接口添加的数据源会存储在本地数据源中,经过执行引擎的处理,最终作为Mashup流程文件存储在文件服务器和/或Mashup流程资源数据库中。
Mashup平台为手机客户端提供了手机访问接口(Mobile Client Access)。用户可以利用手机随时随地通过移动互联网访问Mashup平台,但是现阶段手机受到屏幕尺寸的限制,很多复杂的操作无法在手机上实现。因此本发明实施例中的Mashup平台可以采用在PC端开发Mashup应用,利用手机端或PC端访问所开发的Mashup应用的方式。用户通过该手机访问接口,在手机端发起请求,调用Mashup平台上的资源,最后Mashup平台将流程执行的结果返回给手机端显示。由于手机端暂时没有创建Mashup应用的过程,因此Mashup平台不需要将建立Mashup应用过程中的中间结果返回给手机端,Mashup平台中的执行引擎对PC和手机的访问,分别采用不同的操作步骤。
执行引擎(Execution Engine)用于根据用户在可视化编辑器工作区域中创建的Mashup应用的流程逻辑,将流程中各个组件组织起来,并实时执行该流程。用户每次通过PC对流程的修改都会引发一个事件并触发执行引擎的运行,执行引擎返回执行的中间结果,以供用户调试和及时发现流程中的错误等问题。如果执行请求是用户通过手机客户端发送的,执行引擎会直接执行该流程并将最终执行结果返回给手机客户端。执行引擎的输入是用户创建的Mashup应用,提取该Mashup应用的流程中的逻辑信息并执行。该流程的数据流模型结构为树形,引擎解析其树状结构,实时地爬取每个涉及到的数据源所提供的数据,并按照数据操作组件的类型对数据进行相应的处理,最终将结果汇总后输出到PC端或手机端进行显示。
Mashup流程资源库(Mashup Repository)用于存储Mashup平台中的Mashup应用的流程文件。当用户完成Mashup应用的创建并进行保存后,该Mashup应用会以Mashup流程文件的形式存储在文件服务器中,并且该流程文件还会被加载到Mashup流程资源库中。流程文件在Mashup平台的后台是以内部特定格式的文件的形式保存和传递的,所有的流程文件最终会被保存到文件服务器中,该流程资源库中会保存流程文件中主要被使用到的部分流程文件,以及对流程文件进行解析后的一些统计分析信息,这些信息会传递给推荐服务器端以支持推荐引擎的工作。
推荐服务器端(Recommendation Server)可以包括数据分析、数据加载和推荐引擎这三个模块。其中,数据分析模块主要完成从流程资源库中读取分析统计的数据信息,作为后面推荐引擎为用户进行推荐的依据。在平台启动时,即由数据分析模块完成初步的统计分析工作,并通过数据加载模块将分析的结果以特定的数据结构加载到内存中,这些工作在平台启动后全部完成,以减轻推荐引擎模块的负担,当用户构建流程时,推荐引擎模块根据数据加载器加载的基础数据和当前用户所构建的部分流程来进行计算。
推荐服务器端用于在用户开发的整个过程中提供实时的推荐服务,实时推荐的响应时间对用户体验是非常重要的。推荐服务器端首先会加载Mashup流程资源库中初始的分析数据,并对该数据做线下分析,也就是说当Mashup平台启动之后,即将Mashup流程资源库中的流程文件加载到内存中进行线下分析,在Mashup流程资源库中的流程文件有更新时,继续将更新的流程文件加载到内存中进行线下分析,线下分析的结果会以特定的数据结构加载到内存中,这样推荐的实时性会更好。推荐引擎是推荐服务器端的核心部分,推荐引擎实时执行推荐算法,基于用户当前的流程进行实时的推荐。
该Mashup平台具有实时执行的功能,能够在用户构建Mashup流程的过程中实时执行用户所构建的流程来获取中间结果,以辅助用户进行建模,使得可视化编辑器的用户编辑区内整个流程的构建成为类似“一笔画”(OneStroke)的高效开发过程,用户只需要不断与Mashup平台的推荐引擎进行交互,对推荐引擎所推荐的备选项不断进行选择,Mashup平台便会将用户的选择自动连接到用户编辑区的Mashup应用的流程中,用户只需要不断进行选择即可完成整个流程,整个开发过程就如同“一笔画”。同时实时执行还能够进行正确性的验证,在错误发生时及时提醒用户进行相应的修改,降低用户的返工次数,这大大提升了用户开发的效率。
以下通过举例说明用户建立Mashup应用的流程,以说明该本发明实施例提供的Mashup平台的可行性和高效性。
假定用户A为一个运动迷,希望快速构建一个Mashup应用,将体育新闻信息进行聚合并将结果显示在地图上。如果不使用本平台,用户A不得不在大量组件中去寻找“获取数据源”、“谷歌地图”、“提取地理位置”、“合并数据源”等这些组件,然后再将它们按照合理正确的逻辑进行连接,在整个过程中,用户A需要阅读每个组件的说明才能找到以上所需组件,能够以合理的逻辑顺序将各组件连接起来对用户来说并非易事。
而用户A使用本发明提供的Mashup平台只需进行如下步骤,即可完成Mashup应用的建立。
用户A将“谷歌地图”组件拖到其PC上的可视化编辑器的工作面板中,平台推荐一系列可以与之相连的组件;用户A从推荐列表中选择“实时新闻”组件,该组件为其他体育迷经常使用的组件的一个集合,即一个流程片段,平台同样将该组件推荐给用户A,该组件可以提供体育新闻信息并且提供相应的地理位置信息;用户A选择“实时新闻”组件,该组件自动连接到“谷歌地图”组件;用户A想看到最新的新闻信息,点击“实时新闻”的输出口,平台推荐了一组组件;用户A选择其中的“过滤排序”组件,来对新闻信息按照时间顺序进行排序,但是该组件的时间参数与“实时新闻”输出的时间参数不匹配,平台实时运行通过验证发现了这一问题,向用户A发出警告;用户A重新选择“按照日期排序”组件,这次时间参数匹配,该组件自动连接到“实时新闻”;用户A同样的操作又添加了“截取”组件,将输出结果最后最近发生的20条新闻截取下来;最终用户A构建了一个能够提供top-20实时体育新闻的应用。
可以从以上过程看出,平台的实时推荐、实时验证和基于流程片段的推荐等功能,大大提升了用户的开发效率,同时能够在用户出错的时候及时提醒用户进行修改,而不是等到用户完成整个流程后再回头寻找错误,尤其是当流程较复杂的情况下,定位错误对用户来说是很困难的。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (8)

1.一种Mashup应用建立方法,其特征在于,包括:
接收终端发送的待连接组件的组件信息;
将所述待连接组件可以连接的一个或多个目标组件的组件信息分别发送给所述终端;
根据接收到的用户通过所述终端选择的目标组件的组件信息,将所述选择的目标组件与所述待连接组件进行连接,直至接收到所述终端发送的结束请求时,生成包括已连接的两个或多个组件的Mashup应用;
所述接收终端发送的待连接组件的组件信息之后,所述方法还包括:
判断所述待连接组件是否属于至少一个流程片段;
相应地,所述将所述待连接组件可以连接的一个或多个目标组件的组件信息分别发送给所述终端具体为:
在判断出所述待连接组件属于所述至少一个流程片段时,将所述待连接组件所属的一个或多个流程片段作为目标组件,并将所述目标组件的组件信息发送给所述终端;
在判断出所述待连接组件不属于所述至少一个流程片段时,将所述待连接组件可以连接的组件所属的一个或多个流程片段作为目标组件,并将所述目标组件的组件信息发送给所述终端。
2.根据权利要求1所述的Mashup应用建立方法,其特征在于,所述将所述待连接组件可以连接的组件所属的一个或多个流程片段作为目标组件具体为:
将所述待连接组件可以连接的组件所属的一个或多个流程片段中,与所述待连接组件的相关度大于或等于相关度门限值的流程片段作为目标组件。
3.根据权利要求1所述的Mashup应用建立方法,其特征在于,所述接收终端发送的待连接组件的组件信息之前,所述方法还包括:
根据所存储的一个或多个Mashup应用,生成所述一个或多个Mashup应用的带权有向图,所述带权有向图用于表征所述一个或多个Mashup应用中各组件之间的连接关系和各组件之间连接的次数;
将所述带权有向图中具有连接关系的各组件中,所述次数大于或等于次数门限值的两个或多个组件作为所述流程片段。
4.根据权利要求1-3中任一所述的Mashup应用建立方法,其特征在于,所述将所述选择的目标组件与所述待连接组件进行连接之后,所述方法还包括:
顺序运行已连接的组件,将运行结果发送给所述终端,以供所述终端的用户在所述运行结果表明所述选择的目标组件与所述待连接组件之间运行出错时,利用所述终端从一个或多个所述目标组件中重新选择用于与所述待连接组件进行连接的组件。
5.一种Mashup平台,其特征在于,包括:
执行引擎,用于接收终端发送的待连接组件的组件信息;
推荐引擎,用于将所述待连接组件可以连接的一个或多个目标组件的组件信息分别发送给所述终端;
所述执行引擎还用于,根据接收到的用户通过所述终端选择的目标组件的组件信息,将所述选择的目标组件与所述待连接组件进行连接,直至接收到所述终端发送的结束请求时,生成包括已连接的两个或多个组件的Mashup应用;
所述Mashup平台还包括:
数据分析模块,用于在所述执行引擎接收所述终端发送的所述待连接组件的组件信息之后,判断所述待连接组件是否属于至少一个流程片段;
相应地,所述推荐引擎包括:
第一推荐单元,用于在判断出所述待连接组件属于所述至少一个流程片段时,将所述待连接组件所属的一个或多个流程片段作为目标组件,并将所述目标组件的组件信息发送给所述终端;
第二推荐单元,用于在判断出所述待连接组件不属于所述至少一个流程片段时,将所述待连接组件可以连接的组件所属的一个或多个流程片段作为目标组件,并将所述目标组件的组件信息发送给所述终端。
6.根据权利要求5所述的Mashup平台,其特征在于,所述第二推荐单元还用于:
将所述待连接组件可以连接的组件所属的一个或多个流程片段中,与所述待连接组件的相关度大于或等于相关度门限值的流程片段作为目标组件。
7.根据权利要求5所述的Mashup平台,其特征在于,所述数据分析模块还用于:
在所述执行引擎接收所述终端发送的所述待连接组件的组件信息之前,根据所存储的一个或多个Mashup应用,生成所述一个或多个Mashup应用的带权有向图,所述带权有向图用于表征所述一个或多个Mashup应用中各组件之间的连接关系和各组件之间连接的次数;
将所述带权有向图中具有连接关系的各组件中,所述次数大于或等于次数门限值的两个或多个组件作为所述流程片段。
8.根据权利要求5-7中任一所述的Mashup平台,其特征在于,所述执行引擎还用于:
将所述选择的目标组件与所述待连接组件进行连接之后,顺序运行已连接的组件,将运行结果发送给所述终端,以供所述终端的用户在所述运行结果表明所述选择的目标组件与所述待连接组件之间运行出错时,利用所述终端从一个或多个所述目标组件中重新选择用于与所述待连接组件进行连接的组件。
CN201210337030.2A 2012-09-12 2012-09-12 Mashup应用建立方法及装置 Active CN102866911B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210337030.2A CN102866911B (zh) 2012-09-12 2012-09-12 Mashup应用建立方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210337030.2A CN102866911B (zh) 2012-09-12 2012-09-12 Mashup应用建立方法及装置

Publications (2)

Publication Number Publication Date
CN102866911A CN102866911A (zh) 2013-01-09
CN102866911B true CN102866911B (zh) 2015-03-25

Family

ID=47445792

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210337030.2A Active CN102866911B (zh) 2012-09-12 2012-09-12 Mashup应用建立方法及装置

Country Status (1)

Country Link
CN (1) CN102866911B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105095176A (zh) * 2014-04-29 2015-11-25 华为技术有限公司 用户设备提取文本信息中的特征信息的方法和用户设备
US10362059B2 (en) * 2014-09-24 2019-07-23 Oracle International Corporation Proxy servers within computer subnetworks
US9785698B2 (en) * 2014-12-31 2017-10-10 Business Objects Software Ltd. Behaviorally consistent cluster-wide data wrangling based on locally processed sampled data
CN105005476A (zh) * 2015-07-13 2015-10-28 天津大学 面向Android移动应用混搭的框架
CN107613104B (zh) * 2017-08-30 2020-04-28 天津大学 一种用户参与的Android APP流个性化定制方法
CN112650482A (zh) * 2020-12-25 2021-04-13 浙江蓝卓工业互联网信息技术有限公司 一种逻辑组件的推荐方法及相关装置
CN113975617A (zh) * 2021-11-05 2022-01-28 深圳市福妍堂中医药创新发展有限公司 一种调节女性月经失调的药械方法及系统
CN114266324B (zh) * 2021-12-30 2023-04-07 智慧眼科技股份有限公司 模型可视化建模方法、装置、计算机设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101013365A (zh) * 2006-01-30 2007-08-08 国际商业机器公司 用于描述软件组件的方法和系统
CN101488151A (zh) * 2009-01-20 2009-07-22 中国科学院计算技术研究所 一种聚合Web站点内容的系统和方法
CN101794240A (zh) * 2010-01-04 2010-08-04 中兴通讯股份有限公司 一种聚合数据内容的方法和系统
CN101957968A (zh) * 2010-08-31 2011-01-26 南京财经大学 基于Hadoop的网上交易服务聚合方法
CN102331929A (zh) * 2011-06-27 2012-01-25 武汉大学 一种基于服务组合历史的服务分类和推荐方法
CN102638572A (zh) * 2012-03-19 2012-08-15 北京邮电大学 基于Web Element机制的短信发送服务系统及其工作方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070106976A1 (en) * 2005-11-07 2007-05-10 International Business Machines Corporation Re-wiring component assemblies in component based user applications
US8706812B2 (en) * 2010-04-07 2014-04-22 On24, Inc. Communication console with component aggregation

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101013365A (zh) * 2006-01-30 2007-08-08 国际商业机器公司 用于描述软件组件的方法和系统
CN101488151A (zh) * 2009-01-20 2009-07-22 中国科学院计算技术研究所 一种聚合Web站点内容的系统和方法
CN101794240A (zh) * 2010-01-04 2010-08-04 中兴通讯股份有限公司 一种聚合数据内容的方法和系统
CN101957968A (zh) * 2010-08-31 2011-01-26 南京财经大学 基于Hadoop的网上交易服务聚合方法
CN102331929A (zh) * 2011-06-27 2012-01-25 武汉大学 一种基于服务组合历史的服务分类和推荐方法
CN102638572A (zh) * 2012-03-19 2012-08-15 北京邮电大学 基于Web Element机制的短信发送服务系统及其工作方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
DashMash: a Mashup Environment for End-User Development;Cinzia Cappiello, Maristella Matera, Matteo Picozzi, Gabriele Sp;《Web Engineering Lecture Notes in Computer Science》;20111231;第6757卷;152-166 *
MM:面向最终用户的Mashup移动应用开发环境;路跃,刘旭东,孙海龙,王旭;《计算机科学与探索》;20120331;第6卷(第3期);237-247 *

Also Published As

Publication number Publication date
CN102866911A (zh) 2013-01-09

Similar Documents

Publication Publication Date Title
CN102866911B (zh) Mashup应用建立方法及装置
Zimmermann et al. Digital enterprise architecture-transformation for the internet of things
CN101127655B (zh) 集成现有基于万维网的系统的方法和系统
CN104025084B (zh) 历史浏览会话管理
Marinho et al. ProvManager: a provenance management system for scientific workflows
CN104639653A (zh) 基于云架构的自适应方法及系统
CN104035392A (zh) 在过程控制系统中的大数据
GB2574906A (en) Pipeline data processing
US11531914B2 (en) Artificial intelligence (AI) based automatic rule generation
JP2011204228A (ja) 学習メカニズムを用いたマッシュアップインフラストラクチャ
CN102446099A (zh) 工作软件中的用户界面实体模型的反向工程
CN112465448B (zh) 基于区块链的跨组织工作流运行方法及系统
US20210117313A1 (en) Language agnostic automation scripting tool
CN115640045B (zh) 基于领域驱动设计的低代码开发平台及业务系统创建方法
Paredes‐Valverde et al. A systematic review of tools, languages, and methodologies for mashup development
US20130297528A1 (en) Business process model notation extension for modeling of integration processes
EP2748711A1 (en) Data infrastructure for providing interconnectivity between platforms, devices, and operating systems
CN112287114A (zh) 一种知识图谱服务处理方法和装置
Leitao et al. A survey on factors that impact industrial agent acceptance
Dornhöfer et al. A data-driven smart city transformation model utilizing the green knowledge management cube
Upadhyaya et al. Extracting restful services from web applications
CN113918534A (zh) 一种策略处理系统及方法
Di Martino et al. A platform for mbdaaas based on patterns and skeletons: The python based algorithms compiler
KR101560181B1 (ko) 매쉬업 그래프 생성 방법 및 장치, 및 매쉬업 서비스 추천 방법 및 장치
CN114153491A (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
C14 Grant of patent or utility model
GR01 Patent grant