一种具有运行软件功能的装置和系统及运行方法

文档序号:6578998阅读:177来源:国知局
专利名称:一种具有运行软件功能的装置和系统及运行方法
技术领域
本发明涉及通信和计算机领域,尤其涉及一种具有运行软件功能的装置和系统及 运行方法。
背景技术
为了解决软件系统完善和修改相应功能以适应用户的需要,并减小对整个系统造 成的影响,目前提出了基于现有组件的增量式开发方法,它是将系统的修改转换成某些功 能组件的增量性修改,目前基于现有组件的增量式开发方法主要采用全新开发和移植式开 发,所述全新开发是将新组件的功能代码和适配器要求全部重新编码,所述移植式开发是 在已开发组件的功能代码的基础上进行修改并添加新功能代码实现新组件的开发。在实现本发明过程中,发明人发现现有技术中至少存在如下问题所述全新开发的方式,由于代码都是重新编排的,导致组件开发的工作量较大,且 容易存在缺陷,从而造成新组件质量的稳定周期较长;所述移植式开发的方式,由于在已开 发组件的功能代码的基础上进行修改,容易引入缺陷,一旦出现问题很难确定是添加的新 功能代码还是已开发组件的功能代码出现问题,也会造成新组件质量的稳定周期较长。

发明内容
本发明的实施例提供了一种具有运行软件功能的装置和系统及运行方法,降低了 组件开发的工作量,并缩短了新组件质量的稳定周期。本发明实施例提供了一种具有运行软件功能的装置,包括第一组件,包括存储软件功能代码的模块一和第一适配器;第二组件,包括存储有软件功能代码的模块二和第二适配器;总线,连接第一组件的第一适配器和第二组件的第二适配器,用于传输所述第一 组件和所述第二组件之间的信息;所述第二组件,用于根据所述第一组件和所述第二组件的位置修改所述第一组件 中第一适配器的参数,接收调用信息,并根据所述调用信息通过所述总线调用连接于总线 上的所述第一组件中的软件功能代码。本发明实施例提供了一种具有运行软件功能的系统,包括外部总线和具有运行软 件功能的装置,其中,所述外部总线,用于获取调用信息,所述调用信息用于指示当前需要调用的组 件;所述具有运行软件功能的装置包括第一组件、第二组件和总线,所述第一组件包 括存储软件功能代码的模块一和第一适配器;所述第二组件包括存储有软件功能代码的模 块二和第二适配器;所述总线,连接第一组件的第一适配器和第二组件的第二适配器,用于 传输所述第一组件和所述第二组件之间的信息;所述第二组件根据所述第一组件和所述第 二组件的位置修改所述第一组件中第一适配器的参数,并根据所述外部总线获取的调用信息,通过总线调用连接于总线上所述第一组件的软件功能代码。本发明实施例提供了一种运行软件功能的方法,所述方法应用于包含第一组件和 第二组件的具有运行软件功能的装置中,每一个组件包括存储有软件功能代码的模块和适 配器,包括所述第二组件根据所述第一组件和第二组件的位置修改所述第一组件中第一适 配器的参数;所述第二组件获取调用信息,所述调用信息用于指示当前需要调用的组件;所述第二组件根据获取的调用信息,通过连接所述第一组件的第一适配器和所述 第二组件的第二适配器的总线调用所述第一组件上的软件功能代码。由上述本发明的实施例提供的技术方案可以看出,其采用将含有需要软件功能代 码的组件通过总线相连,使各个软件功能代码相互隔离,降低了组件开发的工作量,并缩短 了新组件质量的稳定周期。


