首页> 中国专利> 一种结合中台架构理论的软件低代码开发系统及开发方法

一种结合中台架构理论的软件低代码开发系统及开发方法

摘要

本发明涉及软件开发领域,具体涉及一种结合中台架构理论的软件低代码开发系统及开发方法;所述软件低代码开发系统包括作为沉淀中台能力场所的研发物料仓库,作为消费中台能力场所的低代码开发平台,作为前端能力中台化载体的页面设计单元,作为中台能力技术底座的研发服务单元以及中台控制单元;本发明通过将低代码开发模式、中台架构理论以及DevOps工具进行结合,不仅有效提高了企业的研发效率,还为低代码开发人员提供了明确的分工边界;通过将业务包装为功能包并将其叠加实现系统开发,有效解决了可用性与实用性的矛盾,且无需增加开发成本就可极大减少重复代码写入量,同时,系统中各功能模块均可进行自定义,使得该开发系统的适用范围更广。

著录项

  • 公开/公告号CN112650475A

    专利类型发明专利

  • 公开/公告日2021-04-13

    原文格式PDF

  • 申请/专利权人 广州云徙科技有限公司;

    申请/专利号CN202011520823.9

  • 发明设计人 陈新宇;崔嘉杰;郭逸重;

    申请日2020-12-21

  • 分类号G06F8/20(20180101);G06F8/36(20180101);G06F8/60(20180101);

  • 代理机构44360 深圳市道臻知识产权代理有限公司;

  • 代理人陈嘉琪

  • 地址 510000 广东省广州市黄埔区茅岗村坑田大街32号自编A栋102房

  • 入库时间 2023-06-19 10:35:20

说明书

技术领域

本发明涉及软件开发领域,具体涉及一种结合中台架构理论的软件低代码开发系统及开发方法。

背景技术

在软件工程中,低代码开发模式是一种通过拼装基础代码组件,且开发少量特殊业务代码,从而实现只编写少量代码的情况下,快速搭建软件应用的开发模式;其有两点明显的特征,第一点是组件化搭建基础应用模型,把常见、通用、基础的代码包装成通用组件,以便开发者可以快速的通过拖拉拽的方式搭建出基础的应用模型;第二点是可以根据业务需求,对该基础应用模型写入特殊的业务编码,使最终交付的软件应用可以满足业务需求。

但传统的低代码开发模式具有明显的两点局限:

一、传统低代码开发模式未能划分清楚各角色的工作边界;低代码开发模式终究还是一种开发模式,是会有编写代码的部分,是必须要有开发者角色的参与的;但市场上的很多低代码开发平台声称无需开发者配合,仅业务人员即可完成软件应用开发的流程;更有甚者提出公民开发者的理念,把业务人员或者无开发编程知识背景的人员称为公民开发者,混淆开发者概念和开发流程;传统低代码开发模式并没有准确的划分清楚非开发者的工作边界,这会导致低代码开发实践的时候各角色的工作任务相互交叉或者无法进行下去。

二、传统低代码开发模式存在易用性与适用性的矛盾;低代码开发的特征是把基础代码包装成通用组件,而基础组件的标准范围是根据低代码开发模式的使用者决定的,这将会出现一个奇怪的矛盾,如果组件的业务粒度小,则低代码开发适配的使用场景更多,但开发过程会变得复杂;如果组件的业务粒度大,则低代码开发适配的使用场景更少,但开放过程会变得简单;传统的低代码开发模式没有办法提供一种标准来平衡易用性与适用性的矛盾,导致传统低代码开发过程中容易出现开发流程既复杂且使用场景少的情况,未能发挥低代码开发模式的优势。

因此,设计一种能明晰角色工作边界且平衡易用性与适用性的结合中台架构理论的低代码软件开发系统及开发方法对本领域来说是非常关键且必不可少的。

发明内容

本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种结合中台架构理论的软件低代码开发系统及开发方法,克服了现有技术中角色工作边界不明确且存在易用性与适用性矛盾的缺陷。

本发明解决其技术问题所采用的技术方案是:提供一种结合中台架构理论的软件低代码开发系统,其优选方案在于,所述软件低代码开发系统包括:

研发物料仓库,其作为沉淀中台能力的场所用于存储和读取企业开发过程中所需要的研发物料;

研发服务单元,其作为中台能力的技术底座用于提供基础研发服务并为基础研发服务提供配置服务;

