CN104899032A - 一种基于基于数据分析的OpenDaylight自动化开发方法 - Google Patents

一种基于基于数据分析的OpenDaylight自动化开发方法 Download PDF

Info

Publication number
CN104899032A
CN104899032A CN201510294627.7A CN201510294627A CN104899032A CN 104899032 A CN104899032 A CN 104899032A CN 201510294627 A CN201510294627 A CN 201510294627A CN 104899032 A CN104899032 A CN 104899032A
Authority
CN
China
Prior art keywords
development
environment
opendaylight
java
data analysis
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
CN201510294627.7A
Other languages
English (en)
Other versions
CN104899032B (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.)
Inspur Cloud Information Technology Co Ltd
Original Assignee
Inspur Group 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 Inspur Group Co Ltd filed Critical Inspur Group Co Ltd
Priority to CN201510294627.7A priority Critical patent/CN104899032B/zh
Publication of CN104899032A publication Critical patent/CN104899032A/zh
Application granted granted Critical
Publication of CN104899032B publication Critical patent/CN104899032B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

本发明公开了一种基于数据分析的OpenDaylight自动化开发方法,其具体实现过程为:用户输入定制化需求,指定SDN控制器实现特定功能;需求分析单元对前述定制化需求进行文本挖掘,提取关键字,形成关键字列表;该关键字列表与数据库中的可用资源进行适配;适配过程中,依据不同开发资源的可用性,自动搭建不同的环境;依据前述自动搭建的开发环境,进行代码编写;完成代码编写,进行代码编译生成,开发工作完成。该基于数据分析的OpenDaylight自动化开发方法与现有技术相比,可以帮助开发者有效地搭建开发环境,屏蔽底层OpenDaylight复杂框架结构,显著地提升开发效率,实用性强,易于推广。

Description

