CN112579049A - 基于云平台的定制软件产品化管理方法及装置 - Google Patents
基于云平台的定制软件产品化管理方法及装置 Download PDFInfo
- Publication number
- CN112579049A CN112579049A CN201910943507.3A CN201910943507A CN112579049A CN 112579049 A CN112579049 A CN 112579049A CN 201910943507 A CN201910943507 A CN 201910943507A CN 112579049 A CN112579049 A CN 112579049A
- Authority
- CN
- China
- Prior art keywords
- software
- cloud platform
- service function
- module
- reference information
- 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
- 238000007726 management method Methods 0.000 title claims abstract description 85
- 238000000034 method Methods 0.000 claims abstract description 37
- 230000006870 function Effects 0.000 claims description 153
- 238000003860 storage Methods 0.000 claims description 12
- 230000008859 change Effects 0.000 claims description 11
- 238000011161 development Methods 0.000 claims description 10
- 238000012423 maintenance Methods 0.000 claims description 6
- 238000004891 communication Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 9
- 238000004590 computer program Methods 0.000 description 6
- 238000004519 manufacturing process Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000005012 migration Effects 0.000 description 3
- 238000013508 migration Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000000151 deposition Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供了基于云平台的定制软件产品化管理方法及装置,该方案先确定该软件的基准信息,并基于该软件要实现的业务功能确定该软件包含的各个业务功能模块。然后,基于该软件的基准信息将各个业务功能模块以分布式方式部署在云平台上。最后,在该云平台上将部署的各个业务功能模块编排为逻辑整体,得到目标软件。利用该方法既能够将已有的定制软件迁移至云平台上,基于该云平台对该软件进行后续的管理;又能够利用该方法基于云平台开发定制软件,并对开发后的软件实现全生命周期的产品化管理。
Description
技术领域
本发明属于软件技术领域,尤其涉及基于云平台的定制软件产品化管理方法及装置。
背景技术
随着国内软件管理水平与软件技术的升级,大型企业不再满足于一次性的软件定制开发,对这类软件的管理提出了更高的要求。而且,随着云平台工具的广泛应用,如何实现企业定制的软件无缝适应企业云平台或互联网云平台环境称为目前亟需解决的问题。
发明内容
有鉴于此,本发明的目的在于提供一种基于云平台的定制软件产品化管理方法及装置,以实现在云平台实现对企业的定制软件的全生命周期的管理,具体的技术方案如下:
第一方面,本发明提供了一种基于云平台的定制软件产品化管理方法,包括:
确定软件的基准信息,所述基准信息包括所述软件开发或运行时的基础信息;
基于所述软件要实现的业务功能,确定所述软件包含的各个业务功能模块;
依据所述基准信息在所述云平台上部署所述各个业务功能模块;
在所述云平台上将所述各个业务功能模块编排为逻辑整体得到目标软件;
基于所述云平台,对所述目标软件进行全生命周期的管理。
在第一方面的一种可能的实现方式中,所述软件为已有的定制软件,所述确定软件的基准信息,包括:
识别所述已有的定制软件的软件代码得到代码基准信息,所述代码基准信息包括所述已有的定制软件的代码构成及软件代码版本号;
识别所述已有的定制软件所依赖的中间件基准信息,所述中间件基准信息包括所述已有的定制软件所使用的中间件的类型和版本;
识别所述已有的定制软件所使用的数据基准信息,所述数据基准信息包括所述目标软件所使用的数据库的数据内容以及所使用的文件库的文件内容。
在第一方面的另一种可能的实现方式中,依据所述基准信息在所述云平台上部署所述各个业务功能模块,包括:
基于所述软件的基准信息及所述云平台的资源标准,在所述云平台上分别获得实现所述各个业务功能模块所对应的平台资源;
对于任意一个所述业务功能模块,在所述云平台上,利用该业务功能模块对应的平台资源构建该业务功能模块的内部架构,并在所述云平台上实现各个业务功能模块之间的互联互通。
在第一方面的另一种可能的实现方式中,在所述云平台上将所述各个业务功能模块编排为逻辑整体得到目标软件,包括:
依据所述各个业务功能模块之间的依赖关系,设定在所述各个业务功能模块之间的逻辑关系,得到所述目标软件。
在第一方面的另一种可能的实现方式中,基于所述云平台,对所述目标软件进行全生命周期的管理,包括:
基于所述云平台,对所述目标软件所包含的各个业务功能模块实现全生命周期的管理;
基于所述云平台,对所述目标软件整体实现全生命周期的管理。
在第一方面的另一种可能的实现方式中,基于所述云平台,对所述目标软件所包含的各个业务功能模块实现全生命周期的管理,包括:
基于所述云平台上的版本管理资源确定所述各个业务模块的唯一版本标识;
基于所述各个业务模块的唯一版本标识,以升级版本的方式记录各个业务模块的改动信息。
在第一方面的另一种可能的实现方式中,基于所述云平台,对所述目标软件整体实现全生命周期的管理,包括:
建立所述目标软件整体与编排后的环境及所述各个业务功能模块所依赖的镜像实例之间的关联关系;
当需要调整所述目标软件时,基于所述关联关系调整与该目标软件相关联的镜像实例,并对所述目标软件的各项信息进行全生命周期的管理。
第二方面,本发明还提供了一种基于云平台的定制软件产品化管理装置,包括:
基准信息确定模块,用于确定软件的基准信息,所述基准信息包括所述软件开发或运行时的基础信息;
业务功能确定模块,用于基于所述软件要实现的业务功能,确定所述软件包含的各个业务功能模块;
部署模块,用于依据所述基准信息在所述云平台上部署所述各个业务功能模块;
编排模块,用于在所述云平台上将所述各个业务功能模块编排为逻辑整体得到目标软件;
维护模块,用于基于所述云平台,对所述目标软件进行全生命周期的管理。
第三方面,本发明还提供了一种设备,包括:至少一个处理器,以及与处理器连接的至少一个存储器、总线;
其中,所述处理器、存储器通过所述总线完成相互间的通信;
所述处理器用于调用所述存储器中的程序指令,以执行第一方面任一种可能的实现方式所述的基于云平台的定制软件产品化管理方法。
第四方面,本发明还提供了一种存储介质,其上存储有程序,所述程序被处理器加载并执行时实现第一方面任一种可能的实现方式所述的基于云平台的定制软件产品化管理方法。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明提供的一种基于云平台的定制软件产品化管理方法的流程图;
图2是本发明提供的一种识别软件的基准信息的过程的流程图;
图3是本发明提供的一种将各个业务功能模块分布式部署在云平台上这一过程的流程图;
图4是本发明提供的另一种基于云平台的定制软件产品化管理方法的流程图;
图5是本发明提供的一种基于云平台的定制软件产品化管理装置的结构示意图;
图6是本发明提供的一种设备的结构示意图。
具体实施方式
随着云平台工具飞速发展,基于云平台的软件开发、管理称为必然趋势。而对于未基于云平台开发的软件,无法直接利用此类云平台进行管理,为了解决这个问题,本发明提供了一种基于云平台的定制软件产品化管理方法,利用云平台对该软件进行全生命周期的管理。
具体的,首先确定该软件的基准信息,基于该软件的业务功能,确定该软件包含的各个业务功能模块。然后,基于该软件的基准信息在云平台上部署各个业务功能模块。最后,在该云平台上将部署的各个业务功能模块编排为逻辑整体,得到目标软件。然后,实现基于该云平台对该目标软件进行全生命周期的管理。利用该方法既能够将已有的定制软件迁移至云平台上,基于该云平台对该软件进行后续的管理;又能够利用该方法基于云平台开发定制软件,并对开发后的软件实现全生命周期的产品化管理。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参见图1,示出了本发明提供的一种基于云平台的软件产品化管理方法的流程图,该方法应用于云平台,该平台可以是企业云平台(公有云平台或私有云平台)、工业互联网平台、PaaS平台等,该方法利用这些云平台加上的资源实现对软件的开发、运行、使用等全生命周期的管理服务。
如图1所示,该方法主要包括:
S110,确定软件的基准信息。
本文中的软件可以是任意一个已经开发完成企业定制软件,即已有的定制软件;或者,还可以是企业需要开发的定制软件,即待开发的定制软件。
软件的基准信息包括该软件在开发或运行时的基础信息,例如,该基础信息可以包括:代码基准信息、中间件基准信息及所使用的数据基准信息。云平台获得软件的这些基准信息之后才能进行后续的开发(或迁移)、维护和管理工作。
在本发明一种可能的实现方式中,对于已有的定制软件可以使用软件状态识别方法或基准标定方法确定该软件的基准信息。具体实施时,如图2所示,S110可以包括如下步骤:
S111,识别已有的定制软件的软件代码得到代码基准信息。
该代码基准信息可以包括该已有的定制软件的代码构成及软件代码版本号。例如,该已有的定制软件由几部分构成,每部分的代码是什么,该目标软件的版本号等。
S112,识别已有的定制软件所依赖的中间件基准信息。
该中间件基准信息包括已有的定制软件所使用的中间件的类型和版本;例如,该软件所使用的数据库、java运行环境(Java Runtime Environment,JRE)、消息队列等中间件的类型、版本。
S113,识别已有的定制软件所使用的数据基准信息。
该数据基准信息包括该软件所使用的数据库的数据内容以及所使用的文件库的文件内容。
此外,还需要根据不同软件的个性化情况确定需要识别的其它信息,其中,不同的软件所需要识别的信息也不同。例如,配置文件、所使用的浏览器或客户单、要对服务我或客户端做哪些特殊的配置等。
在本发明的另一种可能的实现方式中,对于待开发的软件,根据企业需求确定待开发软件的业务功能,并根据所要实现的业务功能确定开发该软件所使用的软件基准。
S120,基于该软件要实现的业务功能,确定该软件包含的各个业务功能模块。
对于已有的定制软件,依据该软件的技术架构和业务功能对该软件进行分解,得到与各个业务功能对应的业务功能模块。例如,将软件分解得到服务模块、界面模块、用户信息库、业务记录库等。不同的软件分解得到的业务功能模块也不同。
对于待开发的软件,依据企业提出的需求,确定待开发软件应该具有的业务功能,得到各个业务功能模块的架构。
S130,依据基准信息在云平台上部署各个业务功能模块。
对于已有的定制软件,将该软件分解成各个业务功能模块之后,再将各个业务功能模块分别迁移到云平台上,以便在云平台上对该软件进行后需的管理。
在本发明的一个实施例中,如图3所示,S130所执行的过程可以包括以下步骤:
S131,基于该软件的基准信息及该云平台的资源标准,在该云平台上分别获得实现所述各个业务功能模块所对应的平台资源。
对于已有的定制软件,首先在该云平台上寻找分解后的各个软件组件的“替代品”,其中,软件组件是指该目标软件所使用的中间组件,例如,数据库、JRE、消息队列中;“替代品”是指平台资源中与这些中间组件具有相同功能的资源。
例如,目标软件所使用的数据库是Oracle数据库,但该平台资源中无法提供Oracle数据库,能够提供MySQL数据库,此种情况下,可以利用云平台提供的MySQL数据库代替软件中的Oracle数据库。
对于待开发软件,确定能构实现各个业务功能模块所需的平台资源。
S132,对于任意一个业务功能模块,在所述云平台上,利用该业务功能模块对应的平台资源构建该业务功能模块的内部架构,并在所述云平台上实现各个业务功能模块之间的互联互通。
对于已有的定制软件,针对任意一个业务功能模块,将该业务功能模块按照该平台资源的规范和标准进行还原,即利用平台提供的各种资源实现该业务功能模块的内部架构,从外部来看,该业务功能模块的接口并无变化,但其内部结构已经完成平台化的融合。
例如,对于已有的定制软件中的服务模块,在原有的定制软件中该服务模块可能是一些与其它业务模块混合的代码;而迁移到云平台上后,可以使用该云平台上提供的服务网关、服务框架、服务管理等功能构件该服务模块,即将该服务模块融合到云平台中。
然后,在该平台上将各个迁移后的业务功能模块进行互联互通。
互联互通是指使各个业务功能模块之间进行协同工作。例如,通过多个业务功能模块之间的API进行远程调用,或者,还可以通过共享数据表的方式实现各个业务功能模块的协同。
对于待开发软件,利用云平台上与该业务功能模块所实现的功能相对应的平台资源构建该业务功能该模块,并在云平台上实现各个业务功能模块之间的互联互通。
S140,在云平台上将所述各个业务功能模块编排为逻辑整体,得到目标软件。
依据目标软件内所述各个业务功能模块之间的依赖关系,设定各个业务功能模块之间的逻辑关系,得到目标软件。
编排是指一次性自动执行多项任务,在本发明中,编排是指对云平台上的部署的各个业务功能模块进行组合、设定依赖关系等,即,将云平台上分布式部署的各个业务功能模块在逻辑上整合成一个整体。然后,利用整合后的各个业务功能模块按照设定的依赖关系依次执行,实现相应的功能。
例如,存款功能需要云平台上分别部署的存款申请模块、资金清点模块、资金入账模块、账户同步模块和单据生成模块这五个业务模块实现,而这五个业务模块在云平台上是分部部署的,即每个业务模块都是相互独立的,要实现存款功能则需要设定这五个业务模块之间的依赖关系,例如,这五个业务模块之间的先后执行顺序(即依赖关系)依次是:存款申请模块→资金清点模块→资金入账模块→账户同步模块→单据生成模块;按照此顺序依次执行后完成往某个账户内存款的功能。
需要说明的是,可以按照该软件的业务需求,重新将云平台上的业务功能模块组合成一个逻辑整体。
例如,已有的定制软件A被分解为1、2、3、4、5这五个业务功能模块,将这几个业务功能模块迁移至平台后,这五部分在平台上分布式部署,即松耦合。通过编排,在逻辑上将这五部分整合成一个逻辑整体。例如,利用3个1、1个2、2个3、2个4、1个5重新整合得到软件A。
S150,基于该云平台,对目标软件进行全生命周期的管理。
其中,对软件的全生命周期的管理包括两个层级的管理,一个层级是对软件内部,以业务功能模块为单位,基于该云平台的资源及服务对各个业务功能模块实现全生命周期的管理。
另一个层级的管理是指对目标软件作为逻辑整体,基于该云平台的资源及服务对软件整体实现全生命周期的管理。
需要说明的是,全生命周期是指软件的开发、运行、使用、升级或回滚、废弃等全周期。当然,对于已有的定制软件,其全生命周期包括运行、使用、废弃等。
本实施例提供的基于云平台的定制软件产品化管理方法,确定该软件的基准信息,并基于该软件要实现的业务功能确定该软件包含的各个业务功能模块。然后,基于该软件的基准信息将各个业务功能模块以分布式方式部署在云平台上。最后,在该云平台上将部署的各个业务功能模块编排为逻辑整体,得到目标软件。利用该方法既能够将已有的定制软件迁移至云平台上,基于该云平台对该软件进行后续的管理;又能够利用该方法基于云平台开发定制软件,并对开发后的软件实现全生命周期的产品化管理。
请参见图4,示出了本发明提供的另一种基于云平台的定制软件产品化管理方法的流程图,本实施例将着重阐述对云平台上的目标软件的全生命周期的产品化管理过程,如图4所示,该方法在图1所示实施例的S110~S140基础上还还包括以下步骤:
S210,基于云平台上的版本管理资源确定所述各个业务模块的唯一版本标识。
S220,基于各个业务模块的唯一版本标识,以升级版本的方式记录各个业务模块的改动信息。
对于云平台上的目标软件,以业务功能模块为单位进行维护和管理,并在云平台上记录每个业务功能模块的改动信息。
利用云平台上的版本管理功能标定该目标软件包含的每个业务功能模块的唯一版本标识。然后,以业务功能模块为单位对该软件进行维护和管理。
例如,云平台提供的版本管理功能可以包括代码管理、中间件版本、镜像版本等。
基于各业务功能模块的每次变化(通常是代码修改)都会被云平台记录,具体的,以版本升级的方式修改,不会直接在原代码上修改。
需要说明的是,业务功能模块的变化可以是业务驱动,或者,还可以是平台驱动。其中,业务驱动是指由于业务的变化导致软件代码必须做出相应的修改;而平台驱动是指云平台技术的变化而导致软件代码必须进行适应性修改。例如,云平台要求软件必须达到一定安全标准,这就要求软件进行优化升级以满足安全要求。
S230,建立目标软件的逻辑整体与编排后的环境及各个业务功能模块所依赖的镜像实例之间的关联关系。
基于平台对迁移至平台上的目标软件的各项信息进行全生命周期的产品化管理。
利用平台的环境编排能力,将迁移至该平台上的各个业务功能模块编排为逻辑上的整体,但实际上各个业务功能模块是相互独立且各自独立运行,并不是代码层级的整体。
然后,将编排后的运行环境与各业务功能模块所依赖的镜像实例建立关联。
S240,当需要调整目标软件时,基于关联关系调整与该目标软件相关联的镜像实例,并对目标软件的各项信息进行全生命周期的管理。
在云平台中,每个业务功能模块通常以独立的镜像实例管理,每个版本都可以具有相应的镜像实例。当需要部署使用某个业务功能模块时,就选一个所需要的版本的镜像实例,来生成一个运行中的环境。
例如,当前运行中的软件A是由x,y,z三个运行中的部件构成,而x是用X镜像生成的,y是用Y镜像生成的,z是由Z镜像生成的。如果要重新部署或调整软件A时,可能会在XYZ这几个镜像上进行调整。
利用云平台对组件、应用的镜像、运行状态、日志汇集、弹性伸缩、版本升级(或回退)等全生命周期的产品化管理。
本实施例提供的基于云平台的定制软件产品化管理方法,利用该方法能够将已有的定制软件迁移至云平台并与平台进行融合后,以及,基于云平台开发新的软件。同时,利用云平台上的资源及管理服务对该云平台上的软件实现全生命周期的产品化管理。
另一方面,本发明还提供了基于云平台的定制软件产品化管理装置
请参见图5,示出了本发明提供的基于云平台的定制软件产品化管理装置结构示意图,如图所示该装置可以包括:基准信息确定模块110、业务功能确定模块120、部署模块130、编排模块140和维护模块150。
基准信息确定模块110,用于确定软件的基准信息,所述基准信息包括所述软件开发或运行时的基础信息。
对于已有的定制软件,该基准信息确定模块110具体用于:
识别已有的定制软件的软件代码得到代码基准信息,代码基准信息包括已有的定制软件的代码构成及软件代码版本号;
识别已有的定制软件所依赖的中间件基准信息,中间件基准信息包括已有的定制软件所使用的中间件的类型和版本;
识别已有的定制软件所使用的数据基准信息,数据基准信息包括目标软件所使用的数据库的数据内容以及所使用的文件库的文件内容。
业务功能确定模块120,用于基于所述软件要实现的业务功能,确定所述软件包含的各个业务功能模块。
部署模块130,用于依据所述基准信息在所述云平台上部署所述各个业务功能模块。
在本发明一种可能的实现方式中,部署模块130具体用于:
基于所述软件的基准信息及所述云平台的资源标准,在所述云平台上分别获得实现所述各个业务功能模块所对应的平台资源;
对于任意一个所述业务功能模块,在所述云平台上,利用该业务功能模块对应的平台资源构建该业务功能模块的内部架构,并在所述云平台上实现各个业务功能模块之间的互联互通。
编排模块140,用于在所述云平台上将所述各个业务功能模块编排为逻辑整体得到目标软件。
在本发明一种可能的实现方式中,编排模块140具体用于依据所述各个业务功能模块之间的依赖关系,设定在所述各个业务功能模块之间的逻辑关系,得到所述目标软件。
维护模块150,用于基于所述云平台,对所述目标软件进行全生命周期的管理。
其中,对软件的全生命周期的管理包括两个层级的管理,一个层级是对软件内部,以业务功能模块为单位,基于该云平台的资源及服务对各个业务功能模块实现全生命周期的管理。另一个层级的管理是指对目标软件作为逻辑整体,基于该云平台的资源及服务对软件整体实现全生命周期的管理。
在一种可能的实现方式中,基于云平台对各个业务功能模块实现全生命周期的管理的过程具体可以包括:
基于所述云平台上的版本管理资源确定所述各个业务模块的唯一版本标识;
基于所述各个业务模块的唯一版本标识,以升级版本的方式记录各个业务模块的改动信息。
在一种可能的实现方式中,基于云平台对所述目标软件整体实现全生命周期的管理的过程具体可以包括:
建立所述目标软件整体与编排后的环境及所述各个业务功能模块所依赖的镜像实例之间的关联关系;
当需要调整所述目标软件时,基于所述关联关系调整与该目标软件相关联的镜像实例,并对所述目标软件的各项信息进行全生命周期的管理。
本实施例提供的基于云平台的定制软件产品化管理装置,确定该软件的基准信息,并基于该软件要实现的业务功能确定该软件包含的各个业务功能模块。然后,基于该软件的基准信息将各个业务功能模块以分布式方式部署在云平台上。最后,在该云平台上将部署的各个业务功能模块编排为逻辑整体,得到目标软件。利用该方法既能够将已有的定制软件迁移至云平台上,基于该云平台对该软件进行后续的管理;又能够利用该方法基于云平台开发定制软件,并对开发后的软件实现全生命周期的产品化管理。
所述基于云平台的定制软件产品化管理装置包括处理器和存储器,上述基准信息确定模块110、业务功能确定模块120、部署模块130、编排模块140和维护模块150等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来实现将已有的定制软件迁移至云平台并与平台进行融合后,以及,基于云平台开发新的软件。同时,利用云平台上的资源及管理服务对该云平台上的软件实现全生命周期的产品化管理。
本发明实施例提供了一种存储介质,其上存储有程序,该程序被处理器执行时实现所述基于云平台的定制软件产品化管理方法。
本发明实施例提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行所述基于云平台的定制软件产品化管理方法。
本发明实施例提供了一种设备,如图6所示,该设备包括至少一个处理器210、以及与处理器210连接的至少一个存储器220、总线230;其中,处理器210、存储器220通过总线230完成相互间的通信;处理器210用于调用存储器220中的程序指令,以执行上述的基于云平台的定制软件产品化管理方法。本文中的设备可以是服务器、PC、PAD、手机等。
本申请还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序:
确定软件的基准信息,所述基准信息包括所述软件开发或运行时的基础信息;
基于所述软件要实现的业务功能,确定所述软件包含的各个业务功能模块;
依据所述基准信息在所述云平台上部署所述各个业务功能模块;
在所述云平台上将所述各个业务功能模块编排为逻辑整体得到目标软件;
基于所述云平台,对所述目标软件进行全生命周期的管理。
在一种可能的实现方式中,所述软件为已有的定制软件,所述确定软件的基准信息,包括:
识别所述已有的定制软件的软件代码得到代码基准信息,所述代码基准信息包括所述已有的定制软件的代码构成及软件代码版本号;
识别所述已有的定制软件所依赖的中间件基准信息,所述中间件基准信息包括所述已有的定制软件所使用的中间件的类型和版本;
识别所述已有的定制软件所使用的数据基准信息,所述数据基准信息包括所述目标软件所使用的数据库的数据内容以及所使用的文件库的文件内容。
在另一种可能的实现方式中,依据所述基准信息在所述云平台上部署所述各个业务功能模块,包括:
基于所述软件的基准信息及所述云平台的资源标准,在所述云平台上分别获得实现所述各个业务功能模块所对应的平台资源;
对于任意一个所述业务功能模块,在所述云平台上,利用该业务功能模块对应的平台资源构建该业务功能模块的内部架构,并在所述云平台上实现各个业务功能模块之间的互联互通。
在另一种可能的实现方式中,在所述云平台上将所述各个业务功能模块编排为逻辑整体得到目标软件,包括:
依据所述各个业务功能模块之间的依赖关系,设定在所述各个业务功能模块之间的逻辑关系,得到所述目标软件。
在第一方面的另一种可能的实现方式中,基于所述云平台,对所述目标软件进行全生命周期的管理,包括:
基于所述云平台,对所述目标软件所包含的各个业务功能模块实现全生命周期的管理;
基于所述云平台,对所述目标软件整体实现全生命周期的管理。
在另一种可能的实现方式中,基于所述云平台,对所述目标软件所包含的各个业务功能模块实现全生命周期的管理,包括:
基于所述云平台上的版本管理资源确定所述各个业务模块的唯一版本标识;
基于所述各个业务模块的唯一版本标识,以升级版本的方式记录各个业务模块的改动信息。
在另一种可能的实现方式中,基于所述云平台,对所述目标软件整体实现全生命周期的管理,包括:
建立所述目标软件整体与编排后的环境及所述各个业务功能模块所依赖的镜像实例之间的关联关系;
当需要调整所述目标软件时,基于所述关联关系调整与该目标软件相关联的镜像实例,并对所述目标软件的各项信息进行全生命周期的管理。
本申请是参照根据本申请实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
在一个典型的配置中,设备包括一个或多个处理器(CPU)、存储器和总线。设备还可以包括输入/输出接口、网络接口等。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、***或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (10)
1.一种基于云平台的定制软件产品化管理方法,其特征在于,包括:
确定软件的基准信息,所述基准信息包括所述软件开发或运行时的基础信息;
基于所述软件要实现的业务功能,确定所述软件包含的各个业务功能模块;
依据所述基准信息在所述云平台上部署所述各个业务功能模块;
在所述云平台上将所述各个业务功能模块编排为逻辑整体得到目标软件;
基于所述云平台,对所述目标软件进行全生命周期的管理。
2.根据权利要求1所述的方法,其特征在于,所述软件为已有的定制软件,所述确定软件的基准信息,包括:
识别所述已有的定制软件的软件代码得到代码基准信息,所述代码基准信息包括所述已有的定制软件的代码构成及软件代码版本号;
识别所述已有的定制软件所依赖的中间件基准信息,所述中间件基准信息包括所述已有的定制软件所使用的中间件的类型和版本;
识别所述已有的定制软件所使用的数据基准信息,所述数据基准信息包括所述目标软件所使用的数据库的数据内容以及所使用的文件库的文件内容。
3.根据权利要求1或2所述的方法,其特征在于,依据所述基准信息在所述云平台上部署所述各个业务功能模块,包括:
基于所述软件的基准信息及所述云平台的资源标准,在所述云平台上分别获得实现所述各个业务功能模块所对应的平台资源;
对于任意一个所述业务功能模块,在所述云平台上,利用该业务功能模块对应的平台资源构建该业务功能模块的内部架构,并在所述云平台上实现各个业务功能模块之间的互联互通。
4.根据权利要求3所述的方法,其特征在于,在所述云平台上将所述各个业务功能模块编排为逻辑整体得到目标软件,包括:
依据所述各个业务功能模块之间的依赖关系,设定在所述各个业务功能模块之间的逻辑关系,得到所述目标软件。
5.根据权利要求1所述的方法,其特征在于,基于所述云平台,对所述目标软件进行全生命周期的管理,包括:
基于所述云平台,对所述目标软件所包含的各个业务功能模块实现全生命周期的管理;
基于所述云平台,对所述目标软件整体实现全生命周期的管理。
6.根据权利要求5所述的方法,其特征在于,基于所述云平台,对所述目标软件所包含的各个业务功能模块实现全生命周期的管理,包括:
基于所述云平台上的版本管理资源确定所述各个业务模块的唯一版本标识;
基于所述各个业务模块的唯一版本标识,以升级版本的方式记录各个业务模块的改动信息。
7.根据权利要求5所述的方法,其特征在于,基于所述云平台,对所述目标软件整体实现全生命周期的管理,包括:
建立所述目标软件整体与编排后的环境及所述各个业务功能模块所依赖的镜像实例之间的关联关系;
当需要调整所述目标软件时,基于所述关联关系调整与该目标软件相关联的镜像实例,并对所述目标软件的各项信息进行全生命周期的管理。
8.一种基于云平台的定制软件产品化管理装置,其特征在于,包括:
基准信息确定模块,用于确定软件的基准信息,所述基准信息包括所述软件开发或运行时的基础信息;
业务功能确定模块,用于基于所述软件要实现的业务功能,确定所述软件包含的各个业务功能模块;
部署模块,用于依据所述基准信息在所述云平台上部署所述各个业务功能模块;
编排模块,用于在所述云平台上将所述各个业务功能模块编排为逻辑整体得到目标软件;
维护模块,用于基于所述云平台,对所述目标软件进行全生命周期的管理。
9.一种设备,其特征在于,包括:至少一个处理器,以及与处理器连接的至少一个存储器、总线;
其中,所述处理器、存储器通过所述总线完成相互间的通信;
所述处理器用于调用所述存储器中的程序指令,以执行权利要求1-7任一项所述的基于云平台的定制软件产品化管理方法。
10.一种存储介质,其上存储有程序,其特征在于,所述程序被处理器加载并执行时实现权利要求1-7任一项所述的基于云平台的定制软件产品化管理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910943507.3A CN112579049A (zh) | 2019-09-30 | 2019-09-30 | 基于云平台的定制软件产品化管理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910943507.3A CN112579049A (zh) | 2019-09-30 | 2019-09-30 | 基于云平台的定制软件产品化管理方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112579049A true CN112579049A (zh) | 2021-03-30 |
Family
ID=75116577
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910943507.3A Pending CN112579049A (zh) | 2019-09-30 | 2019-09-30 | 基于云平台的定制软件产品化管理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112579049A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113641334A (zh) * | 2021-06-28 | 2021-11-12 | 深圳拔越软件有限公司 | 一种软件定制方法及*** |
CN115904478A (zh) * | 2022-12-19 | 2023-04-04 | 安超云软件有限公司 | 云平台资源管理方法、***及电子设备 |
CN116028101A (zh) * | 2022-12-26 | 2023-04-28 | 郑州云智信安安全技术有限公司 | 基于组件特征类别编排调取的方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104820602A (zh) * | 2015-05-18 | 2015-08-05 | 北京瑞星信息技术有限公司 | 软件包发布方法、装置及*** |
US20150324182A1 (en) * | 2014-05-09 | 2015-11-12 | International Business Machines Corporation | Automated deployment of a private modular cloud-computing environment |
CN106355259A (zh) * | 2016-08-26 | 2017-01-25 | 上海鸣泰信息科技股份有限公司 | 一种基于云平台的移动营销方法及*** |
CN107688464A (zh) * | 2017-06-28 | 2018-02-13 | 上海壹账通金融科技有限公司 | 软件定制服务器、方法及计算机可读存储介质 |
CN109933329A (zh) * | 2019-03-01 | 2019-06-25 | 深圳微品致远信息科技有限公司 | 一种软件产品通过云端进行智能部署运维的方法 |
-
2019
- 2019-09-30 CN CN201910943507.3A patent/CN112579049A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150324182A1 (en) * | 2014-05-09 | 2015-11-12 | International Business Machines Corporation | Automated deployment of a private modular cloud-computing environment |
CN104820602A (zh) * | 2015-05-18 | 2015-08-05 | 北京瑞星信息技术有限公司 | 软件包发布方法、装置及*** |
CN106355259A (zh) * | 2016-08-26 | 2017-01-25 | 上海鸣泰信息科技股份有限公司 | 一种基于云平台的移动营销方法及*** |
CN107688464A (zh) * | 2017-06-28 | 2018-02-13 | 上海壹账通金融科技有限公司 | 软件定制服务器、方法及计算机可读存储介质 |
CN109933329A (zh) * | 2019-03-01 | 2019-06-25 | 深圳微品致远信息科技有限公司 | 一种软件产品通过云端进行智能部署运维的方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113641334A (zh) * | 2021-06-28 | 2021-11-12 | 深圳拔越软件有限公司 | 一种软件定制方法及*** |
CN115904478A (zh) * | 2022-12-19 | 2023-04-04 | 安超云软件有限公司 | 云平台资源管理方法、***及电子设备 |
CN115904478B (zh) * | 2022-12-19 | 2023-08-22 | 安超云软件有限公司 | 云平台资源管理方法、***及电子设备 |
CN116028101A (zh) * | 2022-12-26 | 2023-04-28 | 郑州云智信安安全技术有限公司 | 基于组件特征类别编排调取的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11178207B2 (en) | Software version control without affecting a deployed container | |
US9047160B2 (en) | Designing and building virtual images using semantically rich composable software image bundles | |
US20170277524A1 (en) | Dynamic container deployment with parallel conditional layers | |
US9535754B1 (en) | Dynamic provisioning of computing resources | |
CN111176818B (zh) | 分布式预测的方法、装置、***、电子设备及存储介质 | |
US11182206B2 (en) | Event proxies for functions-as-a-service (FAAS) infrastructures | |
US10594800B2 (en) | Platform runtime abstraction | |
US10585785B2 (en) | Preservation of modifications after overlay removal from a container | |
US10305752B2 (en) | Automatically orchestrating the compliance of cloud services to selected standards and policies | |
CN113434158B (zh) | 一种大数据组件的自定义管理方法、装置、设备及介质 | |
CN112579049A (zh) | 基于云平台的定制软件产品化管理方法及装置 | |
US9542173B2 (en) | Dependency handling for software extensions | |
CN111475227A (zh) | 业务插件加载实现方法、装置和终端设备 | |
US11750451B2 (en) | Batch manager for complex workflows | |
CN116028163A (zh) | 一种容器组的动态链接库调度方法、装置及存储介质 | |
US9760364B2 (en) | Checks for software extensions | |
CN117008934A (zh) | 自动制作信创操作***镜像的方法、装置、设备及介质 | |
CN114791884A (zh) | 测试环境的构建方法、装置、存储介质及电子设备 | |
CN117859309A (zh) | 自动选择在其上执行任务的节点 | |
CN113867776A (zh) | 中台应用的发布方法、装置、电子设备和存储介质 | |
US12039473B2 (en) | Software development project infrastructure builder tool | |
Sello | Zamperla Analytics Service: design and deployment of a microservice architecture with Kubernetes | |
CN116107688A (zh) | 部署应用的方法、装置、设备及介质 | |
CN118034709A (zh) | 云服务器的代理程序的部署方法、安装方法和装置 | |
CN113986207A (zh) | 一种软件架构生成、调用方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |