软件集成方法及系统的制作方法

文档序号:6423003阅读:122来源:国知局
专利名称:软件集成方法及系统的制作方法
技术领域
本发明涉及软件技术领域,尤其涉及一种软件集成方法及系统。
背景技术
通常,一套完整的软件产品在开发阶段可以拆分成多个不同的功能模块,例如,基于NGB的软件产品可以拆分成多个具有公共属性的公共功能模块和多个具有专用属性的专用功能模块,这些公共功能模块和专用功能模块用于实现NGB的各项业务功能。当上述各个公共功能模块和专用功能模块开发完成之后,通过各个功能模块进行编译和打包,最终形成软件产品发布出去。现有技术中,在对上述功能模块进行编译和打包时,通常由产品集成人员通过手工操作或者根据需要手动编写专用的脚本依次对各个功能模块分别进行编译和打包。特别地,当需要考虑功能模块的保密性时,会将产品集成人员分成若干个组,每个组均需要搭建编译环境,并对所负责的功能模块进行编译和打包,增加了人力资源和开发成本的投入,操作也较繁琐,降低了软件集成的效率。

发明内容
本发明的实施例提供一种软件集成方法及系统,节省人力资源及开发成本,简化软件集成的操作,提高软件集成的效率。为达到上述目的,本发明的实施例采用如下技术方案一种软件集成方法,包括接收输入的软件产品信息,所述软件产品信息包括所述软件产品所需的各个功能模块的源代码存放路径和属性;从所述各个功能模块的源代码存放路径中获取各个功能模块的源代码;根据所述各个功能模块的属性对所述各个功能模块的源代码进行编译打包。一种软件集成系统,包括接收单元,用于接收输入的软件产品信息,所述软件产品信息包括所述软件产品所需的各个功能模块的源代码存放路径和属性;获取单元,用于从所述各个功能模块的源代码存放路径中获取各个功能模块的源代码;编译打包单元,用于根据所述各个功能模块的属性对所述各个功能模块的源代码进行编译打包。由上述技术方案所提供的本发明实施例中,通过接收输入的软件产品信息,所述软件产品信息包括所述软件产品所需的各个功能模块的源代码存放路径和属性;从所述各个功能模块的源代码存放路径中获取各个功能模块的源代码;根据所述各个功能模块的属性对所述各个功能模块的源代码进行编译打包。亦即,产品集成人员只需要在软件产品集成系统中输入软件产品信息,该软件产品集成系统可以实现自动获取各个功能模块的源代码,并根据所述各个功能模块的属性对所述各个功能模块的源代码进行编译打包。与现有技术中产品集成人员需要通过手工操作或者根据需要手动编写专用的脚本依次对各个功能模块分别进行编译和打包相比,本发明实施例提供的技术方案节省了人力资源及开发成本,可以简化软件集成的操作,提高软件集成的效率。