低代码开发平台,其作为消费中台能力的场所用于提供传统低代码开发服务,其与系统内各单元连接以提供信息中转服务;

页面设计单元,其作为前端能力中台化的赋能载体,其与低代码开发平台连接用于提供前端页面可视化编辑服务;

中台控制单元,与低代码开发平台连接且用于提供中台能力编排服务和页面资源管理服务。

其中,较佳方案为:所述研发物料的类型包括标准应用、功能包、连接器、适配器、脚手架、代码生成插件以及中间件中的一种或多种。

其中,较佳方案为:所述低代码开发平台包括用于根据脚手架插件快速搭建对应技术框架代码骨架的初始化应用模块、用于数据源处理及元数据管理的数据管理模块、用于组件化搭建的功能包叠加模块、用于生成业务代码的代码生成模块以及用于扫描并上报资源的资源上报模块。

其中,较佳方案为:所述页面设计单元包括用于提供前端组件的前端组件库模块、用于对前端组件进行页面可视化编辑的渲染模块以及用于对组件参数进行配置的参数配置模块。

其中,较佳方案为:所述基础研发服务包括应用工程创建、代码仓库托管、持续集成、持续部署以及环境配置管理中的一种或多种。

其中,较佳方案为:所述中台控制单元包括用于对目标应用中被组装的功能包能力进行编排的业务编排模块以及用于对目标应用页面进行菜单匹配和权限分配的页面资源管理模块。

为解决现有技术存在的问题,本发明还提供一种结合中台架构理论的软件低代码开发方法,其优选方案在于,所述软件低代码开发方法具体包括以下步骤:

通过低代码开发平台以及中台控制单元创建应用工程并进行基础建模;

通过低代码开发平台对应用工程进行元数据管理并生成业务代码;

通过低代码开发平台以及页面设计单元创建应用页面并对其进行编辑;

通过研发服务单元对编辑好的应用页面和应用工程再次进行构建打包和自动部署到对应的环境中。

其中,较佳方案为,所述创建应用工程以及基础建模具体包括以下步骤:

通过低代码开发平台调用研发服务单元的基础研发服务,创建应用工程;

通过低代码开发平台读取研发物料仓库中的功能包并下载至该应用工程对应的代码仓库中;

通过低代码开发平台扫描该功能包并将其对应的能力规则信息上报至中台控制单元;

中台控制单元根据业务需求对该应用工程进行能力配置,以完成基础建模。

其中,较佳方案为,所述元数据管理以及生成业务代码具体包括以下步骤:

通过数据管理模块创建非通用业务中的业务实体,并编辑其实体属性;

通过代码生成模块生成该实体的基础接口代码;

根据基础接口代码编写所需的业务代码。

其中,较佳方案为,所述创建应用页面并对其进行编辑具体包括以下步骤:

通过低代码开发平台创建应用页面并将该页面的标时信息发送至页面设计单元;

通过页面设计单元对该应用页面进行可视化组装和编辑,并将编辑完成后的页面内容数据存储在目标应用的基础数据中心。

本发明的有益效果在于,与现有技术相比,本发明通过设计一种结合中台架构理论的软件低代码开发系统及开发方法,将低代码开发模式、中台架构理论以及DevOps工具进行结合,有效提高了企业的研发效率;且该方法步骤分工明确,为低代码开发人员提供了明确的分工边界;同时,通过将业务包装为功能包,通过功能包叠加实现系统开发,有效解决了可用性与实用性的矛盾,且该方案是在应用开发的原有开发流程基础上提供减负的一键操作,无需增加开发成本就可极大减少重复代码写入量,并且,系统各功能模块均可进行自定义,使得该开发系统的适用范围更广。

附图说明

下面将结合附图及实施例对本发明作进一步说明,附图中:

图1是本发明中的一种中台架构理论的软件低代码开发系统的结构示意图一;

图2是本发明中的一种中台架构理论的软件低代码开发系统的结构示意图二;

图3是本发明中的一种中台架构理论的软件低代码开发系统的结构示意图三;

图4是本发明中的一种中台架构理论的软件低代码开发系统的结构示意图四;

图5是本发明中的一种中台架构理论的软件低代码开发方法的流程图一;

图6是本发明中的一种中台架构理论的软件低代码开发方法的流程图二;

