CN103067509A - 一种模块化软件升级系统及其方法 - Google Patents
一种模块化软件升级系统及其方法 Download PDFInfo
- Publication number
- CN103067509A CN103067509A CN2012105869086A CN201210586908A CN103067509A CN 103067509 A CN103067509 A CN 103067509A CN 2012105869086 A CN2012105869086 A CN 2012105869086A CN 201210586908 A CN201210586908 A CN 201210586908A CN 103067509 A CN103067509 A CN 103067509A
- Authority
- CN
- China
- Prior art keywords
- module
- software
- xml
- request
- download
- 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.)
- Pending
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
本发明提供一种模块化软件升级系统及其方法。模块化软件升级系统主要包括软件客户端、模块化升级系统、远程数据管理中心。软件客户端为发出请求的终端。模块化升级系统,用于对终端发送的请求的处理操作。远程数据管理中心接收到的请求作出响应的服务器。该系统主要是通过模块名称.XML文件描述、快速下载和安全拷贝已经进程间信令控制方法来实现软件功能模块的下载实现软件维护的自动化、智能化,并且实现节省带宽的目的。
Description
技术领域
本发明涉及一种软件维护领域,更具体地说,涉及一种软件模块化软件升级系统及其方法。
背景技术
软件产品技术复杂,功能需要不断完善,要不断完善,要不断修改、更新,这就是软件升级。通常软件对于较小的BUG或是安全性的修改或对性能做较小的提高,也称为软件的更新,软件的更新版本可以通过网络免费下载。软件自动升级方式基于Internet,软件商以功能模块为单位对软件进行更新,然后通过电子邮件通知用户软件更新的消息以及增加的功能和升级的条件。用户根据自己的情况决定是够升级,升级时先通过因特网将升级文件下载到本地硬盘上,然后覆盖指定目录下的老版本文件,在升级的过程中用户只需按照向导的提示一步一步进行就可以了,确保了用户及时和正确地升级软件。软件升级属于软件维护阶段。通常有四类维护活动:改正性维护,即诊断和改正正在使用过程中发现的软件错误;适应性维护,即修改软件以适应环境的变化;完善性维护,即根据用户的要求改进或扩充软件使它更完善;预防性维护,即修改软件为将来的维护活动预先做准备。软件维护是软件生命周期中的一个重要部分,软件维护的成本高达开发成本的四倍左右。每一次维护活动以后,软件商通常会修改软件的版本号,即又有了一个新的版本,如果用户想使用新的版本,就必须升级。由此可以看出,软件升级具有重大意义:可以改正软件中的错误,适应新的硬件环境,完善软件功能,以及为以后的升级做准备。由于任何一个团队在团结开发设计中都不可能把软件做得完美,甚至还存在较多的漏洞,在软件的使用中,软硬件环境会不断发生变化,用户会有不断的完善产品功能的要求,因此软件升级在我们使用计算机的时候变得越来越普遍。
通常视频播放器软件的安装升级方法,是在安装包里尽可能的把相关模块加进去,通常视频播放软件安装包大小都为六、七兆以上,甚至几十兆;升级时候替换整体安装目录,重启所有相关进程。常规的客户端的升级。现有技术中,客户端在进行升级时,一般是针对客户端的全部信息或功能进行升级,安装包的数据信息较多,导致安装包比较大,终端下载安装包的耗时长,安装时间长,并且影响旧版本的客户端的正常运行。现有的方案存在以下问题不能解决:一,安装包不能最小化,对网络带宽较小的用户影响很大;二,软件维护和运营不能自动化、智能化。
发明内容
通常的软件安装包不能最小化,升级维护不能自动化和智能化;本发明针对上述弊端进行架构和原理的创新,解决上述问题。视频客户端构成 face,用户界面的简单操作就可以享受到震撼的音视频效果。为了实现上述目的本发明提供一种用户终端够根据用户的更新需求或服务器的更新通知,选择更新需要的功能模块或者对正在使用的功能模块进行更新的方法。
本法的一个目的是提供一种模块化软件升级系统,包括软件客户端、模块化升级系统、远程数据管理中心,其特点是,软件客户端为发出请求的终端;模块化升级系统为对终端发送的请求的处理操作;远程数据管理中心,指的是接收到的请求作出响应的服务器。所述模块化升级系统原理是指,用户通过终端向模块化升级系统发送功能模块请求,模块化升级系统将收到的上述请求转发至远程数据管理中心,由远程数据管理中心获取与该请求中名称对应的配置文件,即获取模块名称.XML文件,并将获取的模块组件发送至模块化升级系统,模块化升级系统将获取的模块组件发送至终端,并通知终端发送完成。
在上述任一方案中优选的是,上述模块名称.XML文件和模块组件分别存储在预先指定的存储空间。
在上述任一方案中优选的是,上述指定的存储空间位于远程数据管理中心。
在上述任一方案中优选的是,上述远程数据管理中心的的主要工作是后台维护人员对模块进行描述。
在上述任一方案中优选的是,上述模块描述是指一个XML文件,即模块名称.XML文件。
在上述任一方案中优选的是,上述所述模块名称.XML一般包括配置更新模块以及对应的功能模块所包含的模块组件信息。
优选的是,上述模块名称.XML的配置更新模块文件一般包括主文件进程、URI、下载路径等信息
在上述任一方案中优选的是,上述URI用来定位下载资源的描述文件模块名称.XML。
在上述任一方案中优选的是,上述下载路径指的是需要下载的模块组件的路径。
在上述任一方案中优选的是,上述主文件进程为当前软件正在执行的进程。
在上述任一方案中优选的是,上述模块组件的信息包括模块组件的名称、版本号、MD5等信息。
优选的是,上述模块化升级系统对终端请求的操作包括解析用户行为、分析维护人员的后台支持内容、快速下载组件到本地并安全拷贝、智能控制相关进程、转送用户信令至升级模块。
在上述任一方案中优选的是,上述解析用户行为包括,所述模块化升级系统根据终端发送的请求,确定终端请求对应的功能模块,并将终端的请求发送至远程数据管理中心。
在上述任一方案中优选的是,上述析维护人员的后台支持内容是指模块化升级系统接收并解析远程数据管理中心返回的配置文件,即获取模块名称.XML配置文件。
在上述任一方案中优选的是,上述远程数据管理中心根据模块化升级系统转发的终端请求来获取模块名称.XML配置文件信息并发送至模块化升级系统。
在上述任一方案中优选的是,上述快速下载组件到本地并安全拷贝,是指模块化升级系统根据解析出的配置文件信息,到远程数据管理中心获取并下载相应的模块组件,并保存至相应的位置。
在上述任一方案中优选的是,上述智能控制相关进程指的是对相应模块的注册、启动或者退出等。
在上述任一方案中优选的是,上述转送用户的指令指的是模块化升级系统将获取的模块组件等信息发送至终端,并通知终端下载或更新完成。
本发明的另一个目的是提出一种模块化软件升级方法,包括如下步骤:
A.模块名称.XML描述步骤,指对模块进行描述以便用户确定模块组件的位置及下载所需的模块组件;
B.快速下载和安全拷贝步骤,指下载相应的模块组件并安全拷贝到相应的位置实现模块化软件升级,快速下载和安全拷贝步骤包括终端发送请求、分析用户行为、分析维护人员的支持内容、快速下载和安全拷贝、转送用户的信令给升级模块步骤;
C.终端发送请求步骤是指用户终端通过发送更新模块请求;
D.分析用户行为步骤是指模块化升级系统根据接收到的请求确定对应的功能模块,并将终端的请求转发至远程数据管理中心;
E.分析维护人员的支持内容步骤实质模块化升级系统接收并解析远程数据管理中心返回的配置文件,获取配置文件中的信息;
F.快速下载和安全拷贝步骤实质模块化升级管理系统根据解析出的信息,如URI、模块组件版本号、MD5等信息,下载对应的模块组件;
G.转送用户的信令给升级模块步骤指的是模块化升级系统将获取的模块组件等信息发送至终端,并通知终端下载或更新完成;
H.快速下载和安全拷贝步骤是在模块化升级系统未在升级或未准备升级的情况下载进行的操作,模块化升级系统在正准备或正在升级是收到终端发生的请求时,则将其本地保存的信息以及接收的请求保存到指定的存储系统,由指定应用程序进程管理,在模块化升级系统升级完成后,再将保存在存储系统的数据调回本地进行后续步骤如上步骤;
I.进程间信令控制步骤,指进程通过共享内存来控制信令。
附图说明
图1为本发明技术方案示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,一下结合附图及实施方式,对本发明进一步详细说明。应当理解所描述的具体实施方式仅仅用以解释本发明,并不用户限定本发明。
图1示出了本发明的技术方案。本发明方法包括软件客户端、模块化升级系统、远程数据管理中心。
软件客户端,用户只关心UI层,对UI(User Interface,用户界面)的简单操作就可以享受到软件效果。终端能够根据用户的更新需求或服务器的更新通知,指示用户对选择的需要更新的功能模块或正在使用的功能进行更新。例如,用户使用的播放器支持网上下载或浏览视频信息的操作。若用户想使用该播放器播放本地的视频信息,则终端根据用户播放本地视频信息的操作,向模块化升级系统发送获取支持本地播放视频功能模块下载请求;或者模块化升级系统主动向终端发送用户正在使用的功能模块更新通知,在终端确认后,返回相应下载请求。
远程数据管理中心是后台维护人员工作的场所。后台维护人员的工作是描述模块名称.XML,并存储模块组件到远程数据管理中(即服务器)的指定位置。模块化升级系统根据终端发送的请求,将该请求(请求中携带请求获取或下载的功能模块的名称)转发至远程数据管理中心,由远程数据管理中心获取与该请求中名称对应的配置文件,即获取模块名称.XML配置文件,并将获取的配置文件发送至模块化升级系统。由图1可知,本发明模块组件和模块名称.XML文件存储在远程数据管理中心。模块名称.XML一般包括配置更新模块以及对应的功能模块所包含的模块组件信息。模块名称.XML的配置更新模块文件一般包括主文件进程、URI、下载路径等信息。URI用来定位下载资源的描述文件模块名称.XML。下载路径指的是需要下载的模块组件的路径。主文件进程为当前软件正在执行的进程。模块组件的信息包括模块组件的名称、版本号、MD5等信息。
模块化升级系统用来解析用户行为、分析维护人员的后台支持内容、快速下载组件到本地并安全拷贝、智能控制相关进程、转送用户的信令给升级模块。模块化升级系统与远程数据管理之间的通信是通过客户端/服务器通信组件来完成。客户端组件,是通信的请求方,主动的与服务器建立连接。服务器端组件为通信的响应方,用于监听以及被动接受客户端的连接请求,并对请求进行回复。本发明通过模块化升级系统与远程数据管理中心来实现对请求的回复。
解析用户行为,即解析用户需要什么模块。模块化升级系统根据终端发送的请求(请求中携带有请求获取或下载的功能模块的名称),确定终端请求的功能对应的功能模块,并发送给远程数据管理中心。
分析维护人员的后台支持内容,即模块名称.XML的描述。模块化升级系统接受解析远程数据管理中心返回的模块名称.XML配置文件,获取配置文件中的信息。远程数据管理中心解析配置文件是通过构建解析器、解析方法完成对模块名称.XML配置文件的解析,并将结果发送到模块化升级系统。
快速下载组件到本地并安全拷贝到目的路径是指模块化升级系统根据解析出的信息,到远程数据管理中心获取并下载相应的模块组件。根据配置信息提供的路径将获取的模块组件保存至相应的位置。本发明的提出以模块化方式进行下载,只需下载相关模块组件即可完成软件功能模块升从而做到快速下载,而不需要全部覆盖软件。
智能控制相关进程,即对相应模块的注册、启动或者退出等待。若模块组件中存在需要得到终端操作系统或服务器认证的组件,则与相应设备进行注册,以使该组件的功能能够在终端实现。若软件中不存在相关功能模块,则模块化升级系统主动将该模块组件注册到终端提示用户。
转送用户的信令给升级模块,实现用户要求。模块化升级系统将获取的模块组件等信息发送至终端,并通知终端下载或更新完成。
例如用户使用的播放器支持网上下载或浏览信息的操作,若用户想使用该播放器播放本地的视频信息,终端将该播放本地视频信息请求发送至模块化升级系统。模块化升级系统接收到该用户请求确定所需的播放本地视频功能模块名称,并发送该请求到远程数据管理中心。远程数据管理中心通过解析该播放本地视频功能模块组件的名称以及所述模块组件的路径等信息,并将模块组件发送至模块化升级系统。模块化升级系统将获取的上述模块组件的名称、路径等信息发送至终端,并通知终端下载,实现用户要求。用户选择下载,模块化升级系统根据上述解析的模块组件名称、路径等信息到远程数据管理中心下载相应的模块组件,并保存到相应的位置。用户的下载请求发送到模块化升级系统时,若模块化升级系统正准备或正在升级,那么该下载请求将被保存到指定的存储系统,由指定的应用程序进行管理,模块化升级系统升级完成后,再将上述下载请求调回本地保存,并执行后续流程。或者模块化升级系统也会主动向终端发送用户正在使用的功能模块更新通知,在终端确认后,返回相应的下载请求。
Claims (10)
1.一种模块化软件升级系统,包括软件客户端、模块化升级系统、远程数据管理中心,其特征是,
软件客户端为发出请求的终端;
模块化升级系统为对终端发送的请求的处理操作;
远程数据管理中心为对接收到的请求作出响应的服务器。
2.根据权利要求1的系统,其特征是,所述软件客户端提供的是用户对UI进行操作的用户展现方面的信息。
3.根据权利要求的系统,其特征是,所述远程数据管理中心配置成能够为终端请求提供所需的模块组件并进行模块描述。
4.根据权利要求3的系统 ,其特征是,所述模块描述通过一XML文件,即模块名称.XML文件实现的。
5.根据权利要求4的系统,其特征是,所述模块名称.XML包括配置更新模块以及对应的功能模块所包含的模块组件信息。
6.根据权利要求5的系统,其特征是,所述模块名称.XML的配置更新模块文件包括主URI、下载路径、文件进程。
7.根据权利要求6的系统,其特征是,所述URI用来定位下载资源的描述文件,即模块名称.XML。
8.根据权利要6的系统,其特征是,所述下载路径为需要下载的模块组件的路径。
9.根据权利要求6的系统,其特征是,所述主文件进程为当前软件正在执行的进程。
10.一种模块化软件升级方法,包括模块名称XML描述步骤、快速下载和安全拷贝步骤、进程间信令控制步骤,其特征是,
模块名称.XML描述步骤,是指对模块进行描述以便用户确定模块组件的位置及下载所需的模块组件;
快速下载和安全拷贝步骤,是指下载相应的模块组件并安全拷贝到相应的位置实现模块化软件升级;
进程间信令控制步骤,是指进程通过共享内存来控制信令。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2012105869086A CN103067509A (zh) | 2012-12-30 | 2012-12-30 | 一种模块化软件升级系统及其方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2012105869086A CN103067509A (zh) | 2012-12-30 | 2012-12-30 | 一种模块化软件升级系统及其方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103067509A true CN103067509A (zh) | 2013-04-24 |
Family
ID=48109963
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2012105869086A Pending CN103067509A (zh) | 2012-12-30 | 2012-12-30 | 一种模块化软件升级系统及其方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103067509A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104731607A (zh) * | 2013-12-18 | 2015-06-24 | 华为技术有限公司 | 终端终生学习处理方法、装置和系统 |
CN106484488A (zh) * | 2015-08-31 | 2017-03-08 | 深圳市金锐显数码科技有限公司 | 一体化云编译方法和系统 |
CN106982177A (zh) * | 2017-03-31 | 2017-07-25 | 广东欧珀移动通信有限公司 | 升级控制方法、装置及终端 |
CN108923968A (zh) * | 2018-06-28 | 2018-11-30 | 京信通信系统(中国)有限公司 | 链路终端系统升级方法、装置、链路终端和存储介质 |
CN110166293A (zh) * | 2019-05-21 | 2019-08-23 | 上海市共进通信技术有限公司 | 实现模块化升级调试开发功能的家庭网关及其升级调试处理方法 |
CN111949260A (zh) * | 2020-06-24 | 2020-11-17 | 武汉烽火众智数字技术有限责任公司 | 一种移动端业务配置化方法及系统 |
CN113535200A (zh) * | 2021-05-28 | 2021-10-22 | 宁波三星医疗电气股份有限公司 | 一种能源控制器app升级方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101026464A (zh) * | 2006-02-25 | 2007-08-29 | 宇龙计算机通信科技(深圳)有限公司 | 无线终端的无线升级方法和无线升级系统 |
CN102081536A (zh) * | 2010-12-30 | 2011-06-01 | 华为终端有限公司 | 一种增量升级方法及服务器 |
CN102799454A (zh) * | 2012-07-13 | 2012-11-28 | 中广传播集团有限公司 | 一种终端软件空中升级与加载的方法 |
-
2012
- 2012-12-30 CN CN2012105869086A patent/CN103067509A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101026464A (zh) * | 2006-02-25 | 2007-08-29 | 宇龙计算机通信科技(深圳)有限公司 | 无线终端的无线升级方法和无线升级系统 |
CN102081536A (zh) * | 2010-12-30 | 2011-06-01 | 华为终端有限公司 | 一种增量升级方法及服务器 |
CN102799454A (zh) * | 2012-07-13 | 2012-11-28 | 中广传播集团有限公司 | 一种终端软件空中升级与加载的方法 |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104731607A (zh) * | 2013-12-18 | 2015-06-24 | 华为技术有限公司 | 终端终生学习处理方法、装置和系统 |
WO2015090062A1 (zh) * | 2013-12-18 | 2015-06-25 | 华为技术有限公司 | 终端终生学习处理方法、装置和系统 |
US10078509B2 (en) | 2013-12-18 | 2018-09-18 | Huawei Technologies Co., Ltd. | Method and system for processing lifelong learning of terminal and apparatus |
CN104731607B (zh) * | 2013-12-18 | 2018-10-30 | 华为技术有限公司 | 终端终生学习处理方法、装置和系统 |
CN106484488A (zh) * | 2015-08-31 | 2017-03-08 | 深圳市金锐显数码科技有限公司 | 一体化云编译方法和系统 |
CN106484488B (zh) * | 2015-08-31 | 2019-09-03 | 深圳市金锐显数码科技有限公司 | 一体化云编译方法和系统 |
CN106982177A (zh) * | 2017-03-31 | 2017-07-25 | 广东欧珀移动通信有限公司 | 升级控制方法、装置及终端 |
CN108923968A (zh) * | 2018-06-28 | 2018-11-30 | 京信通信系统(中国)有限公司 | 链路终端系统升级方法、装置、链路终端和存储介质 |
CN108923968B (zh) * | 2018-06-28 | 2021-11-02 | 京信网络系统股份有限公司 | 链路终端系统升级方法、装置、链路终端和存储介质 |
CN110166293A (zh) * | 2019-05-21 | 2019-08-23 | 上海市共进通信技术有限公司 | 实现模块化升级调试开发功能的家庭网关及其升级调试处理方法 |
CN111949260A (zh) * | 2020-06-24 | 2020-11-17 | 武汉烽火众智数字技术有限责任公司 | 一种移动端业务配置化方法及系统 |
CN113535200A (zh) * | 2021-05-28 | 2021-10-22 | 宁波三星医疗电气股份有限公司 | 一种能源控制器app升级方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10592402B2 (en) | Automated integration testing with mock microservices | |
CN103067509A (zh) | 一种模块化软件升级系统及其方法 | |
US10754631B2 (en) | Tenant upgrade analytics | |
US8935687B2 (en) | Incrementally updating a software appliance | |
US9268589B2 (en) | Method and system for deploying multiple distributed application stacks on a target machine | |
US8943496B2 (en) | Providing a hosted appliance and migrating the appliance to an on-premise environment | |
US8909705B2 (en) | Method and system for use in providing network services interchange | |
US20090300593A1 (en) | Methods and systems for managing a software appliance | |
US20190220285A1 (en) | Method and system for automation tool set for server maintenance actions | |
US20120116751A1 (en) | Providing message text translations | |
CN111708702A (zh) | 模拟测试方法、客户端、服务端、系统与可读存储介质 | |
CN103984573A (zh) | 应用程序的安装方法及装置 | |
US20090300584A1 (en) | Methods and systems for providing a demo appliance and migrating the demo appliance to a production appliance | |
EP3103023A1 (en) | Private cloud connected device cluster architecture | |
CN111200523B (zh) | 中台系统配置方法、装置、设备及存储介质 | |
US20150248301A1 (en) | Global feature library useable with continuous delivery | |
US20220038444A1 (en) | Cloud device, application processing method, electronic device and storage medium | |
CN107770212A (zh) | 富通信套件发布平台、版本更新方法及系统、移动终端 | |
CN113448988A (zh) | 算法模型的训练方法、装置、电子设备及存储介质 | |
CN113568970A (zh) | 应用业务数据管理方法、装置、设备以及存储介质 | |
CN103354927A (zh) | 用于管理处理设备中的内容的方法和装置 | |
CN111930625B (zh) | 基于云服务平台的日志获取方法、装置及系统 | |
KR20200048633A (ko) | 소프트웨어 자동 테스트 시스템 및 방법 | |
CN109032646B (zh) | 一种更新应用的方法、装置和系统 | |
CN101785295A (zh) | 用于大型ce设备群体的分层网络结构 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
AD01 | Patent right deemed abandoned | ||
AD01 | Patent right deemed abandoned |
Effective date of abandoning: 20171222 |