为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本发明实施例1提供的一种软件集成方法的流程图;图2为本发明实施例1提供的一种软件集成方法中步骤103的实现流程图;图3为本发明实施例1提供的又一种软件集成方法的流程图;图4为本发明实施例1提供的再一种软件集成方法的流程图;图5为本发明实施例2提供的一种软件集成系统的结构图;图6为本发明实施例2提供的一种软件集成系统中编译打包单元13的实现结构图;图7为本发明实施例2提供的又一种软件集成系统的结构图;图8为本发明实施例2提供的再一种软件集成系统的结构图。
具体实施例方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。实施例1 本发明实施例提供一种软件集成方法,如图1所示,该方法具体可以由软件集成系统执行,该方法包括如下步骤101、接收输入的软件产品信息,所述软件产品信息包括所述软件产品所需的各个功能模块的源代码存放路径和属性。具体地,所述接收到的软件产品信息可以采用XML、EXCEL等文件格式保存在数据库中,以方便软件集成系统直接进行调用。102、从所述各个功能模块的源代码存放路径中获取各个功能模块的源代码。具体地,所述各个功能模块的源代码可以保存在版本管理系统中,例如CVS,SVN 等版本管理系统,所述各个功能模块的源代码存放路径具体为所述各个功能模块的源代码在版本管理系统中的存放路径。所述获取到的各个功能模块的源代码具体可以存放在编译服务器中。103、根据所述各个功能模块的属性对所述各个功能模块的源代码进行编译打包。由上述技术方案所提供的本发明实施例中,产品集成人员只需要输入软件产品信息,软件产品集成系统通过接收输入的软件产品信息,实现自动获取各个功能模块的源代码,并根据所述各个功能模块的属性对所述各个功能模块的源代码进行编译打包。与现有技术中产品集成人员需要通过手工操作或者根据需要手动编写专用的脚本依次对各个功能模块分别进行编译和打包相比,本发明实施例提供的技术方案节省了人力资源及开发成本,可以简化软件集成的操作,提高软件集成的效率。需要说明的是,具体应用时,软件产品的各个功能模块在开发完成后,所述各个功能模块的源代码和对应的编译打包脚本会一起保存在版本管理系统中,上述步骤103可以自动调用所述各个功能模块对应的编译打包脚本对所述各个功能模块的源代码进行编译打包,产品集成人员无需编写额外的执行脚本去调用所述各个功能模块对应的编译打包脚本,只需要在软件集成系统的操作界面上输入编译打包启动指令即可,亦即软件集成系统在实现功能模块的编译打包时,与功能模块所使用的开发语言是无关的。因而,本发明实施例带来的另一有益效果为本发明实施例中的软件集成系统的可扩展性较强,可以对采用不同编程语言开发的软件产品,或者由使用不同的编程语言开发的不同功能模块组成的软件产品进行自动化集成。在具体实施时,产品集成人员可以在软件集成系统中输入上述软件产品信息,之后,该软件集成系统将接收输入的软件产品信息。为了保证软件产品所需的各个功能模块源代码的安全性,上述软件集成系统可以支持对产品集成人员进行权限管理,例如,在产品集成人员对软件产品进行管理和编译打包之前,需要由管理人员对其进行授权,之后才能进行相应操作。进一步地,所述各个功能模块的属性包括公用模块和专用模块。具体地,所述公用模块为专用模块在进行编译打包时需要调用的功能模块。可以由产品集成人员对各个功能模块进行属性定义,以区分出公用模块和专用模块。进一步地,如图2所示,上述步骤103具体可以通过如下子步骤实现1031、根据所述各个功能模块的属性将所述各个功能模块划分为公用模块和专用模块。1032、先对所述各个功能模块中的公用模块进行编译打包,再引用所述公用模块对所述各个功能模块中的专用模块进行编译打包。由于现有技术中,当软件产品需要进行分项目或者产品分权限管理时,需要有专人分别在不同的服务器上先下载源代码,之后针对不同的功能模块编写相对复杂的执行脚本进行编译打包,编译打包后再提交到指定的服务器上形成软件产品,在对软件产品的各个功能模块进行编译打包时,无法识别公用模块或专用模块。而,本发明实施例中,产品集成人员可以在软件集成系统中输入需要进行产品集成的功能模块,并通过参数设置来标识各个功能模块的属性,在进行编译打包时可以自动识别功能模块为公用模块,还是专用模块,不需要针对不同的操作编写大量脚本分步骤操作来获取最终结果,降低了对产品集成人员脚本编写能力的要求,大大提高工作效率。需要说明的是,在上述步骤102中,从所述各个功能模块的源代码存放路径中获取各个功能模块的源代码时,可以仅显示各个功能模块的源代码的下载进度,不显示各个功能模块的源代码,同时,在上述步骤103中,根据所述各个功能模块的属性对所述各个功能模块的源代码进行编译打包时,也可以仅显示各个功能模块的源代码的编译打包进度,不显示各个功能模块的源代码。可以看出,本发明实施例带来的又一有益效果为一方面,可以进一步地保证各个功能模块的源代码的安全性,另一方面,也降低了对产品集成人员的技术依赖性,亦即,产品集成人员只需登陆软件集成系统通过界面操作输入软件产品信息,即可完成软件产品的集成工作,无需再借助其他的软件或工具,也不需要掌握各个功能模块的开发语言、编程环境、编译打包等技术,节省了人力资源。另外,上述步骤102和步骤103执行时,一种具体地实现方式为当步骤102中功能模块的源代码若获取失败时,可以重新获取,在确认所述软件产品所需的各个功能模块的源代码全部获取成功后,再执行步骤103的自动化集成操作。当然,在功能模块源代码获取出错几率很小的情况下,也可以在每个功能模块源代码获取成功后,立即自动开始产品的集成。具体采取哪种实现方式可以通过单独定义参数来进行设置。进一步地,为了进一步地提高软件产品的各个功能模块源代码的安全性,如图3 所示,在对所述各个功能模块的源代码进行编译打包之后,还包括104、删除所述获取到的各个功能模块的源代码。进一步地,上述步骤101中,所述软件产品信息还包括软件产品的版本;为了方便产品集成人员查看软件产品信息、对软件产品进行管理,或者,为产品集成人员、实施人员、测试人员、开发人员等回溯检查问题时提供参考,如图4所示,该方法还包括105、记录所述软件产品的版本、所述软件产品的各个功能模块的编译打包次数和时间、与所述软件产品的版本对应的各个功能模块源代码的标识。具体实施时,在进行软件集成之前,产品集成人员可以在软件集成系统中选择某一软件产品,并建立该软件产品的新版本号。当对该软件产品的各个功能模块进行编译打包之后,记录该软件的新版本号、所述软件产品在该新版本号下对应的各个功能模块的编译打包次数和时间,或者还可以记录所述软件产品在该新版本号下对应的各个功能模块源代码的标识(该标识具体可以为各个功能源代码在版本管理系统中的标签)。之后,产品集成人员可以在软件集成系统中查看软件产品的各个版本、所述软件产品各个版本对应的各个功能模块的编译打包次数和时间、与所述软件产品的各个版本对应的各个功能模块源代码在版本管理系统中的标签,以便于产品集成人员在后续操作中对软件产品进行管理、控制,或者,为产品集成人员、实施人员、测试人员、开发人员等回溯检查问题时提供参考。特别地,本发明实施例带来的另一有益效果为当软件产品需要更新或者升级时, 采用本发明实施例提供的方法在输入软件产品信息时,只需要输入待更新或者待升级的各个功能模块的源代码地址和属性,对这些待更新或者待升级的各个功能模块进行编译打包之后,再和所述软件产品中不需要进行升级的功能模块进行集成,即可完成对软件的更新或升级。与现有技术中,在对软件产品进行更新或者升级时,需要对所述软件产品的所有功能模块重新进行编译打包相比,本发明实施例可以缩短软件更新的时间,提高软件在更新时的集成效率。另外,本发明实施例中还可以对上述步骤101-104自定义各个步骤的执行时间, 实现软件集成的无人工操作与管理,提高软件集成的自动化率。在采用本发明实施例提供的软件集成方法对软件产品的各个功能模块进行编译打包之后,可以将编译打包之后的各个功能模块,或者将编译打包之后的各个功能模块再进行打包以生成一个安装包上传至指定路径中,以便于进行后续处理,例如,将编译打包之后的各个功能模块上传至测试服务器上,便于测试人员进行人工或者自动化测试,在本发明实施例提供的产品自动化集成方案的基础上,结合测试自动化可以形成一套软件产品自动化处理的完整流程。实施例2 本发明实施例提供一种软件集成系统,如图5所示,包括接收单元11,获取单元 12和编译打包单元13。其中,接收单元11,用于接收输入的软件产品信息,所述软件产品信息包括所述软件产品所需的各个功能模块的源代码存放路径和属性;获取单元12,用于从所述各个功能模块的源代码存放路径中获取各个功能模块的源代码;编译打包单元13,用于根据所述各个功能模块的属性对所述各个功能模块的源代码进行编译打包。在上述软件产品集成系统中,产品集成人员只需要在软件产品集成系统中输入软件产品信息,该软件产品集成系统可以实现自动获取各个功能模块的源代码,并根据所述各个功能模块的属性对所述各个功能模块的源代码进行编译打包。与现有技术中产品集成人员需要通过手工操作或者根据需要手动编写专用的脚本依次对各个功能模块分别进行编译和打包相比,本发明实施例提供的技术方案节省了人力资源及开发成本,可以简化软件集成的操作,提高软件集成的效率。进一步地,所述各个功能模块的属性包括公用模块和专用模块。进一步地,如图6所示,所述编译打包单元13包括划分模块131和编译打包模块 132。其中,划分模块131,用于根据所述各个功能模块的属性将所述各个功能模块划分为公用模块和专用模块;编译打包模块132,用于先对所述各个功能模块中的公用模块进行编译打包,再引用所述公用模块对所述各个功能模块中的专用模块进行编译打包。在上述软件集成系统中,产品集成人员可以输入需要进行产品集成的功能模块, 并通过参数设置来标识各个功能模块的属性,在进行编译打包时可以自动识别功能模块为公用模块,还是专用模块,不需要针对不同的操作编写大量脚本分步骤操作来获取最终结果,降低了对产品集成人员脚本编写能力的要求,大大提高工作效率。进一步地,为了进一步地提高软件产品的各个功能模块源代码的安全性,如图7 所示,还包括删除单元14,用于删除所述获取到的各个功能模块的源代码。进一步地,为了方便产品集成人员查看软件产品信息、对软件产品进行管理,如图 8所示,所述软件产品信息还包括软件产品的版本;该系统还包括记录单元15,用于记录所述软件产品的版本、所述软件产品的各个功能模块的编译打包次数和时间、与所述软件产品的版本对应的各个功能模块源代码的标识。在本发明实施例提供的软件集成系统中还可以增加扩展模块与不同平台、不同操作系统的关联性,以支持扩展到多种不同平台、不同操作系统的编译环境,在软件自动化集成时,自动选择需要使用的平台进行编译处理。本发明实施例主要应用于对软件产品进行集成处理中,例如,在对基于NGB的软件产品进行集成处理时,当然,本发明实施例的应用范围不限于对基于NGB的软件产品进行集成处理,还可以应用在其他业务的软件产品集成过程中。以上所述,仅为本发明的具体实施方式
,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
权利要求
1.一种软件集成方法,其特征在于,包括接收输入的软件产品信息,所述软件产品信息包括所述软件产品所需的各个功能模块的源代码存放路径和属性;从所述各个功能模块的源代码存放路径中获取各个功能模块的源代码;根据所述各个功能模块的属性对所述各个功能模块的源代码进行编译打包。
2.根据权利要求1所述的软件集成方法,其特征在于,所述各个功能模块的属性包括 公用模块和专用模块。
3.根据权利要求2所述的软件集成方法,其特征在于,所述根据所述各个功能模块的属性对所述各个功能模块的源代码进行编译打包包括根据所述各个功能模块的属性将所述各个功能模块划分为公用模块和专用模块;先对所述各个功能模块中的公用模块进行编译打包,再引用所述公用模块对所述各个功能模块中的专用模块进行编译打包。
4.根据权利要求1所述的软件集成方法,其特征在于,在对所述各个功能模块的源代码进行编译打包之后,还包括删除所述获取到的各个功能模块的源代码。
5.根据权利要求1所述的软件集成方法,其特征在于,所述软件产品信息还包括软件产品的版本;该方法还包括记录所述软件产品的版本、所述软件产品的各个功能模块的编译打包次数和时间、与所述软件产品的版本对应的各个功能模块源代码的标识。
6.一种软件集成系统,其特征在于,包括接收单元,用于接收输入的软件产品信息,所述软件产品信息包括所述软件产品所需的各个功能模块的源代码存放路径和属性;获取单元,用于从所述各个功能模块的源代码存放路径中获取各个功能模块的源代码;编译打包单元,用于根据所述各个功能模块的属性对所述各个功能模块的源代码进行编译打包。
7.根据权利要求6所述的软件集成系统,其特征在于,所述各个功能模块的属性包括 公用模块和专用模块。
8.根据权利要求7所述的软件集成系统,其特征在于,所述编译打包单元包括划分模块,用于根据所述各个功能模块的属性将所述各个功能模块划分为公用模块和专用模块;编译打包模块,用于先对所述各个功能模块中的公用模块进行编译打包,再引用所述公用模块对所述各个功能模块中的专用模块进行编译打包。
9.根据权利要求6所述的软件集成系统,其特征在于,还包括删除单元,用于删除所述获取到的各个功能模块的源代码。
10.根据权利要求6所述的软件集成系统,其特征在于,所述软件产品信息还包括软件产品的版本;该系统还包括记录单元,用于记录所述软件产品的版本、所述软件产品的各个功能模块的编译打包次数和时间、与所述软件产品的版本对应的各个功能模块源代码的标识。
全文摘要
本发明的实施例公开一种软件集成方法及系统,涉及软件技术领域,节省人力资源及开发成本,简化软件集成的操作,提高软件集成的效率。包括接收输入的软件产品信息,所述软件产品信息包括所述软件产品所需的各个功能模块的源代码存放路径和属性;从所述各个功能模块的源代码存放路径中获取各个功能模块的源代码;根据所述各个功能模块的属性对所述各个功能模块的源代码进行编译打包。本发明实施例主要应用于对软件产品进行集成处理中。
文档编号G06F9/44GK102156643SQ201110103860
公开日2011年8月17日 申请日期2011年4月25日 优先权日2011年4月25日
发明者沈栋 申请人:青岛海信传媒网络技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1