图7是本发明中的一种中台架构理论的软件低代码开发方法的流程图三;

图8是本发明中的一种中台架构理论的软件低代码开发方法的流程图;

图9是本发明中的一种经销商管理后台系统的开发流程图。

具体实施方式

现结合附图,对本发明的较佳实施例作详细说明。

如图1-图4所示,本发明提供一种中台架构理论的软件低代码开发系统的最佳实施例。

一种结合中台架构理论的软件低代码开发系统,并参考图1,所述软件低代码开发系统包括:

研发物料仓库1,其作为沉淀中台能力的场所用于存储和读取企业开发过程中所需要的研发物料;

低代码开发平台2,其作为消费中台能力的场所用于提供传统低代码开发服务,其与系统内各单元连接以提供信息中转服务;

页面设计单元3,其作为前端能力中台化的赋能载体,其与低代码开发平台连接用于提供前端页面可视化编辑服务;

研发服务单元4,其作为中台能力的技术底座用于提供基础研发服务并为基础研发服务提供配置服务

中台控制单元5,与低代码开发平台连接且用于提供中台能力编排服务和页面资源管理服务。

具体的,所述研发物料仓库1是一个企业级内部的研发资产仓库,用于将标准的通用能力进行存储,以备后续新应用开发时随时调取使用,该企业的开发者可以在研发物料仓库看到当前企业所拥有且提供内部复用的研发物料,并且可以根据自己的需要自由的存储或读取该物料到本地环境中,研发物料仓库可以比喻成该企业的研发武器库,可以把自身打造好的研发武器存储在里面,也可以提供给开发团队随时使用,有效解决了可复用的研发能力如何沉淀和消费问题;其中,所述研发物料的类型包括但不仅限于标准应用、功能包、连接器、适配器、脚手架、代码生成插件和中间件;在现有的低代码平台相关竞品中,部分竞品会拥有插件市场,目的是提供应用快速增加新的功能;但该插件市场中的插件类型单一且只能帮助业务能力增强;而本实施例中的研发物料仓库是立足于企业所有的研发物料,开发人员可通过研发物料仓库快速调用代码叠加、生产代码模板、脚手架、数据连接器、三方插件等多种类型研发物料;并且,所述功能包是指代码物料,其包括前端功能包以及后端功能包;研发物料仓库中的代码物料均以功能包的形式存储,开发人员在调用时只需将功能包进行叠加即可完成复杂的定制化业务功能开发,不仅有效简化了开发流程,还极大减少了代码写入,进而有效提高了开发效率。

其中,所述基础研发服务包括应用工程创建、代码仓库托管、持续集成、持续部署以及环境配置管理中的一种或多种;所述研发服务单元4作为中台能力的DevOps技术底座,提供中台之旅过程中的DevOps能力,以保证在整个研发过程中,可以更智能化、自动化的处理各种研发服务的配置,进而提高整体研发效率。

进一步地,并参考图2,所述低代码开发平台2包括用于根据脚手架插件快速搭建对应技术框架代码骨架的初始化应用模块21、用于数据源处理及元数据管理的数据管理模块22、用于组件化搭建的功能包叠加模块23、用于生成业务代码的代码生成模块24以及用于扫描并上报资源的资源上报模块25。

具体的,所述低代码开发平台是消费中台能力的场所;它提供传统低代码开发服务,且作为其他单元系统的信息中转服务;低代码开发平台是整个开发系统的核心单元,起到承上启下的作用;其主要提供基于脚手架初始化应用、元数据管理、业务代码生成和资源扫描上报的功能;并且具有消费研发物料仓库中各类型中台功能包的能力,也就是说,可以通过低代码开发平台调用研发物料仓库中的功能包;通过低代码开发平台来呈现传统低代码开发模式核心的数据源处理和组件化搭建功能,对应元数据管理和功能包叠加的模块,以实现业务对象的定义和集成代码复用的能力。

在本实施例中,低代码开发平台根据对开发流程的进一步剖析,提供了一些创新的低代码开发功能模块;例如初始化应用模块,其主要基于脚手架初始化应用的功能,提供用户可以快速的根据脚手架插件搭建对应技术框架的代码骨架,且这个脚手架可以开发者自定义;又如代码生成模块,其具有业务代码生成的功能,通过不同的业务代码生成模块,可以对不同的实体对象生成符合模块规范的增删查改接口代码,一键生成基础业务代码;极大的降低开发者常见的基础代码编写时间;同时,该低代码开发平台不仅仅提供了标准规范的代码快速生成能力,还提供了定义标准规范的能力,能通过自定义脚手架和自定义代码生成模板,适配所有主流开发语言和技术框架。