为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用 的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本 领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他 的附图。图1为本发明实施例所述的一种具有运行软件功能的装置的结构示意图;图2为本发明实施例所述的具体实施例一所述的一种具有运行软件功能的装置 的结构示意图;图3为本发明实施例所述的一种具有运行软件功能的系统的结构示意图;图4为本发明实施例所述的一种运行软件功能的方法的流程示意图。
具体实施例方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完 整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于 本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他 实施例,都属于本发明保护的范围。本发明实施例提供的一种构建新组件的装置,如图1所示,包括第一组件1,包括存储软件功能代码的模块一 11和第一适配器12 ;第二组件2,包括存储有软件功能代码的模块二 21和第二适配器22 ;总线3,连接第一组件1的第一适配器12和第二组件2的第二适配器22,用于传 输所述第一组件1和所述第二组件2之间的信息;所述第二组件2,用于根据所述第一组件1和所述第二组件2的位置修改所述第一 组件1中第一适配器12的参数,接收调用信息,并根据所述调用信息通过所述总线3调用 连接于总线3上的所述第一组件1中的软件功能代码。上述装置中,还可以包括外部适配器4,所述外部适配器4用于接收调用信息。上述装置中,所述第二组件2还可以包括
管理模块23,用于根据外部适配器4接收的所述调用信息,通过总线3调用连接于 总线3上所述第一组件1或所述第二组件2中的软件功能代码。上述装置中,所述第一适配器的参数包括地址参数和端口参数,根据所述第一组 件1和所述第二组件2的位置修改所述第一组件1中第一适配器12的参数的具体过程可 以包括,若所述第二组件2和所述第一组件1部署在同一台计算机上,则修改所述第一组件 1中第一适配器12的端口参数,若所述第二组件2和所述第一组件1部署在不同的计算机 上,则修改所述第一组件1中第一适配器12的地址参数。例如,若所述第二组件2和所述第一组件1部署在同一台计算机上,则修改所 述第一组件1中第一适配器12的端口参数,并保持和第二组件2中第二适配器22的地 址参数一致,具体若所述第二组件2中第二适配器22的地址参数为192. 168. 0. 10,端口 参数为9901,则修改所述第一组件1中第一适配器12的端口参数为9902,地址参数为 192. 168. 0. 10 ;若所述第二组件2和所述第一组件1部署在不同的计算机上,则修改所述 第一组件1中第一适配器12的地址参数,并保持和第二组件2中第二适配器22的端口参 数一致,具体若所述第二组件2中第二适配器22的地址参数为192. 168. 0. 10,端口参数为 9901,则修改所述第一组件1中第一适配器12的地址参数为192. 168. 0. 11,端口参数为 9901。具体实施例一、如图2所示,本具体实施例以含有软件功能E1代码模块(111)、软件功能E2代码模块(112) 和适配器A(121)的组件A(101),含有软件功能E3代码模块(113)、软件功能E4代码模块 (114)和适配器B(122)的组件B(102)以及含有软件功能E5代码模块(211)、第二适配器 (22)和管理模块(23)的组件C(201)构建的具有运行软件功能E1、E2、E3、E4和E5的装置 为例,首先将软件功能E1代码模块(111)的接口信息、软件功能E2代码模块(112)的接口 信息、软件功能E3代码模块(113)的接口信息、软件功能E4代码模块(114)的接口信息以 及软件功能E5代码模块(211)的接口信息注册到管理模块(23),当外部适配器(4)接收到 调用组件C时,管理模块(23)根据所述调用组件C对应所述软件功能E5代码模块(211) 注册在管理模块(23)的接口信息,直接调用软件功能E5的代码。当外部适配器(4)接收 到调用组件A时,管理模块(23)根据所述调用组件A对应所述软件功能E1代码模块(111) 注册在管理模块(23)的接口信息或所述软件功能E2代码模块(112)注册在管理模块(23) 的接口信息,通过组件C(201)中的第二适配器(22)通过总线(3)调用连接于总线(3)上 的组件A(101)中的软件功能El代码或软件功能E2代码。当外部适配器(4)接收到调用 组件B时,管理模块(23)根据所述调用组件B对应所述软件功能E3代码模块(113)注册 在管理模块(23)的接口信息或所述软件功能E4代码模块(114)注册在管理模块(23)的 接口信息,通过组件C(201)中的第二适配器(22)通过总线(3)调用连接于总线(3)上的 组件B (102)中的软件功能E3代码或软件功能E4代码。在上述实施例中,当组件A(101)、组件B(102)和组件C(201)部署在同一台计算机 上时,则修改所述组件A (101)中适配器A (121)和所述组件B (102)中适配器B (122)的端 口参数,并保持所述组件A (101)中适配器A (121)和所述组件B (102)中适配器B (122)的 地址参数与所述组件C (201)中第二适配器(22)的地址参数一致,具体若组件C (201)中第 二适配器(22)的地址参数为192. 168.0. 10,端口参数为9901,则修改组件A (101)中适配器A (121)的端口参数为9902,地址参数为192. 168.0. 10,修改所述组件B (102)中适配器 B(122)的端口参数为9903,地址参数为192. 168.0. 10。当组件A(101)和组件B(102)部 署在同一台计算机上,而与组件C(201)部署在不同的计算机上,则修改所述组件A(101)中 适配器A(121)的地址参数,并保持与所述第二组件2中第二适配器(22)的地址参数一致, 并修改组件B(102)中适配器B(122)的地址参数和端口参数,具体若组件C(201)中第二 适配器(22)的地址参数为192. 168.0. 10,端口参数为9901,则修改组件A (101)中适配器 A (121)的地址参数为192. 168.0. 11,端口参数为9901,修改组件B (102)中适配器B (122) 的地址参数为192. 168.0. 11,端口参数为9902。当组件A(101)和组件B(102)和组件 C(201)均部署在不同的计算机上时,则修改所述组件A(101)中适配器A(121)的地址参数 和组件B(102)中适配器B(122)的地址参数,并保持与所述组件C(201)中第二适配器(22) 的端口参数一致,具体若组件C(201)中第二适配器(22)的地址参数为192. 168. 0. 10,端口 参数为9901,则修改组件A (101)中适配器A (121)的地址参数为192. 168.0. 11,端口参数 为9901,修改组件B (102)中适配器B (122)的地址参数为192. 168. 0. 12,端口参数为9901。一种一种具有运行软件功能的系统,如图3所示,包括外部总线5和具有运行软件 功能的装置,其中,所述外部总线5,用于获取调用信息,所述调用信息用于指示当前需要调用的组 件;所述具有运行软件功能的装置包括第一组件1、第二组件2和总线3,所述第一组 件1包括存储软件功能代码的模块一 11和第一适配器12 ;所述第二组件2包括存储有软 件功能代码的模块二 21和第二适配器22 ;所述总线3,连接第一组件1的第一适配器12和 第二组件2的第二适配器22,用于传输所述第一组件1和所述第二组件2之间的信息;所 述第二组件2根据所述第一组件1和所述第二组件2的位置修改所述第一组件1中第一适 配器12的参数,并根据所述外部总线5获取的调用信息,通过总线3调用连接于总线3上 所述第一组件1的软件功能代码,所述第一适配器12的参数包括地址参数和端口参数。在上述系统中,根据所述第二组件2与所述外部总线5的位置确定所述总线3采 用多实例模式或单实例模式。所述总线是一种面向消息的构件,是组件通信中对等实体之 间消息交互的信道,用于承载组件之间消息的交互。进一步,若所述外部总线5和所述第二 组件2部署在同一台计算机上,则可以确定所述总线3采用多实例模式;若所述外部总线5 和所述第二组件2部署在不同的计算机上,则可以确定所述总线3采用多实例模式,也可以 确定所述总线3采用单实例模式。所述多实例模式,是指在同一台计算机上同一个总线程 序可以同时运行多个实例进程,每个实例进程侦听不同的端口 ;所述单实例模式,是指在同 一台计算机上同一个总线程序可以运行一个实例进程,此实例进程侦听一个固定的端口。例如,当所述外部总线5和所述第二组件2部署在同一台计算机上时,则所述外 部总线5与所述总线3确定的IP地址相同,侦听端口不同,具体若所述外部总线5的IP 地址为192. 168. 0. 10,侦听端口为9901,则确定所述总线3的IP地址为192. 168. 0. 10,侦 听端口为9902。当所述外部总线5与所述第二组件2部署在不同的计算机上时,则所述总 线3可以采用单实例模式也可以采用多实例模式,若所述总线3采用单实例模式,具体若 所述外部总线5的IP地址为192. 168. 0. 10,侦听端口为9901,则所述总线3的IP地址为 192. 168. 0. 11,侦听端口为9901 ;若所述总线3采用多实例模式,具体若所述外部总线5的IP地址为192. 168. 0. 10,侦听端口为9901,则确定所述总线3的IP地址为192. 168. 0. 10, 侦听端口为9902。本发明实施例提供了一种运行软件功能的方法,如图4所示,所述方法应用于包 含第一组件和第二组件的具有运行软件功能的装置中,每一个组件包括存储有软件功能代 码的模块和适配器,包括步骤一、所述第二组件根据所述第一组件和第二组件的位置修改所述第一组件中 第一适配器的参数,所述第一适配器的参数包括地址参数和端口参数;步骤二、所述第二组件获取调用信息,所述调用信息用于指示当前需要调用的组 件;步骤三、所述第二组件根据获取的调用信息,通过连接所述第一组件的第一适配 器和所述第二组件的第二适配器的总线调用所述第一组件上的软件功能代码。在上述方法中。还可以包括通过外部总线获取调用信息;所述第二组件获取调 用信息包括所述第二组件从所述外部总线获取调用信息。上述方法中包含的各步骤完成的功能的具体实现方式在之前的装置和系统实施 例中已经描述,在此不再重复描述。。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以 通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质 中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁 碟、光盘、只读存储记忆体(Read-Only Memory, ROM)或随机存储记忆体(Random Access Memory, RAM)等。本发明实施例采用将质量稳定的已开发含有需要软件功能代码的组件或含有新 增软件功能代码的组件通过总线相连,通过总线直接调用软件功能代码或通过总线调用软 件功能代码,避免了对代码重新编排或直接修改代码而引入缺陷,以及一旦出现问题很难 确定究竟是哪个组件的软件功能代码出现问题的情况,降低了组件开发的工作量,并缩短 了新组件质量的稳定周期。以上所述,仅为本发明较佳的具体实施方式
,但本发明的保护范围并不局限于此, 任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换, 都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围 为准。
权利要求
一种具有运行软件功能的装置,其特征在于,包括第一组件,包括存储软件功能代码的模块一和第一适配器;第二组件,包括存储有软件功能代码的模块二和第二适配器;总线,连接第一组件的第一适配器和第二组件的第二适配器,用于传输所述第一组件和所述第二组件之间的信息;所述第二组件,用于根据所述第一组件和所述第二组件的位置修改所述第一组件中第一适配器的参数,接收调用信息,并根据所述调用信息通过所述总线调用连接于总线上的所述第一组件中的软件功能代码。
2.根据权利要求1所述的装置,其特征在于,所述装置还包括外部适配器,所述外部适 配器用于接收调用信息。
3.根据权利要求2所述的装置,其特征在于,所述第二组件还包括管理模块,用于根据外部适配器接收的所述调用信息,通过总线调用连接于总线上所 述第一组件或所述第二组件中的软件功能代码。
4.根据权利要求1至3任一项所述的装置,其特征在于,所述第一适配器的参数包括地 址参数和端口参数。
5.一种具有运行软件功能的系统,其特征在于,包括外部总线和具有运行软件功能的 装置,其中,所述外部总线,用于获取调用信息,所述调用信息用于指示当前需要调用的组件;所述具有运行软件功能的装置包括第一组件、第二组件和总线,所述第一组件包括存 储软件功能代码的模块一和第一适配器;所述第二组件包括存储有软件功能代码的模块二 和第二适配器;所述总线,连接第一组件的第一适配器和第二组件的第二适配器,用于传输 所述第一组件和所述第二组件之间的信息;所述第二组件根据所述第一组件和所述第二组 件的位置修改所述第一组件中第一适配器的参数,并根据所述外部总线获取的调用信息, 通过总线调用连接于总线上所述第一组件的软件功能代码。
6.根据权利要求5所述的系统,其特征在于,所述第一适配器的参数包括地址参数和 端口参数。
7.根据权利要求5所述的系统,其特征在于,根据所述第二组件与所述外部总线的位 置确定所述总线采用多实例模式或单实例模式。
8.一种运行软件功能的方法,其特征在于,所述方法应用于包含第一组件和第二组件 的具有运行软件功能的装置中,每一个组件包括存储有软件功能代码的模块和适配器,包 括所述第二组件根据所述第一组件和第二组件的位置修改所述第一组件中第一适配器 的参数;所述第二组件获取调用信息,所述调用信息用于指示当前需要调用的组件;所述第二组件根据获取的调用信息,通过连接所述第一组件的第一适配器和所述第二 组件的第二适配器的总线调用所述第一组件上的软件功能代码。
9.根据权利要求8所述的方法,其特征在于,所述第一适配器的参数包括地址参数和 端口参数。
10.根据权利要求8或9所述的方法,其特征在于,所述方法还包括通过外部总线获取调用信息;所述第二组件获取调用信息包括所述第二组件从所述外部总线获取调用信息。
全文摘要
一种具有运行软件功能的装置和系统及运行方法,本发明实施例的装置包括第一组件和第二组件通过总线相连,所述第一组件包括存储软件功能代码的模块一和第一适配器;所述第二组件包括存储有软件功能代码的模块二和第二适配器,用于根据所述第一组件和所述第二组件的位置修改所述第一组件中第一适配器的参数,接收调用信息,并根据所述调用信息通过所述总线调用连接于总线上的所述第一组件中的软件功能代码;所述总线用于传输所述第一组件和所述第二组件之间的信息。本发明实施例降低了组件开发的工作量,并缩短了新组件质量的稳定周期。
文档编号G06F13/38GK101937366SQ200910152008
公开日2011年1月5日 申请日期2009年7月2日 优先权日2009年7月2日
发明者文国耀 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1