CN108958714B - 业务组件式开发方法、装置、计算机设备及存储介质 - Google Patents

业务组件式开发方法、装置、计算机设备及存储介质 Download PDF

Info

Publication number
CN108958714B
CN108958714B CN201810705502.2A CN201810705502A CN108958714B CN 108958714 B CN108958714 B CN 108958714B CN 201810705502 A CN201810705502 A CN 201810705502A CN 108958714 B CN108958714 B CN 108958714B
Authority
CN
China
Prior art keywords
service
component
business
granularity
module
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.)
Active
Application number
CN201810705502.2A
Other languages
English (en)
Other versions
CN108958714A (zh
Inventor
吴俊强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ping An Technology Shenzhen Co Ltd
Original Assignee
Ping An Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Ping An Technology Shenzhen Co Ltd filed Critical Ping An Technology Shenzhen Co Ltd
Priority to CN201810705502.2A priority Critical patent/CN108958714B/zh
Priority to PCT/CN2018/108777 priority patent/WO2020006910A1/zh
Publication of CN108958714A publication Critical patent/CN108958714A/zh
Application granted granted Critical
Publication of CN108958714B publication Critical patent/CN108958714B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design

Abstract

本发明提供一种业务组件式开发方法、装置、计算机设备及存储介质,通过接接收用于选择预先封装的业务组件的选择命令,其中,每个业务组件封装有对应的组件样式结构和业务处理逻辑结构;根据所述选择命令选择业务组件;接收用于对所述选择的业务组件的组件样式结构和业务处理逻辑结构进行修改的操作命令,其中,操作命令是基于待开发的特定业务场景需求输入的;基于操作命令修改所述选择的业务组件的组件样式结构和业务处理逻辑结构,得到特定业务场景的业务组件。本发明提高了开发的效率,减少了代码的冗余,同时保持系统样式,逻辑规则的一致性,便于后期进行维护,业务变更时,只需改动一处其他会同步变更,同时减少了测试的压力。

Description

业务组件式开发方法、装置、计算机设备及存储介质
技术领域
本发明涉及计算机技术领域,尤其涉及一种业务组件式开发方法、装置、计算机设备及存储介质。
背景技术
对于软件程序的开发,如果将业务系统做成整块应用,其往往存在开发效率低以及维护成本高的问题,而且往往随着业务的增长或者变更,系统的复杂度会呈现指数级的增长,经常出现的情况就是一个小小的改动或者一个小功能的增加可能会引起整体逻辑的修改,造成牵一发而动全身。
针对此弊端,业界已经有了一些探索,人们希望一个大且复杂的场景能够被分解成几个小的部分,这些小的部分彼此之间互不干扰,可以单独开发,单独维护,而且他们之间可以随意的进行组合。他们彼此之间根据一套标准分别生产,最后组装在一起。当某个部件出现问题时,不需要将整台主机都进行维修,只需要将坏的部件拿下来,维修之后再将其组合上就可以了。这种化繁为简的思想在后端开发中的体现是微服务,而在前端开发中的体现就是组件化。
然而,发明人发现,在软件程序开发过程中,针对同一业务不同产品类型,其流程在很多场景下相似的,而目前的做法通常是通过拷贝代码将之前的业务逻辑复制到新的产品线,例如小到身份证,行驶证验证,大到整个流程节点如H5签字授权等特定业务场景。这种简单的拷贝方式虽然可以快速地完成代码,但是后期的维护也是相当的困难,需要同步的去变更所有产品线的代码。改动点多,覆盖面广,造成的开发测试成本都较大。
发明内容
本发明的目的是提供一种业务组件式开发方法、装置、计算机设备及存储介质,用于解决现有技术存在的问题。
为实现上述目的,本发明提供一种业务组件式开发方法,包括以下步骤:接收用于选择预先封装的业务组件的选择命令,其中,每个业务组件封装有对应的组件样式结构和业务处理逻辑结构,每个所述业务组件用于实现一种业务流程;根据所述选择命令选择业务组件;接收用于对选择的业务组件的组件样式结构和业务处理逻辑结构进行修改的操作命令,其中,所述操作命令是基于待开发的特定业务场景需求输入的;基于所述操作命令修改所述选择的业务组件的组件样式结构和业务处理逻辑结构,得到所述特定业务场景的业务组件。
可选地,基于所述操作命令修改所述选择的业务组件的组件样式结构和业务处理逻辑结构,得到所述待开发的特定业务场景的业务组件包括:获取所述操作命令所携带的组件样式修改码,所述组件样式修改码用于修改所述选择的业务组件的组件样式;获取所述操作命令所携带的业务逻辑修改码,所述业务逻辑修改码用于修改所述选择的业务组件的业务处理逻辑;调用所述选择的业务组件预设的API接口,利用所述组件样式修改码和所述业务逻辑修改码对所述选择的业务组件对应的业务模块进行修改。
可选地,调用所述选择的业务组件预设的API接口,利用所述组件样式修改码和所述业务逻辑修改码对所述选择的业务组件对应的业务模块进行修改包括:调用所述API接口以获取所述选择的业务组件对应的业务模块的源代码;将所述组件样式修改码和所述业务逻辑修改码替换掉所述选择的业务组件对应的业务模块的源代码中相应的代码,得到所述特定业务场景的业务组件。
可选地,根据所述选择命令选择业务组件包括:获取所述选择命令中的业务组件标识;基于所述业务组件标识从存储器中查询所述选择的业务组件的业务模块;将查询到的所述业务组件的业务模块导出到开发平台上。
可选地,在接收业务逻辑的选择命令之前,还包括:获取已经开发完成的业务程序;按照预设粒度对所述软件程序进行分解,得到多个业务流程;对所述多个业务流程进行封装,得到一一对应的多个业务组件。
可选地,所述预设粒度为所述软件程序能够拆解的业务流程的最小粒度。
可选地,所述业务程序为多个业务场景对应的业务程序,按照预设粒度对所述软件程序进行分解,得到多个业务流程包括:按照第一子粒度对多个业务场景对应的业务程序进行拆解,得到多个第一业务流程;将从属于不同业务场景的第一业务流程进行比对,计算出相似度超过第一预设值得第一业务流程;按照第二子粒度对所述多个第一子业务流程进行拆解,得到多个第二业务流程,其中,所述第二子粒度小于所述第一子粒度;将从属于不同第一子业务流程的第二业务流程进行比对,计算出相似度超过第二预设值得第二业务流程;将相似度超过第一预设值得第一业务流程和相似度超过第二预设值得第二业务流程作为所述多个业务流程,用以封装成对应的业务组件。
为实现上述目的,本发明还提供一种业务组件式开发装置,其包括:第一接收模块,用于接收用于选择预先封装的业务组件的选择命令,其中,每个业务组件封装有对应的组件样式结构和业务处理逻辑结构,每个所述业务组件用于实现一种业务流程;获取模块,用于根据所述选择命令选择业务组件;第二接收模块,用于接收用于对所述选择的业务组件的组件样式结构和业务处理逻辑结构进行修改的操作命令,其中,所述操作命令是基于待开发的特定业务场景需求输入的;修改模块,用于基于所述操作命令修改所述选择的业务组件的组件样式结构和业务处理逻辑结构,得到所述特定业务场景的业务组件。
可选地,修改模块包括:第一获取子模块,用于获取所述操作命令所携带的组件样式修改码,所述组件样式修改码用于修改所述选择的业务组件的组件样式;第二获取子模块,用于获取所述操作命令所携带的业务逻辑修改码,所述业务逻辑修改码用于修改所述选择的业务组件的业务处理逻辑;修改子模块,用于调用所述选择的业务组件预设的API接口,利用所述组件样式修改码和所述业务逻辑修改码对所述选择的业务组件对应的业务模块进行修改。
可选地,所述修改子模块还用于调用所述API接口以获取所述选择的业务组件对应的业务模块的源代码;将所述组件样式修改码和所述业务逻辑修改码替换掉所述选择的业务组件对应的业务模块的源代码中相应的代码,得到所述特定业务场景的业务组件。
可选地,获取模块还用于获取所述选择命令中的业务组件标识;基于所述业务组件标识从存储器中查询所述选择的业务组件的业务模块;将查询到的所述业务组件的业务模块导出到开发平台上。
可选地,装置还包括:封装模块,用于获取已经开发完成的业务程序;按照预设粒度对所述软件程序进行分解,得到多个业务流程;对所述多个业务流程进行封装,得到一一对应的多个业务组件。
可选地,所述预设粒度为所述软件程序能够拆解的业务流程的最小粒度。
可选地,所述封装模块还用于按照第一子粒度对多个业务场景对应的业务程序进行拆解,得到多个第一业务流程;将从属于不同业务场景的第一业务流程进行比对,计算出相似度超过第一预设值得第一业务流程;按照第二子粒度对所述多个第一子业务流程进行拆解,得到多个第二业务流程,其中,所述第二子粒度小于所述第一子粒度;将从属于不同第一子业务流程的第二业务流程进行比对,计算出相似度超过第二预设值得第二业务流程;将相似度超过第一预设值得第一业务流程和相似度超过第二预设值得第二业务流程作为所述多个业务流程,用以封装成对应的业务组件。
为实现上述目的,本发明还提供一种计算机设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。
为实现上述目的,本发明还提供计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述方法的步骤。
根据本发明实施例,通过预先对业务流程进行封装,形成对应的业务组件,在进行代码开发时,对于特定的业务流程可以选择具有相同业务流程的业务组件,无需编写所有的源代码;对于特定场景的业务流程,可以通过对业务组件输入操作命令的方式进行修改,提高了开发的效率,减少了代码的冗余,同时保持系统样式,逻辑规则的一致性,便于后期进行维护,业务变更时,只需改动一处其他会同步变更,同时减少了测试的压力。
附图说明
图1为本发明业务组件式开发方法实施例一的流程图;
图2为本发明业务组件式开发装置实施例一的程序模块示意图;
图3为本发明业务组件式开发装置实施例一的硬件结构示意图;
图4为本发明业务组件式开发方法实施例二的流程图;
图5为本发明业务组件式开发装置实施例二的程序模块示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提供的业务组件式开发方法、装置、计算机设备及存储介质,适用于计算机技术领域,通过预先对业务流程进行封装,形成对应的业务组件,在进行代码开发时,对于特定的业务流程可以选择具有相同业务流程的业务组件,无需编写所有的源代码;对于特定场景的业务流程,可以通过对业务组件输入操作命令的方式进行修改,提高了开发的效率,减少了代码的冗余,同时保持系统样式,逻辑规则的一致性,便于后期进行维护,业务变更时,只需改动一处其他会同步变更,同时减少了测试的压力。
实施例一
请参阅图1,本实施例的一种业务组件式开发方法中,包括以下步骤:
步骤S1,接收用于选择预先封装的业务组件的选择命令,其中,每个业务组件封装有对应的组件样式结构和业务处理逻辑结构,每个业务组件用于实现一种业务流程。
在不同的软件产品中经常会有相同的流程,在不同的业务场景中经常会有相同的规则。将这些相同的规则或相同的流程,进行分类、整理,对其进行组件封装,可以得到多个业务组件。
具体地,不同的软件产品可以为O2O贷款、车寿贷款、追加贷等,其中均包括相同的流程,即申请贷款的流程,则申请贷款的流程可以作为一个业务组件,属于不同产品线的流程中最小的颗粒度,对其进行组件封装。
在另一具体的实施例中,不同的业务场景都需要进行资质校验,资质校验需要客户的身份证信息、姓名、城市信息、手机号等,其中身份校验规则、城市查询规则等均为不同业务场景中相同的规则,属于不同业务场景中最小的颗粒度,对其进行组件封装。
自定义的业务组件包括组件样式结构和业务逻辑结构,并提供相应的API结构,用于供研发人员进行组件样式或者业务逻辑的适应性修改。
封装成的组件可以以列表形式或者图形显示,在进行业务开发过程中,可以通过从显示的业务组件列表和组件图形中点击选择所需要的业务组件名称,以完成所述选择命令的输入,然后双击业务组件名称调出预留的API接口。
步骤S2,根据选择命令选择业务组件。
具体地,选择命令可以确定选择的业务组件,确定了业务组件的名称或者对应的标识。然后选择对应的业务组件可以是获取业务组件对应的业务模块,也即是封装成业务组件的代码序列,导出业务组件的代码。由于业务组件是需要将特定功能逻辑的代码序列封装得到,本实施例中所限定的业务模块是代码序列,也即是说需要将具有功能逻辑的业务模块封装之后形成的业务组件。
接收到的选择命令中携带有所述选择的业务组件标识,可以通过获取选择命令中的业务组件标识;基于业务组件标识从存储器中查询所述选择的业务组件对应的业务模块;将查询到的业务组件的业务模块导出到开发平台上。
具体地,业务组件对应的业务模块存储在存储器中,在确定出所述选择的业务组件之后,基于该业务组件的标识查询对应的业务模块所在的位置,导出到开发平台上,用于进行后续的开发工作。
步骤S3,接收用于对所述选择的业务组件的组件样式结构和业务处理逻辑结构进行修改的操作命令,其中,操作命令是基于待开发的特定业务场景需求输入的。
由于不同的业务场景虽然具有基本相同的业务流程,但是对于特定场景的业务流程仍存在细微差别,例如,做资质校验都需要客户的身份证信息,姓名,城市信息,手机号信息且都为必填,其中身份证校验规则,城市模糊查询,特定城市要求等都是一致的规则;对于O贷在某些场景下可以重新修改手机号,城市,客户在做过绑卡鉴权后身份证和姓名是由后端的提供数据并且不可编辑。在此情况下,对于封装的同一个业务组件,可以通过修改组件样式结构和业务处理逻辑结构来进行业务组件的修改,从而在付出最少得劳动的基础上完成相应业务流程的开发工作。具体地,操作命令可以包括:双击业务组件调出预先设置的API接口、具体的修改命令以及包含有可修改组件样式的代码和修改业务逻辑的代码。
步骤S4,基于操作命令修改所述选择的业务组件的组件样式结构和业务处理逻辑结构,得到特定业务场景的业务组件。具体地,可以通过调出的API结构,对业务组件的组件样式结构和业务处理逻辑结构进行修改,完成相应业务流程的定制工作。
根据本发明实施例,通过预先对业务流程进行封装,形成对应的业务组件,在进行代码开发时,对于特定的业务流程可以选择具有相同业务流程的业务组件,无需编写所有的源代码;对于特定场景的业务流程,可以通过对业务组件输入操作命令的方式进行修改,提高了开发的效率,减少了代码的冗余,同时保持系统样式,逻辑规则的一致性,便于后期进行维护,业务变更时,只需改动一处其他会同步变更,同时减少了测试的压力。
本发明实施例中,由于在业务组件使用之前,需要对已有的相关业务流程进行封装,可选地,在接收业务逻辑的选择命令之前,本发明实施例的方法还包括:获取已经开发完成的业务程序;按照预设粒度对所述软件程序进行分解,得到多个业务流程;对所述多个业务流程进行封装,得到一一对应的多个业务组件。所述预设粒度优选为所述软件程序能够拆解的业务流程的最小粒度。
本发明实施例中,通过对已经开发完成的业务程序进行拆解,用以获得可以进行封装的业务流程,然后封装成对应的业务组件进行使用,充分利用已经开发完成的业务程序。
作为一种优选的实施方式,由于已经开发完成的业务程序中往往存在一些后续不再使用或者使用频率极小的业务流程,为此,本实施例提供进一步的优化方案,具体为:
获取多个业务场景对应的业务程序,具体拆解得到多个业务流程的步骤替换为:
步骤1,按照第一子粒度对多个业务场景对应的业务程序进行拆解,得到多个第一业务流程。
步骤2,将从属于不同业务场景的第一业务流程进行比对,计算出相似度超过第一预设值得第一业务流程。相似度可以通过计算代码的覆盖率得,下同。
步骤3,按照第二子粒度对所述多个第一子业务流程进行拆解,得到多个第二业务流程,其中,所述第二子粒度小于所述第一子粒度。
步骤4,将从属于不同第一子业务流程的第二业务流程进行比对,计算出相似度超过第二预设值得第二业务流程。
步骤5,将相似度超过第一预设值得第一业务流程和相似度超过第二预设值得第二业务流程作为所述多个业务流程,用以封装成对应的业务组件。
本实施例中,通过采用大粒度对业务程序进行初步拆解,以保证在后续程序开发的过程中,大粒度的业务流程相似时,无需采用小粒度的业务组件,较少开发工作量;在大粒度拆解完成之后,再采用小粒度做进一步拆解,这样可以保证业务组件的充分利用。
请继续参阅图2,示出了一种业务组件式开发装置,在本实施例中,业务组件式开发装置10可以包括或被分割成一个或多个程序模块,一个或者多个程序模块被存储于存储介质中,并由一个或多个处理器所执行,以完成本发明,并可实现上述业务组件式开发方法。本发明所称的程序模块是指能够完成特定功能的一系列计算机程序指令段,比程序本身更适合于描述业务组件式开发装置10在存储介质中的执行过程。以下描述将具体介绍本实施例各程序模块的功能:
第一接收模块11,用于接收用于选择预先封装的业务组件的选择命令,其中,每个业务组件封装有对应的组件样式结构和业务处理逻辑结构,每个所述业务组件用于实现一种业务流程。
获取模块12,用于根据所述选择命令选择业务组件。
第二接收模块13,用于接收用于对所述选择的业务组件的组件样式结构和业务处理逻辑结构进行修改的操作命令,其中,操作命令是基于待开发的特定业务场景需求输入的。
修改模块14,用于基于操作命令修改所述选择的业务组件的组件样式结构和业务处理逻辑结构,得到特定业务场景的业务组件。
具体模块功能可以参见上述方法实施例的步骤,这里不再赘述。
根据本发明实施例,通过预先对业务流程进行封装,形成对应的业务组件,在进行代码开发时,对于特定的业务流程可以选择具有相同业务流程的业务组件,无需编写所有的源代码;对于特定场景的业务流程,可以通过对业务组件输入操作命令的方式进行修改,提高了开发的效率,减少了代码的冗余,同时保持系统样式,逻辑规则的一致性,便于后期进行维护,业务变更时,只需改动一处其他会同步变更,同时减少了测试的压力。
本实施例还提供一种计算机设备,如可以执行程序的智能手机、平板电脑、笔记本电脑、台式计算机、机架式服务器、刀片式服务器、塔式服务器或机柜式服务器(包括独立的服务器,或者多个服务器所组成的服务器集群)等。本实施例的计算机设备20至少包括但不限于:可通过系统总线相互通信连接的存储器21、处理器22,如图3所示。需要指出的是,图3仅示出了具有组件21-22的计算机设备20,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
本实施例中,存储器21包括可读存储介质,具体包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器21可以是计算机设备20的内部存储单元,例如该计算机设备20的硬盘或内存。在另一些实施例中,存储器21也可以是计算机设备20的外部存储设备,例如该计算机设备20上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。当然,存储器21还可以既包括计算机设备20的内部存储单元也包括其外部存储设备。本实施例中,存储器21通常用于存储安装于计算机设备20的操作系统和各类应用软件,例如实施例一的业务组件式开发装置10的程序代码等。此外,存储器21还可以用于暂时地存储已经输出或者将要输出的各类数据。
处理器22在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器22通常用于控制计算机设备20的总体操作。本实施例中,处理器22用于运行存储器21中存储的程序代码或者处理数据,例如运行业务组件式开发装置10,以实现实施例一的业务组件式开发方法。
本实施例还提供一种计算机可读存储介质,如闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘、服务器、App应用商城等等,其上存储有计算机程序,程序被处理器执行时实现相应功能。本实施例的计算机可读存储介质用于存储业务组件式开发装置10,被处理器执行时实现实施例一的业务组件式开发方法。
实施例二
请参阅图4,本实施例的业务组件式开发方法以实施例一为基础,包括以下步骤:
步骤S41,接收用于选择预先封装的业务组件的选择命令,其中,每个业务组件封装有对应的组件样式结构和业务处理逻辑结构,每个业务组件用于实现一种业务流程。
步骤S42,根据选择命令选择业务组件。
步骤S43,接收用于对所述选择的业务组件的组件样式结构和业务处理逻辑结构进行修改的操作命令,其中,操作命令是基于待开发的特定业务场景需求输入的;
步骤S44,获取操作命令所携带的组件样式修改码,组件样式修改码用于修改所述选择的业务组件的组件样式。
步骤S45,获取操作命令所携带的业务逻辑修改码,业务逻辑修改码用于修改所述选择的业务组件的业务处理逻辑。
步骤S46,调用所述选择的业务组件预设的API接口,利用组件样式修改码和业务逻辑修改码对所述选择的业务组件对应的业务模块进行修改,得到特定业务场景的业务组件。
进一步可选地,上述步骤S46可以包括:
调用API接口以获取所述选择的业务组件对应的业务模块的源代码;
将组件样式修改码和业务逻辑修改码替换掉所述选择的业务组件对应的业务模块的源代码中相应的代码,得到特定业务场景的业务组件。
本发明实施例的中所述的修改码可以是指开发人员编辑的用于替换业务组件对应的业务模块中部分代码的代码,从而实现业务模块的功能修改,然后重新封装成业务组件进行使用。
请继续参阅图5,本实施例的业务组件式开发装置30以实施例一为基础,用以实现实施例二的业务组件式开发方法,其包括的各程序模块的功能:
第一接收模块31,用于接收用于选择预先封装的业务组件的选择命令,其中,每个业务组件封装有对应的组件样式结构和业务处理逻辑结构,每个所述业务组件用于实现一种业务流程。
获取模块32,用于根据所述选择命令选择业务组件。
第二接收模块33,用于接收用于对所述选择的业务组件的组件样式结构和业务处理逻辑结构进行修改的操作命令,其中,操作命令是基于待开发的特定业务场景需求输入的。
第一获取子模块34,用于获取操作命令所携带的组件样式修改码,组件样式修改码用于按照特定业务场景修改所述选择的业务组件的组件样式。
第二获取子模块35,用于获取操作命令所携带的业务逻辑修改码,业务逻辑修改码用于按照特定业务场景修改所述选择的业务组件的业务处理逻辑。
修改子模块36,用于调用所述选择的业务组件预设的API接口,利用组件样式修改码和业务逻辑修改码对所述选择的业务组件对应的业务模块进行修改,得到特定业务场景的业务组件。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (8)

1.一种业务组件式开发方法,其特征在于,包括以下步骤:
获取已经开发完成的业务程序;
按照预设粒度对所述业务程序进行分解,得到多个业务流程;
对所述多个业务流程进行封装,得到一一对应的多个业务组件;接收用于选择预先封装的业务组件的选择命令,其中,每个业务组件封装有对应的组件样式结构和业务处理逻辑结构,每个所述业务组件用于实现一种业务流程;
根据所述选择命令选择业务组件;
接收用于对选择的业务组件的组件样式结构和业务处理逻辑结构进行修改的操作命令,其中,所述操作命令是基于待开发的特定业务场景需求输入的;
基于所述操作命令修改所述选择的业务组件的组件样式结构和业务处理逻辑结构,得到所述特定业务场景的业务组件,
其中,所述业务程序为多个业务场景对应的业务程序,按照预设粒度对所述软件程序进行分解,得到多个业务流程包括:
按照第一子粒度对多个业务场景对应的业务程序进行拆解,得到多个第一业务流程;
将从属于不同业务场景的第一业务流程进行比对,计算出相似度超过第一预设值的第一业务流程;
针对按照所述第一子粒度拆解得到的多个第一业务流程,再按照第二子粒度进行拆解,得到多个第二业务流程,其中,所述第二子粒度小于所述第一子粒度;
将从属于不同第一业务流程的第二业务流程进行比对,计算出相似度超过第二预设值的第二业务流程;
将相似度超过第一预设值的第一业务流程和相似度超过第二预设值的第二业务流程作为所述多个业务流程,用以封装成对应的业务组件。
2.根据权利要求1所述的业务组件式开发方法,其特征在于,基于所述操作命令修改所述选择的业务组件的组件样式结构和业务处理逻辑结构,得到所述待开发的特定业务场景的业务组件包括:
获取所述操作命令所携带的组件样式修改码,所述组件样式修改码用于修改所述选择的业务组件的组件样式;
获取所述操作命令所携带的业务逻辑修改码,所述业务逻辑修改码用于修改所述选择的业务组件的业务处理逻辑;
调用所述选择的业务组件预设的API接口,利用所述组件样式修改码和所述业务逻辑修改码对所述选择的业务组件对应的业务模块进行修改。
3.根据权利要求2所述的业务组件式开发方法,其特征在于,调用所述选择的业务组件预设的API接口,利用所述组件样式修改码和所述业务逻辑修改码对所述选择的业务组件对应的业务模块进行修改包括:
调用所述API接口以获取所述选择的业务组件对应的业务模块的源代码;
将所述组件样式修改码和所述业务逻辑修改码替换掉所述选择的业务组件对应的业务模块的源代码中相应的代码,得到所述特定业务场景的业务组件。
4.根据权利要求1所述的业务组件式开发方法,其特征在于,根据所述选择命令选择业务组件包括:
获取所述选择命令中的业务组件标识;
基于所述业务组件标识从存储器中查询所述选择的业务组件对应的业务模块;
将查询到的所述业务组件对应的业务模块导出到开发平台上。
5.根据权利要求1所述的业务组件式开发方法,其特征在于,所述预设粒度为软件程序能够拆解的业务流程的最小粒度。
6.一种业务组件式开发装置,其特征在于,其包括:
封装模块,用于获取已经开发完成的业务程序;按照预设粒度对所述业务程序进行分解,得到多个业务流程;对所述多个业务流程进行封装,得到一一对应的多个业务组件;
第一接收模块,用于接收用于选择预先封装的业务组件的选择命令,其中,每个业务组件封装有对应的组件样式结构和业务处理逻辑结构,每个所述业务组件用于实现一种业务流程;
获取模块,用于根据所述选择命令选择业务组件;
第二接收模块,用于接收用于对选择的业务组件的组件样式结构和业务处理逻辑结构进行修改的操作命令,其中,所述操作命令是基于待开发的特定业务场景需求输入的;
修改模块,用于基于所述操作命令修改所述选择的业务组件的组件样式结构和业务处理逻辑结构,得到所述特定业务场景的业务组件;
所述封装模块还用于按照第一子粒度对多个业务场景对应的业务程序进行拆解,得到多个第一业务流程;将从属于不同业务场景的第一业务流程进行比对,计算出相似度超过第一预设值的第一业务流程;针对按照所述第一子粒度拆解得到的多个第一业务流程,再按照第二子粒度进行拆解,得到多个第二业务流程,其中,所述第二子粒度小于所述第一子粒度;将从属于不同第一业务流程的第二业务流程进行比对,计算出相似度超过第二预设值的第二业务流程;将相似度超过第一预设值的第一业务流程和相似度超过第二预设值的第二业务流程作为所述多个业务流程,用以封装成对应的业务组件。
7.一种计算机设备,计算机设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现权利要求1至5任一项所述方法的步骤。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于:所述计算机程序被处理器执行时实现权利要求1至5任一项所述方法的步骤。
CN201810705502.2A 2018-07-02 2018-07-02 业务组件式开发方法、装置、计算机设备及存储介质 Active CN108958714B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201810705502.2A CN108958714B (zh) 2018-07-02 2018-07-02 业务组件式开发方法、装置、计算机设备及存储介质
PCT/CN2018/108777 WO2020006910A1 (zh) 2018-07-02 2018-09-29 业务组件式开发方法、装置、计算机设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810705502.2A CN108958714B (zh) 2018-07-02 2018-07-02 业务组件式开发方法、装置、计算机设备及存储介质

Publications (2)

Publication Number Publication Date
CN108958714A CN108958714A (zh) 2018-12-07
CN108958714B true CN108958714B (zh) 2021-08-24

Family

ID=64484754

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810705502.2A Active CN108958714B (zh) 2018-07-02 2018-07-02 业务组件式开发方法、装置、计算机设备及存储介质

Country Status (2)

Country Link
CN (1) CN108958714B (zh)
WO (1) WO2020006910A1 (zh)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110213078A (zh) * 2019-04-26 2019-09-06 深圳市珍爱云信息技术有限公司 业务平台搭建方法、装置、计算机设备和存储介质
CN110308904B (zh) * 2019-05-30 2024-02-02 杭州微时信息技术有限公司 多类型前端框架的聚合方法、装置和计算机设备
CN112416983B (zh) * 2019-08-21 2022-12-06 中移(苏州)软件技术有限公司 一种数据处理方法及装置、计算机可读存储介质
CN110737426B (zh) * 2019-09-06 2022-05-06 未鲲(上海)科技服务有限公司 程序块创建方法、装置、计算机设备和存储介质
CN110780868A (zh) * 2019-10-10 2020-02-11 北大方正集团有限公司 基于组件化模板的网站开发方法、装置、设备和存储介质
CN110851114A (zh) * 2019-10-24 2020-02-28 山东中创软件工程股份有限公司 一种业务系统开发方法、装置及电子设备和存储介质
CN111190578B (zh) * 2019-12-20 2023-03-21 天阳宏业科技股份有限公司 一种可定制的流程作业开发系统
CN111459493A (zh) * 2020-03-26 2020-07-28 杭州指令集智能科技有限公司 一种基于组件编排的编程方法、装置及设备
CN113590087A (zh) * 2020-04-30 2021-11-02 深圳中砼物联网科技有限公司 快速开发软件的方法、计算机设备、及存储介质
CN111625220A (zh) * 2020-05-26 2020-09-04 北京思特奇信息技术股份有限公司 一种页面组件的自动组装方法、系统、装置和存储介质
CN112416318B (zh) * 2020-11-03 2021-10-08 前海飞算云智软件科技(深圳)有限公司 微服务开发方法、装置、存储介质及电子设备
CN113205304B (zh) * 2021-04-23 2023-06-23 平安科技(深圳)有限公司 业务流程配置方法、装置、设备及存储介质
CN113110963A (zh) * 2021-04-28 2021-07-13 北京京东拓先科技有限公司 业务处理方法、业务处理装置、电子设备及可读存储介质
CN113256180B (zh) * 2021-07-07 2022-05-27 杭州实在智能科技有限公司 一种基于机器学习的客服工单信息智能动态加载方法和系统
CN113703753B (zh) * 2021-07-19 2023-06-09 青岛海尔科技有限公司 用于产品开发的方法、装置和产品开发系统
CN113467774B (zh) * 2021-07-30 2024-01-30 北京鼎普科技股份有限公司 一种web端业务软件开发框架及方法
CN113792093A (zh) * 2021-08-25 2021-12-14 通号城市轨道交通技术有限公司 信号系统接口业务创建和执行方法、装置和电子设备
CN113742615A (zh) * 2021-09-13 2021-12-03 国泰君安证券股份有限公司 实现动态数据组件应用的系统及方法、装置、处理器及其计算机可读存储介质
CN115857935A (zh) * 2023-02-15 2023-03-28 北京微吼时代科技有限公司 独立于框架的前端开发方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104407783A (zh) * 2014-10-30 2015-03-11 北京思特奇信息技术股份有限公司 一种界面信息组件化显示方法及系统
CN106775617A (zh) * 2016-11-09 2017-05-31 深圳市中润四方信息技术有限公司 一种应用软件的业务逻辑配置方法及配置系统
CN107563714A (zh) * 2017-07-17 2018-01-09 北京慧点科技有限公司 业务流程图生成的方法及装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090125553A1 (en) * 2007-11-14 2009-05-14 Microsoft Corporation Asynchronous processing and function shipping in ssis
CN104899015A (zh) * 2014-03-07 2015-09-09 上海高达星软件系统有限公司 一种业务组件管理系统及其方法
CN107678740A (zh) * 2017-10-26 2018-02-09 福建星瑞格软件有限公司 一种ui业务组件的封装方法及计算机设备

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104407783A (zh) * 2014-10-30 2015-03-11 北京思特奇信息技术股份有限公司 一种界面信息组件化显示方法及系统
CN106775617A (zh) * 2016-11-09 2017-05-31 深圳市中润四方信息技术有限公司 一种应用软件的业务逻辑配置方法及配置系统
CN107563714A (zh) * 2017-07-17 2018-01-09 北京慧点科技有限公司 业务流程图生成的方法及装置

Also Published As

Publication number Publication date
WO2020006910A1 (zh) 2020-01-09
CN108958714A (zh) 2018-12-07

Similar Documents

Publication Publication Date Title
CN108958714B (zh) 业务组件式开发方法、装置、计算机设备及存储介质
CN111061475B (zh) 软件代码生成方法、装置、计算机设备和存储介质
CN107632827B (zh) 应用的安装包的生成方法及装置
CN106557307B (zh) 业务数据的处理方法及处理系统
CN110162344B (zh) 一种隔离限流的方法、装置、计算机设备及可读存储介质
CN110895471A (zh) 安装包生成方法、装置、介质及电子设备
CN114240358A (zh) 实现自定义业务流程的方法、装置、设备及介质
CN111104158A (zh) 一种软件打包的方法、装置、计算机设备及存储介质
CN114327374A (zh) 业务流程的生成方法、装置及计算机设备
CN112882769B (zh) 技能包数据处理方法、装置、计算机设备和存储介质
CN113987337A (zh) 基于组件化动态编排的搜索方法、系统、设备及存储介质
CN109766123A (zh) 应用程序封装方法及装置
CN113094046A (zh) 用于产品页面开发的方法、装置及终端
CN111988429A (zh) 算法调度方法以及系统
CN116599881A (zh) 云平台租户建模测试的方法、装置、设备及存储介质
CN109582411A (zh) 图形用户界面生成方法、装置、计算机设备及存储介质
CN114115967A (zh) 业务数据处理方法、装置、计算机设备和存储介质
CN110532533B (zh) 表格精度配置化方法、装置、计算机设备以及存储介质
CN114218261A (zh) 数据查询方法、装置、存储介质以及电子设备
CN113741868A (zh) 业务计算任务处理方法、装置、计算机设备和存储介质
CN111552510A (zh) 文件构建方法及装置、电子设备、计算机可读存储介质
CN109361719B (zh) 一种基于微服务的操作系统SaaS应用自动整合方法
CN112748947A (zh) 系统的配置方法、装置、存储介质及电子设备
CN106990997B (zh) 服务调用方法和装置
US20230385056A1 (en) Removing inactive code to facilitate code generation

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
GR01 Patent grant
GR01 Patent grant