进一步地,并参考图3,所述页面设计单元3包括用于提供前端组件的前端组件库模块31、用于对前端组件进行页面可视化编辑的渲染模块32以及用于对组件参数进行配置的参数配置模块33。

具体的,所述页面设计单元3是前端能力中台化的赋能载体;它提供基于灵活前端体系的可视化页面编码的能力,其主要由前端组件库模块、渲染模块以及参数配置模块组成,开发者可以从前端组件库模块中,通过拖拉拽前端组件到渲染模块内,并通过参数配置模块对组件参数进行配置,以实现快速页面编码的效果。

传统的低代码开发平台均会有类似的可视化页面设计功能模块,但是本实施例中的页面设计单元3创新的提供了一套可中台化定义前端能力的规范体系,即渲染体系,其核心是页面设计单元中的渲染模块可以根据不同的前端技术框架进行页面可视化编辑,以实现页面设计单元满足多平台、多技术框架适配的效果,给不同的平台制作页面,例如小程序、web、快应用和PC等;开发人员可以根据规范,给不同技术框架定义不同的前端组件,通过使用中台架构理论,各组件的业务领域进行抽象化,以形成一个个通用的中台化前端组件,其有助于企业在研发过程中进行规范性的前端开发的同时减少对前端进行重复编码的过程。

进一步地,并参考图4,所述中台控制单元5包括用于对目标应用中被组装的功能包能力进行编排的业务编排模块51以及用于对目标应用页面进行菜单匹配和权限分配的页面资源管理模块52。

具体的,中台控制单元5提供对研发物料进行能力编排和页面资源管理的服务,其主要分为业务编排和页面资源管理两个模块;在业务编排模块中,可以对目标应用中被组装的研发物料能力进行编排,所述研发系统会把可复用的基础代码包装成功能包,一般一个功能包可以解决某个特定类型的场景,例如登录场景;功能包会预先编写好该场景中常见的业务规则,例如登录场景中的账号密码登录规则、第三方扫码登录规则等;而中台控制单元能设置该应用最终选择使用怎样的业务规则,例如选中第三方扫描登录规则且设置仅支持钉钉扫码登录,不支持微信登录等;在页面资源管理模块中,可以对目标应用中的页面进行菜单匹配和权限分配;可以选择各页面对接哪些菜单,以及给对应菜单进行命名;也可以分配哪些角色拥有该菜单的浏览权限等。

如图5-图8所示,本发明提供一种结合中台构架理论的软件低代码开发方法的最佳实施例。

一种结合中台架构理论的软件低代码开发方法,参考图5,所述软件低代码开发方法具体包括以下步骤:

S1:通过低代码开发平台以及中台控制单元创建应用工程并进行基础建模;

S2:通过低代码开发平台对应用工程进行元数据管理并生成业务代码;

S3:通过低代码开发平台以及页面设计单元创建应用页面并对其进行编辑;

S4:通过研发服务单元对编辑好的应用页面和应用工程再次进行构建打包和自动部署到对应的环境中。

进一步地,并参考图6,所述创建应用工程以及基础建模具体包括以下步骤:

S11:通过低代码开发平台调用研发服务单元的基础研发服务,创建应用工程;

S12:通过低代码开发平台读取研发物料仓库中的功能包并下载至该应用工程对应的代码仓库中;

S13:通过低代码开发平台扫描该功能包并将其对应的能力规则信息上报至中台控制单元;

S14:中台控制单元根据业务需求对该应用工程进行能力配置,以完成基础建模。

进一步地,并参考图7,所述元数据管理以及生成业务代码具体包括以下步骤:

S21:通过数据管理模块创建非通用业务中的业务实体,并编辑其实体属性;

S22:通过代码生成模块生成该实体的基础接口代码;

S23:根据基础接口代码编写所需的业务代码。

进一步地,并参考图8,所述创建应用页面并对其进行编辑具体包括以下步骤:

S31:通过低代码开发平台创建应用页面并将该页面的标时信息发送至页面设计单元;