一种基于基于数据分析的OpenDaylight自动化开发方法
技术领域
本发明涉及交换机开发技术领域,具体地说是一种实用性强、基于基于数据分析的OpenDaylight自动化开发方法。
背景技术
当前,OpenDaylight的开发处于起步发展阶段,生态环境中没有出现简洁可用的IDE(Integrated Development Environment),只能依赖于传统的Eclipse + Maven的开发方式。
随着SDN与NFV技术的发展,SDN控制器的作用愈发显的重要。但是,目前无论是开源框架的还是商用的SDN控制器都有着非常复杂的架构与开发环境,对开发者入门要求高,已经不能适应当前高效率开发的要求。因此,构建一种简洁易用的OpenDaylight SDN控制器开发环境,满足工业界进行OpenDaylight开发的高效率要求与低投入要求,是非常迫切的事情,基于此,现提供一种基于基于数据分析的OpenDaylight自动化开发方法。
发明内容
本发明的技术任务是针对以上不足之处,提供一种实用性强、基于基于数据分析的OpenDaylight自动化开发方法。
一种基于基于数据分析的OpenDaylight自动化开发方法,其具体实现过程为:
用户输入定制化需求,指定SDN控制器实现特定功能;
需求分析单元对前述定制化需求进行文本挖掘,提取关键字,形成关键字列表;
该关键字列表与数据库中的可用资源进行适配;
适配过程中,依据不同开发资源的可用性,自动搭建不同的环境;
依据前述自动搭建的开发环境,进行代码编写;
完成代码编写,进行代码编译生成,开发工作完成。
用户采用以下三种方式输入定制化需求:
根据系统提供的选项进行选择;
手动输入相关功能需求;
上述两种方式的结合方式。
所述关键字列表与数据库中可用资源适配过程为:关键字列表传递进入模糊匹配单元,该模糊匹配单元进行需求分析整理,然后对OpenDaylight开发资源数据库进行茶园,使其与该数据库中可用开发资源进行适配。
依据不同开发资源的可用性,自动搭建不同的环境的具体实现过程为:
1)判断是否存在可直接调用的函数封装或REST API;
2)如果存在可直接调用的函数封装或REST API,则根据用户指定的编程语言引入相关开发包与编程环境;
3)如果不存在可直接调用的函数封装或REST API,则继续判断是否存在可以使用的服务抽象层SAL或者北向插件Java API;
4)如果存在上述可以使用的SAL或者北向插件Java API,则建立北向专用Java插件开发环境,完成代码编写之后进入REST API调用开发环境;
5)如果不存在上述可以使用的SAL或者北向插件Java API,则进入基于MD-SAL的YANG与Java南向插件开发环境,完成之后进入前述北向插件开发环境,最后进入REST API调用开发环境。
所述自动搭建的开发环境包括以下几种:
REST API调用开发环境,建立在Java、 Python、 Ruby、 PHP或 C/C++开发环境之上,并提供SDK;
北向插件开发环境,使用Java开发环境,并通过Maven工具提供上层REST API接口;
南向插件开发环境,使用YANG及Java开发环境,并使用Yang Tools工具以及Maven工具生成Java API与协议功能。
本发明的一种基于基于数据分析的OpenDaylight自动化开发方法,具有以下优点:
本发明提出的一种基于基于数据分析的OpenDaylight自动化开发方法,可以帮助开发者有效地搭建开发环境,屏蔽底层OpenDaylight复杂框架结构,显著地提升开发效率;适用于进行OpenDaylight快速二次开发、用户需求复杂等应用场景;采用了用户需求关键字匹配技术,更加高效与便捷地整合开发资源,减轻开发者的负担,实用性强,易于推广。
附图说明
附图1是基于数据分析的OpenDaylight自动化开发方法的流程图。
附图2是自动搭建开发环境步骤的流程图。
具体实施方式
下面结合附图和具体实施例对本发明作进一步说明。
本发明提供一种基于基于数据分析的OpenDaylight自动化开发方法,涉及软件定义网络SDN控制器开发领域。
如附图1、图2所示,其具体实现过程为:
用户输入定制化需求,指定SDN控制器实现特定功能;
需求分析单元对前述定制化需求进行文本挖掘,提取关键字,形成关键字列表;
该关键字列表与数据库中的可用资源进行适配;
适配过程中,依据不同开发资源的可用性,自动搭建不同的环境;
依据前述自动搭建的开发环境,进行代码编写;
完成代码编写,进行代码编译生成,开发工作完成。
用户采用以下三种方式输入定制化需求:
根据系统提供的选项进行选择;
手动输入相关功能需求;
上述两种方式的结合方式。
所述关键字列表与数据库中可用资源适配过程为:关键字列表传递进入模糊匹配单元,该模糊匹配单元进行需求分析整理,然后对OpenDaylight开发资源数据库进行茶园,使其与该数据库中可用开发资源进行适配。
依据不同开发资源的可用性,自动搭建不同的环境的具体实现过程为:
1)判断是否存在可直接调用的函数封装或REST API;
2)如果存在可直接调用的函数封装或REST API,则根据用户指定的编程语言引入相关开发包与编程环境;
3)如果不存在可直接调用的函数封装或REST API,则继续判断是否存在可以使用的服务抽象层SAL或者北向插件Java API;
4)如果存在上述可以使用的SAL或者北向插件Java API,则建立北向专用Java插件开发环境,完成代码编写之后进入REST API调用开发环境;
5)如果不存在上述可以使用的SAL或者北向插件Java API,则进入基于MD-SAL的YANG与Java南向插件开发环境,完成之后进入前述北向插件开发环境,最后进入REST API调用开发环境。
所述自动搭建的开发环境包括以下几种:
REST API调用开发环境,建立在Java、 Python、 Ruby、 PHP或 C/C++开发环境之上,并提供SDK;
北向插件开发环境,使用Java开发环境,并通过Maven工具提供上层REST API接口;
南向插件开发环境,使用YANG及Java开发环境,并使用Yang Tools工具以及Maven工具生成Java API与协议功能。
上述具体实施方式仅是本发明的具体个案,本发明的专利保护范围包括但不限于上述具体实施方式,任何符合本发明的一种基于基于数据分析的OPENDAYLIGHT自动化开发方法的权利要求书的且任何所述技术领域的普通技术人员对其所做的适当变化或替换,皆应落入本发明的专利保护范围。

Claims (5)

