一种软件修改方法、装置及电子设备与流程

未命名 07-14 阅读:73 评论:0


1.本技术涉及计算机技术领域,具体涉及一种软件修改方法,本技术同时涉及一种软件修改装置、电子设备及计算机存储介质。本技术同时涉及一种软件产品开发的方法、装置、电子设备及计算机存储介质。


背景技术:

2.现有技术中,软件提供方构建用于完成功能逻辑的标准软件,供软件使用方使用。然而,如果客户提出针对软件的使用需求,需要对软件进行修改处理的情况下,通常由软件提供方对软件进行修改处理,以满足客户的使用需求。此种方式使得软件的修改过程繁琐,且软件的修改成本偏高。
3.因此,如何降低软件的修改成本以及提升软件的修改效率是需要解决的问题。


技术实现要素:

4.本技术实施例提供一种软件修改方法,以降低软件的修改成本以及提升软件的修改效率。本技术实施例同时涉及一种软件修改装置、电子设备及计算机存储介质。本技术实施例同时涉及一种软件产品开发的方法、装置、电子设备及计算机存储介质。
5.本技术实施例提供一种软件修改方法,包括:确定第一软件中需要修改处理的目标功能,所述第一软件为软件提供方提供给软件使用方的、用于实现目标功能逻辑的软件应用实例,所述第一软件的目标功能由所述软件使用方根据目标修改方式进行修改处理;从所述第一软件预先设置的多个候选修改方式中,确定能够修改所述目标功能、且修改复杂度数据满足预设要求的目标修改方式;基于所述目标修改方式,对所述第一软件的目标功能进行修改处理,获得第二软件,其中,所述第二软件为所述软件使用方根据修改处理后的目标功能实现所述目标功能逻辑的软件应用实例。
6.可选的,所述确定第一软件中需要修改处理的目标功能,包括:根据所述软件使用方实现所述目标功能逻辑时的使用需求,确定第一软件中需要修改处理的目标功能。
7.可选的,所述从所述第一软件预先设置的多个候选修改方式中,确定能够修改所述目标功能、且修改复杂度数据满足预设要求的目标修改方式,包括:根据修改方式确定模型,从所述第一软件预先设置的多个候选修改方式中,确定能够修改所述目标功能、且修改复杂度数据满足预设要求的目标修改方式;其中,所述修改方式确定模型用于根据所述目标功能、功能与修改方式之间的匹配度、以及修改功能的多个修改方式对应的修改复杂度数据,确定针对所述目标功能的目标修改方式。
8.可选的,所述修改方式确定模型中包括用于判断所述目标功能是否支持通过多个候选修改方式进行修改处理的预设判断顺序;所述根据修改方式确定模型,从所述第一软件预先设置的多个候选修改方式中,确定能够修改所述目标功能、且修改复杂度数据满足预设要求的目标修改方式,包括:根据所述预设判断顺序,从所述第一软件预先设置的多个候选修改方式中,确定能够修改所述目标功能、且修改复杂度数据满足预设要求的目标修
改方式。
9.可选的,所述根据所述预设判断顺序,从所述第一软件预先设置的多个候选修改方式中,确定能够修改所述目标功能、且修改复杂度数据满足预设要求的目标修改方式,包括:判断所述多个候选修改方式中是否包含配置修改方式,如果包含,则判断所述目标功能是否支持通过配置修改方式进行修改处理;如果所述目标功能支持通过配置修改方式进行修改处理,则将所述配置修改方式确定为所述软件使用方修改所述目标功能的目标修改方式。
10.可选的,还包括:如果所述目标功能不支持通过配置修改方式进行修改处理,则判断所述多个候选修改方式中是否包含低代码修改方式,如果包含,则判断所述目标功能是否支持通过低代码修改方式进行修改处理;如果所述目标功能支持通过低代码修改方式进行修改处理,则将所述低代码修改方式确定为所述软件使用方修改所述目标功能的目标修改方式。
11.可选的,还包括:如果所述目标功能不支持通过低代码修改方式进行修改处理,则判断所述多个候选修改方式中是否包含服务扩展接口修改方式,如果包含,则判断所述目标功能是否支持通过服务扩展接口修改方式进行修改处理;如果所述目标功能支持通过服务扩展接口修改方式进行修改处理,则将所述服务扩展接口修改方式确定为所述软件使用方修改所述目标功能的目标修改方式。
12.可选的,还包括:如果所述目标功能不支持通过服务扩展接口修改方式进行修改处理,则向所述软件提供方发送用于对所述第一软件的目标功能进行修改处理的请求消息。
13.可选的,所述根据修改方式确定模型,从所述第一软件预先设置的多个候选修改方式中,确定能够修改所述目标功能、且修改复杂度数据满足预设要求的目标修改方式,包括:所述修改方式确定模型从所述第一软件预先设置的多个候选修改方式中,确定可以用于修改所述目标功能的多个第一修改方式,构建针对所述目标功能的第一修改方式集;从所述第一修改方式集中确定能够修改所述目标功能、且修改复杂度数据满足预设要求的目标修改方式。
14.可选的,所述从所述第一修改方式集中确定能够修改所述目标功能、且修改复杂度数据满足预设要求的目标修改方式,包括:获取所述第一修改方式集中多个第一修改方式分别对所述目标功能进行修改处理的修改复杂度数据;根据多个第一修改方式分别对应的修改复杂度数据,对所述多个第一修改方式按照修改复杂度数据由小到大的排序规则进行排序;从排序后的第一修改方式列表中确定针对目标功能的目标修改方式,所述目标修改方式的修改复杂度数据小于所述第一修改方式集中剩余第一修改方式分别对应的修改复杂度数据,所述剩余第一修改方式为所述第一修改方式集中除所述目标修改方式之外的第一修改方式。
15.可选的,所述获取所述第一修改方式集中多个第一修改方式分别对所述目标功能进行修改处理的修改复杂度数据,包括:根据所述修改方式确定模型预先设置的多个候选修改方式分别对应的修改复杂度等级,确定多个第一修改方式分别对应的修改复杂度等级;根据所述多个第一修改方式分别对应的修改复杂度等级,确定多个第一修改方式分别对所述目标功能进行修改处理的修改复杂度数据。
16.本技术实施例还提供一种软件修改装置,包括:第一确定单元,用于确定第一软件中需要修改处理的目标功能,所述第一软件为软件提供方提供给软件使用方的、用于实现目标功能逻辑的软件应用实例,所述第一软件的目标功能由所述软件使用方根据目标修改方式进行修改处理;第二确定单元,用于从所述第一软件预先设置的多个候选修改方式中,确定能够修改所述目标功能、且修改复杂度数据满足预设要求的目标修改方式;获得单元,用于基于所述目标修改方式,对所述第一软件的目标功能进行修改处理,获得第二软件,其中,所述第二软件为所述软件使用方根据修改处理后的目标功能实现所述目标功能逻辑的软件应用实例。
17.本技术实施例还提供一种软件产品开发的方法,包括:接收软件产品开发的请求;将所述软件产品分解为实现不同功能的能力;针对每一种能力,确定其实现方式,并在至少一种实现方式中,预先定义多个候选修改方式,作为软件消费方根据其实际需要可选择的修改方式;通过确定的实现方式进行代码实现,并将各个实现方式与所述软件产品关联;其中,所述候选修改方式至少包括参数配置中多参数枚举候选、流程编排或页面编排,以及服务扩展选择中的一种。
18.本技术实施例还提供一种软件产品开发的装置,包括:接收单元,用于接收软件产品开发的请求;分解单元,用于将所述软件产品分解为实现不同功能的能力;定义单元,用于针对每一种能力,确定其实现方式,并在至少一种实现方式中,预先定义多个候选修改方式,作为软件使用方根据其实际需要可选择的修改方式;代码实现单元,用于通过确定的实现方式进行代码实现,并将各个实现方式与所述软件产品关联;其中,所述候选修改方式至少包括参数配置中多参数枚举候选、流程编排或页面编排、以及服务扩展选择中的一种。
19.本技术实施例还提供一种电子设备,所述电子设备包括处理器和存储器;所述存储器中存储有计算机程序,所述处理器运行所述计算机程序后,执行上述方法。
20.本技术实施例还提供一种计算机存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序被处理器运行后,执行上述方法。
21.与现有技术相比,本技术实施例具有如下优点:
22.本技术实施例提供一种软件修改方法,包括:确定第一软件中需要修改处理的目标功能,所述第一软件为软件提供方提供给软件使用方的、用于实现目标功能逻辑的软件应用实例,所述第一软件的目标功能由所述软件使用方根据目标修改方式进行修改处理;从所述第一软件预先设置的多个候选修改方式中,确定能够修改所述目标功能、且修改复杂度数据满足预设要求的目标修改方式;基于所述目标修改方式,对所述第一软件的目标功能进行修改处理,获得第二软件,其中,所述第二软件为所述软件使用方根据修改处理后的目标功能实现所述目标功能逻辑的软件应用实例。
23.上述方法,软件使用方确定软件提供方提供的第一软件中存在需要修改的目标功能后,从第一软件预先设置的多个候选修改方式中、确定可以修改目标功能、且修改复杂度数据满足预设要求的目标修改方式,然后根据目标修改方式对目标功能进行修改处理,获得可以在软件使用方使用的用于实现目标功能逻辑的软件应用实例。上述过程无需软件提供方对需要修改的目标功能进行修改处理后,将修改完成的软件返回给软件使用方,而是由软件使用方确定需要修改的目标功能,修改目标功能的目标修改方式,以及根据目标修改方式对目标功能进行修改处理。此种方式降低了软件的修改成本,提升了软件的修改效
率。
附图说明
24.图1为现有技术中软件修改处理的示意图。
25.图2为本技术实施例提供的软件修改方法的应用场景示意图。
26.图3为本技术实施例提供的软件使用方针对软件修改处理的场景示意图。
27.图4为本技术实施例提供的软件提供方构建的第一软件的逻辑框架图。
28.图5为本技术实施例提供的软件提供方构建第一软件的流程示意图。
29.图6为本技术实施例提供的软件使用方针对第一软件进行流程编排处理的场景示意图。
30.图7为本技术实施第一实施例提供的一种软件修改方法的流程图。
31.图8为本技术第二实施例提供的一种软件修改装置的示意图。
32.图9为本技术第三实施例提供的一种软件产品开发的方法的流程图。
33.图10为本技术第四实施例提供的一种软件产品开发的装置的示意图。
34.图11为本技术第三实施例提供的软件开发阶段对能力实现方式预设候选修改方式的第一场景图。
35.图12为本技术第三实施例提供的软件开发阶段对能力实现方式预设候选修改方式的第二场景图。
36.图13为本技术第五实施例中提供的一种电子设备的示意图。
具体实施方式
37.在下面的描述中阐述了很多具体细节以便于充分理解本技术。但是本技术能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本技术内涵的情况下做类似推广,因此本技术不受下面公开的具体实施的限制。
38.本技术中使用的术语是仅仅出于对特定实施例描述的目的,而非旨在限制本技术。在本技术中和所附权利要求书中所使用的描述方式例如:“一种”、“第一”、和“第二”等,并非对数量上的限定或先后顺序上的限定,而是用来将同一类型的信息彼此区分。
39.本技术实施例提供一种软件修改方法。本技术同时涉及一种软件修改装置、电子设备及计算机存储介质。本技术实施例还同时涉及一种软件开发方法、装置、电子设备及计算机存储介质。在下面的实施例中逐一进行详细说明。
40.为了便于理解本技术实施例提供的软件修改方法及装置,在介绍本技术实施例之前,先对本技术实施例的背景进行介绍。
41.现有技术中,软件提供方构建用于完成功能逻辑的标准软件,供软件使用方使用。然而,如果客户提出针对软件的使用需求,需要对软件进行修改处理的情况下,通常由软件提供方对软件进行修改处理,以满足客户的使用需求。此种方式使得软件的修改过程繁琐,且软件的修改成本偏高。
42.例如,请参考图1,其为现有技术中软件修改处理的示意图。在图1中,软件使用方在标准软件的使用过程中,为了满足软件使用方的具体场景特点的使用需求,会对标准软件的一个或者多个功能进行自定义修改处理。为了实现对标准软件的功能的自定义修改,
现有技术是判断该软件是否支持通过修改配置参数对功能进行修改处理,以实现软件使用方的使用需求。如果不支持,则通过软件提供方对标准软件进行编码处理,然后将处理后的符合该软件使用方使用需求的软件,提供给软件使用方进行使用。
43.再例如,平台为多个软件使用方提供可以实现服务不同功能逻辑的软件,不同软件使用方的需求不同,如,在供应链平台中,需支撑商家、物流等众多行业,且不同行业的行业需求不同,业务场景复杂,因此,对于没有软件使用方对软件的修改需求,都需要平台对该软件针对该软件使用方的修改需求进行修改,并提供给该软件使用方修改后的软件。该过程对于平台的软件开发能力要求高,然而平台开发资源的限制导致为软件使用方提供软件的能力受到限制。
44.因此,如何降低软件的修改成本以及提升软件的修改效率是需要解决的问题。
45.本领域技术人员可以了解现有技术存在的问题,接下来对本技术实施例提供的软件产品开发的方法的应用场景和本技术实施例的软件修改方法的应用场景进行详细说明。
46.首先对本技术实施例提供的软件产品开发的方法的应用场景进行详细说明。该软件产品开发的方法可以应用于软件产品开发过程中,为软件产品的多个能力的实现方式预先定义多种候选修改方式的应用场景。
47.具体的,软件开发过程中,软件提供方接收到软件产品开发的请求,根据该请求,获取该软件产品需要实现的功能逻辑。为了使得开发完成的软件产品可以实现该功能逻辑,在开发过程中需要为软件产品定义多个实现不同功能的能力,所述多个实现不同功能的能力共同完成软件所需实现的功能逻辑。
48.例如,开发一种货品管理软件,其实现的功能逻辑为货品管理,为了实现货品管理功能,需要为该软件产品定义多个实现不同功能的能力,例如,货品编辑能力,货品查询能力,货品审核能力,货品发布能力,货品日志能力,等等。
49.因此,接收到软件产品开发的请求,将软件产品分解为实现不同功能的能力,对每一种能力,确定其实现方式。其中,每种能力的实现方式可以是指实现该能力所需要的组件集合。具体的,实现方式可以包括如下至少一种组件:配置,流程,页面,服务,消息,任务。
50.例如,实现货品编辑能力需要的实现方式包括:参数配置,用于编辑货品信息的页面,用于填充货品信息的消息,以及用于提示待编辑货品信息的任务。
51.其中,对于至少一种实现方式,本技术实施例预先定义了多个候选修改方式,作为软件使用方根据其实际需要可选择的修改方式。其中,候选修改方式至少包括参数配置中多参数枚举候选、流程编排或页面编排,以及服务扩展选择中的一种。
52.本技术实施例在软件产品开发阶段为每种实现方式预先定义了多个候选修改方式,完成开发的软件产品提供给软件使用方使用时,软件使用方可以根据自身场景特点,对软件的部分功能根据预先设置的候选修改方式选择目标修改方式,对软件的部分功能进行修改处理。
53.以上即为软件产品的开发方法的场景实施例的介绍,以下描述软件修改方法的场景实施例的介绍。
54.本技术实施例提供的软件修改方法可以应用于平台与软件使用方之间对软件的使用需求的应用场景。例如,平台提供可以多个实现不同功能逻辑的标准软件,在开发标准软件时,为软件实现不同功能的能力的实现方式预设了多种候选修改方式,预设的候选修
改方式使得软件在使用过程中,软件使用方可以根据自身场景特征,从候选修改方式中确定一种修改方式对软件的具体功能进行自定义修改。此过程中,平台开发实现每种功能逻辑的标准软件,对于之后软件使用方使用过程中,软件使用方的自定义修改需求,无需平台分别针对每个软件使用的修改需求对软件进行修改,而是由软件使用方通过软件预设的修改方式对需要修改功能进行修改处理。此种由软件使用方对待修改软件按照目标修改方式进行修改处理的方式,不仅节省了平台的开发成本,降低了软件的修改成本,节省软件的修改处理时间,还可以提升软件的修改效率。
55.本技术实施例提供的软件修改方法可以应用于软件交付后,软件使用方使用软件的过程中,该软件使用方对部分功能需要设定符合自身场景特征要求的修改处理。因此,软件使用方对软件提供方提供的标准软件的部分功能按照确定的目标修改方式进行修改处理的应用场景。
56.例如,在软件使用方使用软件提供方提供的标准软件时,根据软件使用方的场景特征,对该标准软件增加新的服务需求。针对软件使用方提出的新增服务需求,软件使用方需要在标准软件包括的多个功能中增加一个新的功能,以满足软件使用方的新增服务需求。其中,软件使用方首先确定对该标准软件需要新增加的目标功能,然后从该标准软件预先设置的多种候选修改方式中确定可以修改目标功能、且修改复杂度数据满足预设要求的目标修改方式,根据目标修改方式对标准软件进行修改处理,获得修改后的软件。软件使用方使用修改后的软件实现目标功能逻辑。
57.再例如,软件使用方使用由软件提供方提供的标准软件时,根据软件使用方的场景特征,对该标准软件的部分功能进行修改处理。例如,对部分功能的通用流程增加部分新增流程,或者减少部分流程等等;或者,对部分功能对应的配置参数进行修改,获得新的配置参数等;或者,对部分功能的固定逻辑代码通过扩展接口的方式增加新的已有的标准逻辑代码,以实现附加功能。针对此种场景,软件使用方根据标准软件预先设置的多个候选修改方式,确定可以修改目标功能的、且修改复杂度数据满足预设要求的目标修改方式。根据目标修改方式对标准软件的目标功能进行修改处理,获得修改后的软件。软件使用方使用修改后的软件实现目标功能逻辑。
58.相较于现有技术中将待修改软件返回至软件提供方通过编码的方式进行修改处理来说,此种由软件使用方对待修改软件按照目标修改方式进行修改处理的方式,不仅可以降低软件的修改成本,节省软件的修改处理时间,还可以提升软件的修改效率。
59.再例如,软件中台包括大量可供各种软件使用方使用的多种标准软件。不同的软件使用方为了实现其所需的服务需求,从软件中台获取与服务需求匹配的标准软件。在使用软件或安装软件的过程中,软件使用方可以在标准软件的基础上增加符合新的功能或修改已有的功能,以满足软件使用方实现目标功能逻辑的具体使用需求。其中,本技术实施例中对标准软件进行修改处理,可以通过多种修改方式对标准软件的功能进行修改处理,根据修改方式确定模型确定修改该功能的目标修改方式。修改方式确定模型根据预设的修改方式判断顺序,依次判断标准软件的多个候选修改方式是否支持修改目标功能,在判断的基础上,确定目标修改方式。然后根据目标修改方式对目标功能进行修改处理,获得修改处理后的目标功能。
60.以下,首先对本技术实施例提供的软件修改方法的应用场景进行示例说明。
61.本技术实施例中,确定第一软件中需要修改处理的目标功能,从第一软件的多个候选修改方式中确定能够修改目标功能、且修改复杂度数据满足预设要求的目标修改方式。根据目标修改方式,对第一软件进行修改处理,获得第二软件。其中,确定能够修改目标功能、且修改复杂度数据满足预设要求的目标修改方式,是本技术实施例提高的软件修改方法的关键步骤。
62.请参考图2,其为本技术实施例提供的软件修改方法的应用场景示意图。
63.在图2中,软件修改方法的应用主体为软件使用方。软件使用方的前端101确定第一软件中需要修改处理的目标功能,将需要进行修改处理的目标功能信息发送给软件使用方的后端服务器102。后端服务器102从第一软件预先设置的多个候选修改方式中确定目标修改方式,根据目标修改方式对目标功能进行修改处理,获得修改处理后的第二软件。
64.软件使用方可以是为用户提供目标服务的服务主体,也可以是用户主体。例如,为用户提供线上订餐服务的外卖服务应用,为用户提供音乐服务的音乐服务应用。例如,软件使用方可以是安装于用户的智能设备终端的外卖服务应用,外卖服务应用可以包含多个实现不同功能逻辑的软件实例。外卖服务应用为了满足外卖的场景特点需求,对软件提供方提供的用于实现第一功能逻辑的软件实例的一个功能或者多个功能进行修改处理。例如,外卖服务应用中包含实现餐品管理功能的餐品管理软件实例。软件提供方提供给软件使用方的第一餐品管理软件实例为用于实现餐品管理服务的标准软件实例,其具有实现餐品管理功能的标准逻辑代码以及标准配置参数。例如,第一餐品管理软件实例包括餐品审核功能,餐品发布功能,餐品日志记录功能。在外卖应用服务中,对餐品审核功能的实现逻辑具有外卖场景特点的附加需求,因此,软件使用方对第一餐品管理软件实例中的餐品审核功能进行修改处理。
65.再例如,为用户提供线上商品订购的商品服务应用可以包括多个实现不同功能逻辑的软件,例如,用于管理商品的商品管理软件。商品管理软件包括多种功能,例如,商品编辑功能,商品查询功能,商品发布功能,以及商品日志功能等等。软件提供方构建的标准商品管理软件,其可以被多个软件使用方应用于不同使用场景中,用于实现管理商品的功能逻辑。
66.以软件使用方为商品服务应用为例说明,商品服务应用使用商品管理软件,在安装商品管理软件或者使用商品管理软件的过程中,其提出的服务需求为,在商品发布之前,对商品增加审核功能,换言之,对商品管理应用增加商品审核功能。
67.基于商品服务应用(软件使用方)针对商品管理软件的服务需求,软件使用方的前端确定第一软件中需要修改处理的目标功能。其中,第一软件为商品管理软件,目标功能为商品审核功能。软件使用方的前端确定需要对商品管理软件增加商品审核功能。
68.软件使用方的后端服务器102根据修改方式确定模型确定用于修改目标功能的目标修改方式。其中,修改方式确定模型的输入数据为第一软件中需要修改的目标功能,输出数据为针对目标功能的目标修改方式。结合此例子,输入数据为商品管理软件中的商品审核功能,输出数据为针对商品审核功能的目标修改方式。
69.现有技术中,对商品管理软件增加商品审核功能的通用做法是:判断商品管理软件中是否可以通过修改配置参数的方式增加商品审核功能,如果可以,则通过修改配置参数的方式增加审核功能;如果不可以,则向软件提供方发送请求,由软件提供方通过编码的
方式对商品管理软件进行修改处理,将修改处理后的商品管理软件返回软件使用方使用。此种方式获得的修改后的商品管理软件的可复用性低,其适用于商品服务应用,但是对于其他的软件使用方,需要重新修改目标功能后获得新的商品管理软件,才可以使用。另外,由软件提供方通过编码方式获得修改后的商品管理软件的修改过程复杂,周期长,且修改成本高,降低了软件的修改效率。
70.为了提升软件的修改效率,本技术实施例通过对待修改软件的目标功能进行修改处理时,通过软件提供方构建的第一软件中预先设置了多种候选修改方式,软件使用方在使用过程中从多种候选修改方式中、确定能够修改目标功能的、且修改复杂度数据满足预设要求的目标修改方式。根据目标修改方式,对待修改软件的目标功能进行修改处理,获得修改目标功能后的第二软件。
71.其中,第一软件和第二软件均为用于实现目标功能逻辑的软件实例。第一软件为软件提供方提供给软件使用方的、用于实现目标功能逻辑的软件实例,换言之,第一软件为软件提供方构建用于实现目标功能逻辑的标准软件实例,可以提供给各种不同软件使用方使用。第二软件为软件使用方根据目标修改方式对第一软件的目标功能进行修改处理后获得的软件实例。换言之,第二软件为软件使用方根据自身场景特征对第一软件的一个或者多个目标功能进行修改处理后的软件实例,不同软件使用方的第二软件用于实现目标功能逻辑的功能之间存在差异性。
72.请参考图4,其为本技术实施例提供的软件提供方构建的第一软件的逻辑框架图。在图4中,由软件提供方构造完成的标准应用软件可以包括多个功能,每个功能可以实现一种服务需求。其中,每种功能被配置了如下至少一种修改方式:配置项(通过修改配置参数对目标功能进行修改处理),流程编排(将通用流程节点的可扩展节点处增加新的流程图,以对目标功能完成修改处理),页面编排(对标准页面的可支持增加新内容的页面节点处增加新的页面内容,以完成对目标功能的修改处理),服务扩展接口(通过在服务扩展接口增加外部其他独立逻辑代码,以获得附加功能)。
73.请参考图5,其为本技术实施例提供的软件提供方构建第一软件的流程示意图。软件提供方在开发软件产品时,定义软件实现不同功能的能力,定义每种能力的实现方式,其中,实现方式可以是实现该能力所需要的各种配置项,例如,参数配置,页面,流程,服务,等等。然后,将能力实现方式和软件产品建立关联关系,发布软件产品。其中,关于软件产品开发的方法可以参考第三实施例提供的一种软件产品开发的方法的详细描述。
74.软件使用方对第一软件的目标功能进行修改处理,具体是,软件使用方的后端服务器102通过修改方式确定模型确定对第一软件的目标功能进行修改处理的目标修改方式。修改方式确定模型用于根据目标功能、功能与修改方式之间的匹配度、以及修改功能的多个修改方式对应的修改复杂度数据,确定针对目标功能的目标修改方式。
75.其中,功能与修改方式之间的匹配度可以为针对功能的类型确定与服务能够匹配的目标修改方式。例如,a功能通过修改配置参数的方式进行修改可以满足对a功能的修改要求。
76.修改功能的多个修改方式分别对应的修改复杂度数据,可以是修改方式对目标功能进行修改处理时的修改复杂等级确定,修改复杂等级为第一等级大于第二等级,第二等级大于第三等级,等等。相应的,第一等级的修改方式复杂度数据小于第二等级的修改方式
复杂度数据,第二等级的修改复杂度数据小于第三等级的修改方式复杂度数据。
77.修改方式确定模型中包括用于判断目标功能是否支持通过多个候选修改方式进行修改处理的预设判断顺序;因此,修改方式确定模型确定目标修改方式时,按照预设判断顺序通过多个候选修改方式进行修改处理的预设判断顺序通过多个候选修改方式进行修改处理的预设判断顺序分别判断第一软件的多个候选修改方式是否可以对目标功能进行修改处理。
78.请参见图3,其为本技术实施例提供的软件使用方针对软件修改处理的场景示意图。图3描述了按照预设判断顺序判断每种候选修改方式是否支持修改目标功能的第一判断流程图。具体如下:
79.第一步判断:判断第一软件(待修改软件)中是否包含用于实现软件使用方的服务需求的目标功能,如果包含,则无需对第一软件进行修改处理;如果不包含,则进行第二步判断。
80.第二步判断:判断第一软件中的多个候选修改方式中是否包含配置修改方式,如果包含,则判断目标功能是否支持通过配置修改方式进行修改处理,如果所述目标功能支持通过配置修改方式进行修改处理,则将所述配置修改方式确定为所述软件使用方修改所述目标功能的目标修改方式。
81.按照预设的判断顺序,第一软件的多个候选修改方式中包括配置修改方式,且目标功能支持通过配置修改方式进行修改处理,因此,配置修改方式为目标修改方式。
82.其中,所述目标功能支持通过配置修改方式进行修改处理,例如,软件提供方构建第一软件时,对第一软件的目标功能预先设置了配置项,软件使用方在使用第一软件时,根据自身场景需求,对配置项中的配置参数进行修改,获得符合软件使用方场景特征需求的配置参数。
83.如果所述目标功能不支持通过配置修改方式进行修改处理,则进行第三步判断。
84.第三步判断:判断所述多个候选修改方式中是否包含低代码修改方式,如果包含,则判断所述目标功能是否支持通过低代码修改方式进行修改处理;如果所述目标功能支持通过低代码修改方式进行修改处理,则将所述低代码修改方式确定为所述软件使用方修改所述目标功能的目标修改方式。
85.低代码修改方式包括编排修改方式,通过编排修改方式使得目标功能具有满足场景特点的附加功能。其中,编排修改方式包括流程编排修改方式和页面编排修改方式。流程编排修改方式可以包括在已存在的固定流程中的可扩展节点处增加软件使用方的部分流程图。页面编排修改方式包括在标准页面中的可扩展页面节点增加页面元素信息,或者在标准页面中的可修改页面节点处修改已存在的页面元素信息。以下分别介绍。
86.流程编排方式可以是指,软件提供方提供的标准软件包含实现候选功能的通用流程,通用流程中的多个节点中包含一个或者多个可扩展节点。软件使用方使用该标准软件时,通过可扩展节点增加实现场景特点的服务需求的附加流程,使得目标功能能够满足软件使用方的使用需求。
87.请参考图6,其为本技术实施例提供的软件使用方针对第一软件进行流程编排处理的场景示意图。在图6中,以商户入驻服务平台的入驻流程为例进行说明。
88.软件提供方提供的软件a为实现商户入驻服务平台的标准软件,如图6中的601描
述的标准软件实现商户入驻服务平台的通用节点流程图,该软件a中包括完成商户入驻服务平台的多个服务节点,例如,商户入驻审核节点(其包含商户入驻审核功能),商户信息补充节点(其包含商户信息补充功能),商户入驻协议确定节点(其包含商户入驻协议签署功能),商户入驻授权节点(其包含商户入驻授权功能),商户入驻合同确定节点(其包含商户入驻合同确认功能)。
89.其中,商户入驻审核节点为可扩展节点,因此,不同服务应用平台使用该软件a时,可以根据具体场景特点,在可扩展节点处增加符合具体场景特征的功能,如图6中的602描述的软件a在第一服务平台和第二服务平台被时用时,第一服务平台的商户入驻审核节点的流程和第二服务平台的商户入驻审核节点的流程是不同的。如图6中的602-1为第一服务平台使用该软件a后,在可扩展节点处增加的第一审核流程包含3轮审核。如图6中的602-2为第二服务平台使用该软件a后,在可扩展节点处增加的第二轮审核流程包括2轮审核。
90.以上为流程编排方式的实例介绍,以下说明服务主体使用标准软件时,通过页面编排的方式增加附加功能的详细说明。软件提供方构建标准软件,并且该标准软件支持自定义功能。如果服务主体应用该标准软件时,标准软件中的标准页面的页面形式与服务主体所需要的页面形式不一致的情况下,软件使用方通过页面编排工具对标准页面进行编辑处理后,获得符合服务主体使用需求的目标页面。其中,页面编排工具可以包括页面可视化搭建能力,数据绑定能力和数据映射能力。通过搭建页面组件实现静态页面,通过静态页面、数据绑定处理、以及数据映射处理实现动态页面。
91.以上即为所述目标功能支持通过低代码修改方式进行修改处理,获得的第二软件。如果所述目标功能不支持通过低代码修改方式进行修改处理,则进行第四步判断。
92.第四步判断:如果所述目标功能不支持通过低代码修改方式进行修改处理,则判断所述多个候选修改方式中是否包含服务扩展接口修改方式,如果包含,则判断所述目标功能是否支持通过服务扩展接口修改方式进行修改处理;如果所述目标功能支持通过服务扩展接口修改方式进行修改处理,则将所述服务扩展接口修改方式确定为所述软件使用方修改所述目标功能的目标修改方式。
93.通过服务扩展接口获得目标功能以满足该服务需求,例如,软件提供方构建标准软件时,对标准软件添加了扩展接口,软件使用方使用该标准软件,通过该扩展接口获取外部独立开发的逻辑代码,以实现附加功能。另外,软件使用方在使用标准软件时,通过路由机制,设置需要调用标准软件的扩展接口的具体实现方式,以确定通过扩展接口获取的外部逻辑代码在软件中的内部运行逻辑。
94.如果所述目标功能不支持通过服务扩展接口修改方式进行修改处理,则向所述软件提供方发送用于对所述第一软件的目标功能进行修改处理的请求消息。
95.以上即为按照预设判断顺序判断每种候选修改方式是否支持修改目标功能的第一种判断流程图。
96.其次,修改方式确定模型还包括通过按照预设方式确定修改目标功能的目标修改方式的第二种判断过程。具体的,所述修改方式确定模型从所述第一软件预先设置的多个候选修改方式中,确定可以用于修改所述目标功能的多个第一修改方式,构建针对所述目标功能的第一修改方式集;从所述第一修改方式集中确定能够修改所述目标功能、且修改复杂度数据满足预设要求的目标修改方式。
97.例如,第一软件中预先设置了配置项,低代码,服务扩展接口等三种候选修改方式。其中,待修改目标功能均可以通过修改配置参数,低代码修改方式,服务扩展接口修改方式完成修改处理,实现软件使用方对目标功能的使用需求。
98.在此情况下,根据每种修改方式对目标功能进行修改处理的修改复杂度数据,对多个修改方式进行排序,因此,排序次序分别为:配置修改方式,低代码修改方式,服务扩展接口修改方式。上述排序次序按照修改复杂度数据由低到高的排序规则获取的,配置修改方式的修改复杂度数据低于低代码修改方式的修改复杂度数据,低代码修改方式的修改复杂度数据低于服务扩展接口修改方式的修改复杂度数据。因此,选择配置修改方式作为目标修改方式。
99.其中,获取修改复杂度数据,可以是根据修改方式确定模型预先设置的多个修改方式分别对应的修改复杂度等级,确定支持目标功能的每种修改方式对应的修改复杂度数据。
100.例如,预先设置中,配置修改方式的修改复杂度等级为第一等级,低代码修改方式的修改复杂度等级为第二等级,服务扩展接口的修改复杂度等级为第三等级。如上述对修改复杂度等级的描述,第一等级的修改方式复杂度数据小于第二等级的修改方式复杂度数据,第二等级的修改复杂度数据小于第三等级的修改方式复杂度数据。因此,配置修改方式的修改复杂度数据小于低代码修改方式的修改复杂度数据,低代码修改方式的修改复杂度数据小于服务扩展接口修改方式的修改复杂度数据。
101.以上即为两种方式确定目标功能的目标修改方式。
102.本技术实施例提供一种软件修改方法,包括:确定第一软件中需要修改处理的目标功能,所述第一软件为软件提供方提供给软件使用方的、用于实现目标功能逻辑的软件应用实例,所述第一软件的目标功能由所述软件使用方根据目标修改方式进行修改处理;从所述第一软件预先设置的多个候选修改方式中,确定能够修改所述目标功能、且修改复杂度数据满足预设要求的目标修改方式;基于所述目标修改方式,对所述第一软件的目标功能进行修改处理,获得第二软件,其中,所述第二软件为所述软件使用方根据修改处理后的目标功能实现所述目标功能逻辑的软件应用实例。
103.上述方法,软件使用方确定软件提供方提供的第一软件中存在需要修改的目标功能后,从第一软件预先设置的多个候选修改方式中、确定可以修改目标功能、且修改复杂度数据满足预设要求的目标修改方式,然后根据目标修改方式对目标功能进行修改处理,获得可以在软件使用方使用的用于实现目标功能逻辑的软件应用实例。上述过程无需软件提供方对需要修改的目标功能进行修改处理后,将修改完成的软件返回给软件使用方,而是由软件使用方确定需要修改的目标功能,修改目标功能的目标修改方式,以及根据目标修改方式对目标功能进行修改处理。此种方式降低了软件的修改成本,提升了软件的修改效率。
104.第一实施例
105.与上述软件修改方法的应用场景实施例相对应,本技术第一实施例提供一种软件修改方法。图7为本技术实施第一实施例提供的一种软件修改方法的流程图,以下结合图7对本实施例提供的方法进行描述。图7所示的一种软件修改方法包含步骤s701~s703。
106.如图7所示,在步骤s701中,确定第一软件中需要修改处理的目标功能,所述第一
软件为软件提供方提供给软件使用方的、用于实现目标功能逻辑的软件应用实例,所述第一软件的目标功能由所述软件使用方根据目标修改方式进行修改处理。
107.本步骤用于确定第一软件中需要修改处理的目标功能。其中,所述确定第一软件中需要修改处理的目标功能,可以通过如下方式实现:
108.根据所述软件使用方实现所述目标功能逻辑时的使用需求,确定第一软件中需要修改处理的目标功能。
109.软件使用方对第一软件的修改需求,可以是软件使用方的前端获取用户对第一软件的功能提供自定义修改需求,根据自定义修改需求,确定需要进行修改处理的目标功能。
110.第一软件为软件提供方构建的、提供给软件使用方使用的,用于实现目标功能逻辑的软件应用实例。换言之,第一软件为软件提供方构建的用于实现目标功能逻辑的标准软件。标准软件包括实现该功能逻辑所需要的多种功能,以及每种功能可以被修改的多种修改方式。
111.在实际应用场景中,软件使用方根据自身的使用需求对标准软件的一种功能或者多种功能增加新的附加功能,具体的增加方式包括多种修改方式,例如,配置修改方式,低代码修改方式,以及服务扩展接口修改方式。
112.其中,软件使用方包括实际使用该软件的服务主体,可以是用户主体,也可以是企业主体等等。例如,为用户提供线上订餐服务的外卖服务应用,为用户提供音乐服务的音乐服务应用。例如,软件使用方可以是安装于用户的智能设备终端的外卖服务应用,外卖服务应用可以包含多个实现不同功能逻辑的软件实例。在实际使用中,外卖服务应用对实现目标功能逻辑的软件实例a提出符合外卖场景特征的修改需求,其可以在软件使用方对软件实例a的一个或者多个目标功能进行修改处理,获得符合软件使用方使用需求的目标软件实例。
113.如图7所示,在步骤s702中,从所述第一软件预先设置的多个候选修改方式中,确定能够修改所述目标功能、且修改复杂度数据满足预设要求的目标修改方式。
114.本步骤用于确定可以修改目标功能的目标修改方式,其中,可以修改目标功能的目标修改方式可以包括:能够修改目标功能、且修改复杂度数据满足预设要求的目标修改方式。
115.其中,所述从所述第一软件预先设置的多个候选修改方式中,确定能够修改所述目标功能、且修改复杂度数据满足预设要求的目标修改方式,可以通过如下方式实现:
116.根据修改方式确定模型,从所述第一软件预先设置的多个候选修改方式中,确定能够修改所述目标功能、且修改复杂度数据满足预设要求的目标修改方式;其中,所述修改方式确定模型用于根据所述目标功能、功能与修改方式之间的匹配度、以及修改功能的多个修改方式对应的修改复杂度数据,确定针对所述目标功能的目标修改方式。
117.修改方式确定模型如图2所示,输入数据为第一软件中需要修改处理的目标功能,输出数据为针对目标功能的目标修改方式。其中,修改方式确定模型包括用于判断目标功能是否支持通过多个候选修改方式进行修改处理的预设判断顺序。因此,修改方式确定模型在确定针对目标功能的目标修改方式时,通过预设判断顺序分别判断第一软件中的多个候选修改方式中是否存在可以修改目标功能的目标修改方式。
118.所述根据修改方式确定模型,从所述第一软件预先设置的多个候选修改方式中,
确定能够修改所述目标功能、且修改复杂度数据满足预设要求的目标修改方式,可以通过如下方式实现:
119.根据所述预设判断顺序,从所述第一软件预先设置的多个候选修改方式中,确定能够修改所述目标功能、且修改复杂度数据满足预设要求的目标修改方式。
120.其中预设判断顺序可以包括:首先判断软件提供方提供的第一软件是否满足软件使用方的使用需求,如果满足,则结束判断。如果不满足,则判断第一软件是否支持配置项修改目标功能,如果支持,则通过配置项修改目标功能,如果不支持,则判断第一软件是否支持低代码修改目标功能,如果支持低代码修改目标功能,则通过低代码修改目标功能,如果不支持低代码修改目标功能,则判断第一代码是否支持服务扩展接口修改目标功能,如果支持,则通过服务扩展接口修改目标功能,如果不支持,则向软件提供方发送修改第一软件的请求消息,由软件提供方对第一软件进行修改处理。
121.具体的,按照预设判断顺序,确定目标修改方式可以参考如下描述:
122.所述根据所述预设判断顺序,从所述第一软件预先设置的多个候选修改方式中,确定能够修改所述目标功能、且修改复杂度数据满足预设要求的目标修改方式,可以通过如下方式实现:
123.判断所述多个候选修改方式中是否包含配置修改方式,如果包含,则判断所述目标功能是否支持通过配置修改方式进行修改处理;如果所述目标功能支持通过配置修改方式进行修改处理,则将所述配置修改方式确定为所述软件使用方修改所述目标功能的目标修改方式。
124.第一软件预先设置了多个候选修改方式,如果包含配置修改方式,则进一步确定针对目标功能的修改需求是否可以通过修改配置参数的方式进行修改,如果可以,则确定配置修改方式为目标修改方式。
125.例如,第一应用服务平台对货品管理软件(软件提供方提供的第一软件)的货品信息输入功能设置自定义修改需求,需要修改货品信息输入功能中的具体参数信息,此种修改需求即可以通过配置修改方式进行修改处理。
126.此外,如果第一应用服务平台对货品管理软件的货品日志功能设置自定义修改需求,需要在货品日志功能的通用流程中增加自定义流程,则通过配置修改方式无法完成对该货品日志功能的修改处理。
127.因此,如果所述目标功能不支持通过配置修改方式进行修改处理,则判断所述多个候选修改方式中是否包含低代码修改方式,如果包含,则判断所述目标功能是否支持通过低代码修改方式进行修改处理;如果所述目标功能支持通过低代码修改方式进行修改处理,则将所述低代码修改方式确定为所述软件使用方修改所述目标功能的目标修改方式。
128.低代码修改方式包括编排修改方式,通过编排修改方式使得目标功能具有满足场景特点的附加功能。
129.如果包含低代码修改方式,则判断低代码修改方式是否可以对目标功能进行修改处理。例如,第一应用服务平台对货品管理软件的货品日志功能设置自定义修改需求,需要在货品日志功能的通用流程中增加自定义流程,其可以通过低代码修改方式中的流程编排修改方式,则将低代码修改方式确定为目标功能的目标修改方式。
130.如果第一应用服务平台对货品管理软件的货品审核功能设置自定义修改需求,需
要在货品审核功能的审核流程中设置自定义的审核过程,则通过配置修改方式,低代码修改方式均无法完成对货品审核功能的修改处理。
131.因此,如果所述目标功能不支持通过低代码修改方式进行修改处理,则判断所述多个候选修改方式中是否包含服务扩展接口修改方式,如果包含,则判断所述目标功能是否支持通过服务扩展接口修改方式进行修改处理;如果所述目标功能支持通过服务扩展接口修改方式进行修改处理,则将所述服务扩展接口修改方式确定为所述软件使用方修改所述目标功能的目标修改方式。
132.服务扩展接口修改方式可以是指,在第一软件的主体逻辑代码的基础上,通过服务扩展接口连接外部独立运行的扩展逻辑代码,以实现软件使用方应用第一软件的附加使用需求。例如,软件提供方构建标准软件时,对标准软件添加了扩展接口,软件使用方使用该标准软件,通过该扩展接口获取外部独立开发的逻辑代码,以实现附加功能。另外,软件使用方在使用标准软件时,通过路由机制,设置需要调用标准软件的扩展接口的具体实现方式,以确定通过扩展接口获取的外部逻辑代码在软件中的内部运行逻辑。
133.以上即为依次按照配置修改方式,低代码修改方式,服务扩展接口修改方式的判断顺序判断第一软件的目标功能是否支持通过上述修改方式进行修改处理的介绍。
134.如果所述目标功能不支持通过服务扩展接口修改方式进行修改处理,则向所述软件提供方发送用于对所述第一软件的目标功能进行修改处理的请求消息。换言之,第一软件的目标功能均不支持上述三种修改方式进行修改处理,因此,由软件使用方将第一软件的修改需求提供给软件提供方,由软件提供方对第一软件通过编码的方式完成修改,然后将修改后的目标软件发送给软件使用方。
135.以上即为修改方式确定模型判断目标功能是否可以通过候选修改方式进行修改处理的判断流程的第一种介绍说明。
136.此外,修改方式确定模型还可以通过第二种方式确定修改目标功能的目标修改方式的情况,具体如下:
137.所述根据修改方式确定模型,从所述第一软件预先设置的多个候选修改方式中,确定能够修改所述目标功能、且修改复杂度数据满足预设要求的目标修改方式,可以通过如下方式实现:
138.所述修改方式确定模型从所述第一软件预先设置的多个候选修改方式中,确定可以用于修改所述目标功能的多个第一修改方式,构建针对所述目标功能的第一修改方式集;从所述第一修改方式集中确定能够修改所述目标功能、且修改复杂度数据满足预设要求的目标修改方式。
139.例如,第一软件预先设置了三种候选修改方式,配置修改方式,低代码修改方式,服务扩展接口修改方式。其中,目标功能支持的修改方式包括配置修改方式,低代码修改方式,服务扩展接口修改方式。由此可以通过如下方式确定目标修改方式。
140.所述从所述第一修改方式集中确定能够修改所述目标功能、且修改复杂度数据满足预设要求的目标修改方式,包括:
141.获取所述第一修改方式集中多个第一修改方式分别对所述目标功能进行修改处理的修改复杂度数据;根据多个第一修改方式分别对应的修改复杂度数据,对所述多个第一修改方式按照修改复杂度数据由小到大的排序规则进行排序;从排序后的第一修改方式
列表中确定针对目标功能的目标修改方式,所述目标修改方式的修改复杂度数据小于所述第一修改方式集中剩余第一修改方式分别对应的修改复杂度数据,所述剩余第一修改方式为所述第一修改方式集中除所述目标修改方式之外的第一修改方式。
142.在此情况下,根据每种修改方式对目标功能进行修改处理的修改复杂度数据,对多个修改方式进行排序,因此,排序次序分别为:配置修改方式,低代码修改方式,服务扩展接口修改方式。上述排序次序按照修改复杂度数据由低到高的排序规则获取的,配置修改方式的修改复杂度数据低于低代码修改方式的修改复杂度数据,低代码修改方式的修改复杂度数据低于服务扩展接口修改方式的修改复杂度数据。因此,选择配置修改方式作为目标修改方式。
143.其中,所述获取所述第一修改方式集中多个第一修改方式分别对所述目标功能进行修改处理的修改复杂度数据,可以通过如下方式实现:
144.根据所述修改方式确定模型预先设置的多个候选修改方式分别对应的修改复杂度等级,确定多个第一修改方式分别对应的修改复杂度等级;根据所述多个第一修改方式分别对应的修改复杂度等级,确定多个第一修改方式分别对所述目标功能进行修改处理的修改复杂度数据。
145.获取修改复杂度数据,可以是根据修改方式确定模型预先设置的多个修改方式分别对应的修改复杂度等级,确定支持目标功能的每种修改方式对应的修改复杂度数据。
146.例如,预先设置中,配置修改方式的修改复杂度等级为第一等级,低代码修改方式的修改复杂度等级为第二等级,服务扩展接口的修改复杂度等级为第三等级。如上述对修改复杂度等级的描述,第一等级的修改方式复杂度数据小于第二等级的修改方式复杂度数据,第二等级的修改复杂度数据小于第三等级的修改方式复杂度数据。因此,配置修改方式的修改复杂度数据小于低代码修改方式的修改复杂度数据,低代码修改方式的修改复杂度数据小于服务扩展接口修改方式的修改复杂度数据。
147.此外,获取修改复杂度数据可以根据具体数值确定。例如,预先设置的每种修改方式的修改复杂度分数值,配置修改方式对应的修改复杂度分值为小于30,低代码修改方式对应的修改复杂度分值为大于等于30,且小于70,服务扩展接口修改方式对应的修改复杂度分值为大于等于70。在确定目标功能支持的多个第一修改方式的情况下,根据每种第一修改方式对应的修改复杂度分值,对多个第一修改方式进行排序。在排序后的列表中确定目标修改方式,目标修改方式对应的修改复杂度分值低于其他第一修改方式对应的修改复杂度分值。
148.如图7所示,在步骤s703中,基于所述目标修改方式,对所述第一软件的目标功能进行修改处理,获得第二软件,其中,所述第二软件为所述软件使用方根据修改处理后的目标功能实现所述目标功能逻辑的软件应用实例。
149.本步骤用于根据上述步骤确定目标修改方式,对第一软件的目标功能进行修改处理。其获得的第二软件是符合软件使用方的使用需求的软件应用实例,与第一软件具有相同的实现功能逻辑,第一软件是软件提供方提供给软件使用方的标准软件,第二软件是软件使用方根据自身使用需求对标准软件的部分功能进行修改处理后的软件。
150.本技术实施例提供一种软件修改方法,包括:确定第一软件中需要修改处理的目标功能,所述第一软件为软件提供方提供给软件使用方的、用于实现目标功能逻辑的软件
应用实例,所述第一软件的目标功能由所述软件使用方根据目标修改方式进行修改处理;从所述第一软件预先设置的多个候选修改方式中,确定能够修改所述目标功能、且修改复杂度数据满足预设要求的目标修改方式;基于所述目标修改方式,对所述第一软件的目标功能进行修改处理,获得第二软件,其中,所述第二软件为所述软件使用方根据修改处理后的目标功能实现所述目标功能逻辑的软件应用实例。
151.上述方法,软件使用方确定软件提供方提供的第一软件中存在需要修改的目标功能后,从第一软件预先设置的多个候选修改方式中、确定可以修改目标功能、且修改复杂度数据满足预设要求的目标修改方式,然后根据目标修改方式对目标功能进行修改处理,获得可以在软件使用方使用的用于实现目标功能逻辑的软件应用实例。上述过程无需软件提供方对需要修改的目标功能进行修改处理后,将修改完成的软件返回给软件使用方,而是由软件使用方确定需要修改的目标功能,修改目标功能的目标修改方式,以及根据目标修改方式对目标功能进行修改处理。此种方式降低了软件的修改成本,提升了软件的修改效率。
152.第二实施例
153.与上述一种软件修改方法的应用场景实施例以及第一实施例提供的一种软件修改方法相对应,本技术第二实施例提供一种软件修改装置。图8为本技术第二实施例提供的一种软件修改装置的示意图,以下结合图8对本实施例提供的装置进行描述,本技术第二实施例与场景实施例和第一实施例的相同描述,具体请参考场景实施例和第一实施例,本实施例不再赘述。
154.以下描述所涉及的实施例是用来解释说明方法原理,不是实际使用的限定。
155.图8所示的软件修改译装置,包括:
156.第一确定单元801,用于确定第一软件中需要修改处理的目标功能,所述第一软件为软件提供方提供给软件使用方的、用于实现目标功能逻辑的软件应用实例,所述第一软件的目标功能由所述软件使用方根据目标修改方式进行修改处理;
157.第二确定单元802,用于从所述第一软件预先设置的多个候选修改方式中,确定能够修改所述目标功能、且修改复杂度数据满足预设要求的目标修改方式;
158.获得单元803,用于基于所述目标修改方式,对所述第一软件的目标功能进行修改处理,获得第二软件,其中,所述第二软件为所述软件使用方根据修改处理后的目标功能实现所述目标功能逻辑的软件应用实例。
159.第三实施例
160.与本技术第一实施例的方法相对应的,本技术第三实施例还提供一种软件产品开发的方法。如图9所示,图9为本技术第三实施例提供的一种软件产品开发的方法的流程图,以下结合图9对本技术实施例提供的方法进行描述。图9所示的一种软件产品开发的方法包含步骤s901~s904。
161.如图9所示,在步骤s901中,接收软件产品开发的请求。
162.本步骤用于接收软件产品开发的请求,以获取该软件产品需要实现的功能逻辑,以及为了使得完成开发的软件产品能够实现该功能逻辑,需要为该软件产品定义实现不同功能的能力。
163.例如,根据软件产品开发的请求,确定该软件产品为实现货品管理功能逻辑的软
件,为了实现货品管理功能逻辑,该软件产品需要具体实现多个不同功能的能力,例如,货品编辑能力,货品查询能力,货品审核能力,货品发布能力,货品日志能力。
164.如图9所示,在步骤s902中,将所述软件产品分解为实现不同功能的能力。
165.本步骤用于将软件产品分解为实现不同功能的能力。根据步骤s901中的请求,获取该软件产品需要实现的功能逻辑,为了实现该功能逻辑,需要为该软件产品定义多个实现不同功能的能力。因此,本步骤将软件产品分解为实现不同功能的能力,从而在后续步骤中进一步为每种能力预先定义多个候选修改方式。
166.所述能力可以是指功能,如上述s901中的例子,货品编辑能力具有实现货品编辑的功能,货品查询能力具有实现查询货品信息的功能。
167.如图9所示,在步骤s903中,针对每一种能力,确定其实现方式,并在至少一种实现方式中,预先定义多个候选修改方式,作为软件使用方根据其实际需要可选择的修改方式。
168.本步骤用于为每一种能力确定实现方式,以及对至少一种实现方式预先定义多个候选修改方式。
169.其中,所述实现方式可以是指实现能力的各种配置项。所述实现方式包括如下至少一种方式:配置,流程,页面,服务,消息,任务。
170.结合步骤s901中的例子,为货品审核能力确定实现方式,实现货品审核能力,需要用于填充货品审核信息的参数配置,审核货品的流程,展示货品审核流程的页面,接收货品审核过程中的消息,以及接收待审核商品的任务,等等。
171.实现一种能力需要一种或者多种实现方式,在软件开发阶段,为每种能力的一种实现方式或者多种实现方式预先定义多种候选修改方式。
172.其中,所述候选修改方式至少包括参数配置中多参数枚举候选、流程编排或页面编排、以及服务扩展选择中的一种。
173.参数配置中多参数枚举候选可以是用于修改参数信息的修改方式。例如,对页面中的部分标准参数信息设置参数配置的修改方式,软件使用方在使用过程中可以对参数信息进行调整。
174.例如,对于配置实现方式,可以预先设置参数配置修改方式。货品编辑能力包含填充货品信息,货品型号以及货品尺寸等信息。在软件交付后,不同的软件使用方可以根据自身场景特点修改参数配置信息,例如,修改货品型号信息,货品尺寸信息等。
175.流程编排可以是在软件开发阶段,将通用流程中的部分节点设置为可进行流程编排操作的修改方式。软件使用方可以根据该节点预先设置的流程编排的修改方式,在该流程节点处理增加新的流程或者减少流程。
176.再例如,对于流程实现方式,可以增加流程编排或者页面编排的修改方式。例如,货品审核能力中包含审核流程,在软件开发阶段预先定义流程编排的修改方式。在软件使用阶段,不同软件使用方可以根据自身场景特点自定义审核流程,此时,需要通过流程编排的方式对软件的审核流程增加审核步骤或者减少审核步骤等等。
177.页面编排可以是在软件开发阶段,将标准页面中的部分页面节点设置可进行页面编排操作的修改方式。软件使用方可以根据该节点预先设置的页面编排的修改方式,在该页面的该节点中修改页面信息,例如,增加页面组件或者删除页面组件。
178.再例如,在软件开发阶段为货品审核能力的审核页面的页面节点预先定义了页面
编排的修改方式。在软件使用阶段,软件使用方根据自身场景特点修改审核页面中的部分页面节点信息,可以在预先设置了可进行页面编排的节点进行修改操作。
179.服务扩展可以是在软件开发阶段,对软件的具体实现方式中预先设置服务扩展接口,通过该服务扩展接口可以连接其他外部成熟的功能逻辑。
180.例如,在软件开发阶段,为页面中预先设置了服务扩展接口。在软件使用过程中,不同的软件使用方可以根据需求在该服务扩展接口连接不同功能的功能逻辑。例如,在页面中增加一个网址,用户浏览该页面时,通过点击该网址进入新的服务页面。再例如,开发软件阶段预先设置了该软件的能力的实现方式包含服务扩展项的修改方式,软件使用过程中通过该服务扩展接口连接其他服务功能。
181.请参考图11,其为本技术第三实施例提供的软件开发阶段对能力实现方式预设候选修改方式的第一场景图。
182.在图11中包含一段业务流程,该业务流程两端预先设置了可扩展节点,也就是说,软件产品开发阶段将这两个节点设置为可修改的节点,供软件使用方在使用过程中在这两个节点处增加新的流程节点。
183.请参考图12,其为本技术第三实施例提供的软件开发阶段对能力实现方式预设候选修改方式的第二场景图。
184.图12中包含一段行业私有审批流程,在该行业私有审批流程的两端分别设置两个可扩展节点,将这两个节点处设置为可以修改的节点,软件使用方可以根据自己的使用需求在这两个可扩展节点处增加新的审批流程。另外,图12还包含了一个行业路由规则,此为预设的服务扩展接口的修改方式,针对用户的使用需要,通过该服务扩展接口连接其他外部的服务逻辑。
185.如图9所示,在步骤s904中,通过确定的实现方式进行代码实现,并将各个实现方式与所述软件产品关联。
186.本步骤用于将上述步骤确定的实现方式,用代码实现该软件,并将各个实现方式于软件产品关联,从而完成软件产品的开发。
187.第四实施例
188.与上述一种软件产品开发的方法的应用场景实施例以及第三实施例提供的一种软件产品开发的方法相对应,本技术第四实施例提供一种软件产品开发的装置。图10为本技术第四实施例提供的一种软件产品开发的装置的示意图,以下结合图10对本实施例提供的装置进行描述,本技术第四实施例与场景实施例和第三实施例的相同描述,具体请参考场景实施例和第三实施例,本实施例不再赘述。
189.以下描述所涉及的实施例是用来解释说明方法原理,不是实际使用的限定。
190.图10所示的软件产品开发的装置,包括:
191.接收单元1001,用于接收软件产品开发的请求;
192.分解单元1002,用于将所述软件产品分解为实现不同功能的能力;
193.定义单元1003,用于针对每一种能力,确定其实现方式,并在至少一种实现方式中,预先定义多个候选修改方式,作为软件使用方根据其实际需要可选择的修改方式;
194.代码实现单元1004,用于通过确定的实现方式进行代码实现,并将各个实现方式与所述软件产品关联;
195.其中,所述候选修改方式至少包括参数配置中多参数枚举候选、流程编排或页面编排、以及服务扩展选择中的一种。
196.第五实施例
197.与本技术第一实施例和第三实施例的方法相对应的,本技术第五实施例还提供一种电子设备。如图13所示,图13为本技术第五实施例中提供的一种电子设备的示意图。该电子设备,包括:至少一个处理器1301,至少一个通信接口1302,至少一个存储器1303和至少一个通信总线1304;可选的,通信接口1302可以为通信模块的接口,如gsm模块的接口;处理器1101可能是处理器cpu,或者是特定集成电路asic(application specific integrated circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。存储器1303可能包含高速ram存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。其中,存储器1303存储有程序,处理器1301调用存储器1303所存储的程序,以执行本发明第一实施例和第三实施例的方法。
198.第六实施例
199.与本技术第一实施例和第三实施例的方法相对应的,本技术第六实施例还提供一种计算机存储介质。所述计算机存储介质存储有计算机程序,该计算机程序被处理器运行,执行第一实施例和第三实施例的方法。
200.本技术虽然以较佳实施例公开如上,但其并不是用来限定本技术,任何本领域技术人员在不脱离本技术的精神和范围内,都可以做出可能的变动和修改,因此本技术的保护范围应当以本技术权利要求所界定的范围为准。
201.在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。内存是计算机可读介质的示例。
202.1、计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitory media),如调制的数据信号和载波。2、本领域技术人员应明白,本技术的实施例可提供为方法、系统或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
203.需要说明的是,本技术实施例中可能会涉及到对用户数据的使用,在实际应用中,可以在符合所在国的适用法律法规要求的情况下(例如,用户明确同意,对用户切实通知,等),在适用法律法规允许的范围内在本文描述的方案中使用用户特定的个人数据。