S32:通过页面设计单元对该应用页面进行可视化组装和编辑,并将编辑完成后的页面内容数据存储在目标应用的基础数据中心。

在本实施例中,参考图9,以创建一个经销商管理后台系统为例作详细说明。

A、创建新的应用工程

在低代码开发平台上创建两个应用,一个为前端应用,另一个为后端应用。

B、脚手架初始化应用

对前端应用进行基于前端脚手架初始化应用,对后端应用进行基于中台后端脚手架初始化应用;其中,前端脚手架和后端脚手架均可自定义。

C、后端应用叠加后端功能包

在低代码开发平台上选择后端应用,并进行后端功能包的叠加;在功能包叠加中,可以读取到当前研发物料仓库中存储的所有后端类型功能包列表,根据具体需要选择经销商管理相关的功能包,例如用户能力功能包和角色能力功能包,这两个功能包分别提供基础的用户管理和角色权限管理功能;选中这两个功能包后,点击确认叠加;则系统会把这两个功能包下载到后端应用的工程代码仓库中。

D、后端应用元数据管理

后端应用叠加了功能包后,其元数据表中会增加功能包中预设的实体;通过数据管理模块在后端应用的元数据表添加新的实体字段,例如经销商等级,以及编辑其字段属性;然后对通过用户功能包叠加后新增的预设字段,例如用户类型,进行字段属性的编辑,增加经销商类型。

E、生成业务代码

在低代码开发平台的代码生成模块中,选中后端应用,并选中刚新增的实体:经销商等级进行接口代码生成,具体为系统自动在后端应用的工程仓库中写入经销商等级的符合RSETful规范的增删查改接口代码。

进一步地,开发者通过研发服务单元提供的代码仓库托管工具,同步后端应用的工程代码到本地环境,并利用生成好的经销商登记接口代码,做一些较为复杂的代码编程;编程完成后生成业务代码并提交上传回托管的代码仓库中。

F、后端应用部署及资源上报

开发者使用研发服务单元提供的持续部署能力将后端应用部署起来,然后通过低代码开发平台自动扫描部署成功的代码仓库,识别出该应用中的后端能力并上报到中台控制台中,待后续进一步配置。

G、前端应用的页面叠加和渲染选择

通过低代码开发平台对前端应用进行功能包叠加,具体为将存储在研发物料仓库内的标准管理系统前端代码功能包叠加到前端应用中,然后再选择PC端页面的渲染体系的功能包,通过功能包叠加模块,把该渲染体系的能力代码写入到前端应用的工程仓库中。

H、创建及编辑页面

通过低代码开发平台对前端应用创建一个新页面,定义页面的名称和编码,然后进入页面设计单元,在该页面设计单元中将之前叠加进前端应用中的属于PC端页面渲染体系的前端组件中的列表、表单和搜索框组件拖动到渲染模块中,并调整好各组件的位置;然后通过参数配置模块选择对接的数据源,具体选择后端应用中已编辑好的包含经销商等级的用户列表接口,那么一个经销商用户列表就已经配置完成,最后,通过页面设计单元把当前的配置数据存储至目标应用的基础数据中心。

I、前端应用部署及资源上报

完成页面编辑后,通过研发服务单元提供的持续部署能力将前端应用部署起来,然后通过低代码开发平台自动扫描部署成功的前端应用代码仓库并识别其已叠加的静态页面数据,进一步地,通过低代码开发平台扫描基础数据中心中的新编辑的页面数据,将两者进行整合后把页面资源上报到中台控制台中,待后续进一步配置。

J、业务能力编排及页面资源配置

通过中台控制单元可以看到目标应用目前所拥有的能力,并通过其业务编排模块选择用户能力详情页,在预设的选项中选择支持经销商模式,并进行保存,其他的业务规则通用根据该操作按需选择,以实现业务能力编排。

进一步地,通过中台控制单元中的页面资源管理模块创建菜单并把前端应用中绑定的页面分配到不同的菜单中,然后对该菜单进行角色权限的配置,选择仅有经销商管理员可以看到这些菜单,最后保存所有设置即可。

K、在线浏览

完成所有部署后,可以通过中台控制单元浏览该目标应用的在线页面并进行管理操作。

以上所述者,仅为本发明最佳实施例而已,并非用于限制本发明的范围,凡依本发明申请专利范围所作的等效变化或修饰,皆为本发明所涵盖。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号