1.一种基于基于数据分析的OpenDaylight自动化开发方法,其特征在于,其具体实现过程为:
用户输入定制化需求,指定SDN控制器实现特定功能;
需求分析单元对前述定制化需求进行文本挖掘,提取关键字,形成关键字列表;
该关键字列表与数据库中的可用资源进行适配;
适配过程中,依据不同开发资源的可用性,自动搭建不同的环境;
依据前述自动搭建的开发环境,进行代码编写;
完成代码编写,进行代码编译生成,开发工作完成。
2.根据权利要求1所述的一种基于基于数据分析的OpenDaylight自动化开发方法,其特征在于,用户采用以下三种方式输入定制化需求:
根据系统提供的选项进行选择;
手动输入相关功能需求;
上述两种方式的结合方式。
3.根据权利要求1所述的一种基于基于数据分析的OpenDaylight自动化开发方法,其特征在于,所述关键字列表与数据库中可用资源适配过程为:关键字列表传递进入模糊匹配单元,该模糊匹配单元进行需求分析整理,然后对OpenDaylight开发资源数据库进行茶园,使其与该数据库中可用开发资源进行适配。
4.根据权利要求1所述的一种基于基于数据分析的OpenDaylight自动化开发方法,其特征在于,依据不同开发资源的可用性,自动搭建不同的环境的具体实现过程为:
1)判断是否存在可直接调用的函数封装或REST API;
2)如果存在可直接调用的函数封装或REST API,则根据用户指定的编程语言引入相关开发包与编程环境;
3)如果不存在可直接调用的函数封装或REST API,则继续判断是否存在可以使用的服务抽象层SAL或者北向插件Java API;
4)如果存在上述可以使用的SAL或者北向插件Java API,则建立北向专用Java插件开发环境,完成代码编写之后进入REST API调用开发环境;
5)如果不存在上述可以使用的SAL或者北向插件Java API,则进入基于MD-SAL的YANG与Java南向插件开发环境,完成之后进入前述北向插件开发环境,最后进入REST API调用开发环境。
5.根据权利要求4所述的一种基于基于数据分析的OpenDaylight自动化开发方法,其特征在于,所述自动搭建的开发环境包括以下几种:
REST API调用开发环境,建立在Java、 Python、 Ruby、 PHP或 C/C++开发环境之上,并提供SDK;
北向插件开发环境,使用Java开发环境,并通过Maven工具提供上层REST API接口;
南向插件开发环境,使用YANG及Java开发环境,并使用Yang Tools工具以及Maven工具生成Java API与协议功能。
CN201510294627.7A 2015-06-02 2015-06-02 一种基于数据分析的OpenDaylight自动化开发方法 Active CN104899032B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510294627.7A CN104899032B (zh) 2015-06-02 2015-06-02 一种基于数据分析的OpenDaylight自动化开发方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510294627.7A CN104899032B (zh) 2015-06-02 2015-06-02 一种基于数据分析的OpenDaylight自动化开发方法

Publications (2)

Publication Number Publication Date
CN104899032A true CN104899032A (zh) 2015-09-09
CN104899032B CN104899032B (zh) 2017-12-01

Family

ID=54031710

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510294627.7A Active CN104899032B (zh) 2015-06-02 2015-06-02 一种基于数据分析的OpenDaylight自动化开发方法

Country Status (1)

Country Link
CN (1) CN104899032B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019218597A1 (zh) * 2018-05-14 2019-11-21 华南理工大学 一种表驱动的云模式软件自动构造方法及系统

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1551006A (zh) * 2003-03-06 2004-12-01 微软公司 分布式计算系统架构及分布式应用的设计、部署和管理
CN101453398A (zh) * 2007-12-06 2009-06-10 怀特威盛软件公司 一种新型分布式网格超级计算系统及方法
US20090249281A1 (en) * 2008-03-28 2009-10-01 Sap Ag Performance-related decision support for model-driven engineering
CN101763265A (zh) * 2010-01-19 2010-06-30 湖南大学 一种过程级软硬件协同设计自动化开发方法
CN102520922A (zh) * 2011-11-14 2012-06-27 上海交通大学 一种协作环境下的远程开发方法及其系统
US20120191704A1 (en) * 2011-01-22 2012-07-26 Jones Robert F Data Visualization Interface
US8407073B2 (en) * 2010-08-25 2013-03-26 International Business Machines Corporation Scheduling resources from a multi-skill multi-level human resource pool
CN103929379A (zh) * 2014-04-15 2014-07-16 浙江工商大学 基于双边市场多归属结构的sdn资源分配方法
CN104077118A (zh) * 2013-03-27 2014-10-01 腾讯科技(深圳)有限公司 一种应用程序的资源的定制方法及装置

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1551006A (zh) * 2003-03-06 2004-12-01 微软公司 分布式计算系统架构及分布式应用的设计、部署和管理
CN101453398A (zh) * 2007-12-06 2009-06-10 怀特威盛软件公司 一种新型分布式网格超级计算系统及方法
US20090249281A1 (en) * 2008-03-28 2009-10-01 Sap Ag Performance-related decision support for model-driven engineering
CN101763265A (zh) * 2010-01-19 2010-06-30 湖南大学 一种过程级软硬件协同设计自动化开发方法
US8407073B2 (en) * 2010-08-25 2013-03-26 International Business Machines Corporation Scheduling resources from a multi-skill multi-level human resource pool
US20120191704A1 (en) * 2011-01-22 2012-07-26 Jones Robert F Data Visualization Interface
CN102520922A (zh) * 2011-11-14 2012-06-27 上海交通大学 一种协作环境下的远程开发方法及其系统
CN104077118A (zh) * 2013-03-27 2014-10-01 腾讯科技(深圳)有限公司 一种应用程序的资源的定制方法及装置
CN103929379A (zh) * 2014-04-15 2014-07-16 浙江工商大学 基于双边市场多归属结构的sdn资源分配方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
姚敏辉: ""基于软件定义价格的SDN应用体系框架研究"", 《中国优秀硕士学位论文全文数据库 信息科技辑 I139-22》 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019218597A1 (zh) * 2018-05-14 2019-11-21 华南理工大学 一种表驱动的云模式软件自动构造方法及系统

Also Published As

Publication number Publication date
CN104899032B (zh) 2017-12-01

Similar Documents

Publication Publication Date Title
CN106170764B (zh) 用于自动设备程序生成的方法和装置
AU2010212391B2 (en) Integration environment generator
US8407661B2 (en) Method and system for creating HMI applications for an automation process
CN106021102B (zh) 自动化测试文件的生成方法及装置
CN102830981B (zh) 一种用于嵌入式系统软件开发工具的实现方法
CN103677835B (zh) 软件集成方法及系统
CN106598556A (zh) 用户界面生成方法及装置
CN110262794B (zh) 一种基于规范与描述语言的aadl功能行为拓展方法及工具
CN105447246A (zh) 一键生成电气原理图的方法与系统
CN103136406A (zh) 可视化应用程序自动生成仿真用函数代码的方法
CN105700867B (zh) 通过编译器借助动态可缩放矢量图形生成可执行应用程序的方法和编译器
CN106528184A (zh) 一种基于cordova平台的app开发方法
CN103176802B (zh) 通过控件池实现系统的用户界面ui与控件库分离的方法
Einarsson et al. SmarthomeML: Towards a domain-specific modeling language for creating smart home applications
CN104407856A (zh) 软件工具开发包文件的打包方法和装置
Sabraoui et al. Gui code generation for android applications using a mda approach
CN109871241A (zh) 一种跨环境应用服务器的配置方法
CN105630563A (zh) 基于xml的继电保护装置规约的动态模型配置方法
CN109086038B (zh) 基于Spark的大数据开发方法及装置、终端
CN104899032A (zh) 一种基于基于数据分析的OpenDaylight自动化开发方法
Elghondakly et al. A comprehensive study for software testing and test cases generation paradigms
CN103455337A (zh) 在安卓开发环境下使用动态库的方法
CN107273764B (zh) 一种Swift语言实施的安全协议的安全性验证方法
CN104331665B (zh) 一种可追溯目标码的生成方法及可追溯目标码生成器
CN106547274B (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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20180806

Address after: 250100 S06 tower, 1036, Chao Lu Road, hi tech Zone, Ji'nan, Shandong.

Patentee after: Shandong wave cloud Mdt InfoTech Ltd

Address before: No. 1036, Shandong high tech Zone wave road, Ji'nan, Shandong

Patentee before: Inspur Group Co., Ltd.

CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: 250100 No. 1036 Tidal Road, Jinan High-tech Zone, Shandong Province, S01 Building, Tidal Science Park

Patentee after: Inspur cloud Information Technology Co., Ltd

Address before: 250100 Ji'nan science and technology zone, Shandong high tide Road, No. 1036 wave of science and Technology Park, building S06

Patentee before: SHANDONG LANGCHAO YUNTOU INFORMATION TECHNOLOGY Co.,Ltd.