技术特征:
1.一种软件修改方法,其特征在于,包括:确定第一软件中需要修改处理的目标功能,所述第一软件为软件提供方提供给软件使用方的、用于实现目标功能逻辑的软件应用实例,所述第一软件的目标功能由所述软件使用方根据目标修改方式进行修改处理;从所述第一软件预先设置的多个候选修改方式中,确定能够修改所述目标功能、且修改复杂度数据满足预设要求的目标修改方式;基于所述目标修改方式,对所述第一软件的目标功能进行修改处理,获得第二软件,其中,所述第二软件为所述软件使用方根据修改处理后的目标功能实现所述目标功能逻辑的软件应用实例。2.根据权利要求1所述的方法,其特征在于,所述确定第一软件中需要修改处理的目标功能,包括:根据所述软件使用方实现所述目标功能逻辑时的使用需求,确定第一软件中需要修改处理的目标功能。3.根据权利要求1所述的方法,其特征在于,所述从所述第一软件预先设置的多个候选修改方式中,确定能够修改所述目标功能、且修改复杂度数据满足预设要求的目标修改方式,包括:根据修改方式确定模型,从所述第一软件预先设置的多个候选修改方式中,确定能够修改所述目标功能、且修改复杂度数据满足预设要求的目标修改方式;其中,所述修改方式确定模型用于根据所述目标功能、功能与修改方式之间的匹配度、以及修改功能的多个修改方式对应的修改复杂度数据,确定针对所述目标功能的目标修改方式。4.根据权利要求3所述的方法,其特征在于,所述修改方式确定模型中包括用于判断所述目标功能是否支持通过多个候选修改方式进行修改处理的预设判断顺序;所述根据修改方式确定模型,从所述第一软件预先设置的多个候选修改方式中,确定能够修改所述目标功能、且修改复杂度数据满足预设要求的目标修改方式,包括:根据所述预设判断顺序,从所述第一软件预先设置的多个候选修改方式中,确定能够修改所述目标功能、且修改复杂度数据满足预设要求的目标修改方式。5.根据权利要求4所述的方法,其特征在于,所述根据所述预设判断顺序,从所述第一软件预先设置的多个候选修改方式中,确定能够修改所述目标功能、且修改复杂度数据满足预设要求的目标修改方式,包括:判断所述多个候选修改方式中是否包含配置修改方式,如果包含,则判断所述目标功能是否支持通过配置修改方式进行修改处理;如果所述目标功能支持通过配置修改方式进行修改处理,则将所述配置修改方式确定为所述软件使用方修改所述目标功能的目标修改方式。6.根据权利要求5所述的方法,其特征在于,还包括:如果所述目标功能不支持通过配置修改方式进行修改处理,则判断所述多个候选修改方式中是否包含低代码修改方式,如果包含,则判断所述目标功能是否支持通过低代码修改方式进行修改处理;如果所述目标功能支持通过低代码修改方式进行修改处理,则将所述低代码修改方式
确定为所述软件使用方修改所述目标功能的目标修改方式。7.根据权利要求6所述的方法,其特征在于,还包括:如果所述目标功能不支持通过低代码修改方式进行修改处理,则判断所述多个候选修改方式中是否包含服务扩展接口修改方式,如果包含,则判断所述目标功能是否支持通过服务扩展接口修改方式进行修改处理;如果所述目标功能支持通过服务扩展接口修改方式进行修改处理,则将所述服务扩展接口修改方式确定为所述软件使用方修改所述目标功能的目标修改方式。8.根据权利要求7所述的方法,其特征在于,还包括:如果所述目标功能不支持通过服务扩展接口修改方式进行修改处理,则向所述软件提供方发送用于对所述第一软件的目标功能进行修改处理的请求消息。9.根据权利要求3所述的方法,其特征在于,所述根据修改方式确定模型,从所述第一软件预先设置的多个候选修改方式中,确定能够修改所述目标功能、且修改复杂度数据满足预设要求的目标修改方式,包括:所述修改方式确定模型从所述第一软件预先设置的多个候选修改方式中,确定可以用于修改所述目标功能的多个第一修改方式,构建针对所述目标功能的第一修改方式集;从所述第一修改方式集中确定能够修改所述目标功能、且修改复杂度数据满足预设要求的目标修改方式。10.根据权利要求9所述的方法,其特征在于,所述从所述第一修改方式集中确定能够修改所述目标功能、且修改复杂度数据满足预设要求的目标修改方式,包括:获取所述第一修改方式集中多个第一修改方式分别对所述目标功能进行修改处理的修改复杂度数据;根据多个第一修改方式分别对应的修改复杂度数据,对所述多个第一修改方式按照修改复杂度数据由小到大的排序规则进行排序;从排序后的第一修改方式列表中确定针对目标功能的目标修改方式,所述目标修改方式的修改复杂度数据小于所述第一修改方式集中剩余第一修改方式分别对应的修改复杂度数据,所述剩余第一修改方式为所述第一修改方式集中除所述目标修改方式之外的第一修改方式。11.根据权利要求10所述的方法,其特征在于,所述获取所述第一修改方式集中多个第一修改方式分别对所述目标功能进行修改处理的修改复杂度数据,包括:根据所述修改方式确定模型预先设置的多个候选修改方式分别对应的修改复杂度等级,确定多个第一修改方式分别对应的修改复杂度等级;根据所述多个第一修改方式分别对应的修改复杂度等级,确定多个第一修改方式分别对所述目标功能进行修改处理的修改复杂度数据。12.一种软件产品开发的方法,其特征在于,包括:接收软件产品开发的请求;将所述软件产品分解为实现不同功能的能力;针对每一种能力,确定其实现方式,并在至少一种实现方式中,预先定义多个候选修改方式,作为软件使用方根据其实际需要可选择的修改方式;通过确定的实现方式进行代码实现,并将各个实现方式与所述软件产品关联;
其中,所述候选修改方式至少包括参数配置中多参数枚举候选、流程编排或页面编排、以及服务扩展选择中的一种。13.一种电子设备,其特征在于,所述电子设备包括处理器和存储器;所述存储器中存储有计算机程序,所述处理器运行所述计算机程序后,执行权利要求1-12任意一项所述的方法。14.一种计算机存储介质,其特征在于,所述计算机存储介质存储有计算机程序,所述计算机程序被处理器运行后,执行权利要求1-12任意一项所述的方法。

技术总结
本申请实施例提供一种软件修改方法、装置及电子设备,在该方法中,软件使用方确定软件提供方提供的第一软件中存在需要修改的目标功能后,从第一软件预先设置的多个候选修改方式中、确定可以修改目标功能、且修改复杂度数据满足预设要求的目标修改方式,然后根据目标修改方式对目标功能进行修改处理,获得可以在软件使用方使用的用于实现目标功能逻辑的软件应用实例。上述过程无需软件提供方对需要修改的目标功能进行修改处理后,将修改完成的软件返回给软件使用方,而是由软件使用方确定修改目标功能的目标修改方式,以及根据目标修改方式对目标功能进行修改处理。此种方式降低了软件的修改成本,提升了软件的修改效率。提升了软件的修改效率。提升了软件的修改效率。


技术研发人员:沈东佳
受保护的技术使用者:阿里巴巴(中国)有限公司
技术研发日:2023.03.06
技术公布日:2023/7/13
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