中国移动通信集团设计院有限公司黑龙江分公司
【摘 要】:在企业数智化转型的关键时期,数字设计的数字化是基础,本文提出企业级低代码平台与数字设计相结合的研究与应用。其核心旨在改变以往数字设计需求与编程逻辑的对接方式,以低代码的方式对接业务需求,从根本上改变了数字设计各类平台的开发工作,节省中间过渡环节;达到企业级,能够满足逻辑、表现形式复杂度较高,容量要求、安全可靠性要求高的企业诉求;其核心为数据驱动,与表单驱动和模型驱动不同, 企业级低代码着眼于从单纯的形式层抽象到数据层抽象的转变,以柔性的数据为抓手打造业务与数据闭环,使得应用程序能够自动适应业务需求的变化。
【关键词】:低代码;数字设计;企业级;代码生成;
引言
随着大数据、人工智能等数字技术的发展,数字已经从单纯的载体演变为重要的生产要素,数字智慧化与智慧数字化的“数智化”时代已经到来[1]。企业通过应用平台来推进数智化进程,但传统的应用开发周期长、复杂度高,研发人员要理解需求,业务人员又无法开发,越来越无法适应现代企业的发展需要。而低代码开发则不同,它即可以与传统的定制化开发一样,又能够帮助企业业务人员直接参与产品的开发流程,从而打破了传统的软件研发模式。以企业本身的数据资源定制开发出的低代码平台能达到开箱即用,企业只需要极少资源或者不用技术开发(由业务人员直接进行平台上零代码操作)就能够进行实际应用。用户只需通过“线上”操作即可创建自己的应用程序。本文通过分析通信工程勘察设计的行业数据,形成数字设计企业级低代码平台解决方案,进而研究企业低代码开发平台在数字设计中发挥的优势以及在数智化转型过程中的作用。
1低代码的演进
低代码由Forrester于2014年提出,但其理念并不新鲜,实际上从纸带打孔、到汇编语言、到高级语言,再到各种IDE、各种框架,人们始终在试图屏蔽底层的复杂性与难以理解性,通过归纳、抽象、封装,进而通过点拉拖拽及少量代码来快速完成应用程序的开发。早期的Access数据库、QuickBase、PowerBuilder等,其实都可以看作低代码的雏形。因客户需求和底层技术的不断变化,低代码形态也随之变化[2]。当下,低代码应当是指云原生的、可水平扩展的应用程序开发平台(APaaS)。
根据开发中的无码程度、应用场景、使用者,以及复杂场景适应性,可以把低代码分为传统软件开发、轻量级无代码、企业级低代码和企业级无代码等几种形态。几种形态并非是完全的取代关系,它们将在较长时间内,在不同类型、不同规模企业的不同业务场景下,具有自己的生存空间,但企业级无代码,作为“量变引起质变”的软件开发模式,因重塑了软件开发模式、企业业务增长模式、社会生产关系等,将具有越来越高的占比。
表1 低代码的不同形态-开发模式视角
典型产品形态 | 传统软件开发 | 轻量级无代码 | 企业级低代码 | 企业级无代码 |
开发模式 | 代码驱动; 早期主要通过编程IDE及工具包实现软件开发;后期, 可基于丰富的前后端开发框架、组件, 框架自生成部分基础代码 | 表单驱动;预先设定的规则,应用开发( 业务人员) 拖拉拽配置生成表单、可视化看板等 | 模型驱动;通过建立模型来定义数据关系及流程逻辑;低代码平台可自动生成软件 框架代码和基础代码 | 数据驱动;通过对具备柔性的内外部数据采集、存储、加工、使用,打造数据价值 链,驱动并支撑应用智能生成 |
无码率 | 完全代码开发 | 简单场景可无码开发复杂场景需大量代码 | 平台是无代码,但函数与系统是解耦的,支持自写代码开发 | 大部分场景不需要代码;限制代码的反向输出 |
目标客群 | 程序员需同时关注业务逻辑和底层技术的实现 | 业务人员通过简单拖拉拽 配置生成表单、 可视化看板等 | 程序员关注核心业务逻辑的实现 | 针对企业通用场景,业务人员配置生成;其余场景可通过少量代码、插件满足 |
落地场景 | 所有应用场景 | 部分特定、简单轻量场景集中在管理&分析领域 | 企业级复杂应用 | 企业级复杂应用 |
2通信工程数字化设计
通信工程勘察设计的数字化主要是进行生产管理线上化、设计资产数字化和作业方法智能化。其数字化过程主要通过应用程序、软件平台以及智能化工具[3]的开发来实现,由于通信工程的数据模型的专业性,以定制数据模型为核心的低代码平台将会大大提升通信勘察设计的数字化进程[4]。
3企业低代码平台
企业级低代码平台需要帮助用户解决以下问题:1、如何有效管理研发成本;2、如何打造一个真正适合企业的高质量产品;3、如何帮助用户快速构建低代码、高质量的开发环境。本文提出的低代码平台主要以在线表单生成、代码生成器以及工作流引擎三个核心方案来解决以上问题。
3.1在线表单设计
在线表单设计器可以使用户在Web页面上编辑并生成数据库表单,如图3.1,可以支持生成MySQL、Postgresql和Oracle等多种数据库表单。在线表单设计器提供了模板库自定义、表单设计组件库等类型的模板库:其中模板库还支持动态加载功能。在模板库中,默认设置了表单框图等元素,还支持动态缩放、动态样式、标签设置等功能。模板库中还支持多个按钮组合,按钮名称也可以是隐藏名称,同时具备权限配置等功能,这样方便用户更快速地实现一些业务功能。在线表单设计器通过Mybatis(半ORM)框架,使用简单的 XML文件或注解方式来配置和映射原生信息将POJO映射成数据库中的表和记录。在线表单设计器导入丰富的通信工程勘察设计数据模型,如图3.2,这就使用户可以创建通信工程勘察设计相关的数据表和视图,数据模型提供大量相关枚举值,用户可以快速建立符合业务需求相关数字设计平台的数据结构。
图3.1 在线表单设计
图3.2 数字设计数据模型
3.2代码生成器
代码生成器通过约定配置,根据公共的模板和数据库表信息来自动生成代码,生成的代码清单包括:controller、service、dao、mapper、entity、vue,即生成的代码包括前台(支持vue)和后台。代码生成器通过JSON配置,只提供界面编辑,生成器通过JSON解析生成代码[5],如图3.3。
图3.3 代码生成器
3.3工作流引擎
以上两方面解决了数字设计平台的数据模型低代码方案,接下来要解决数字设计的业务流程低代码化。工作流引擎是对以往工作流程和技术流程进行分析和整合,并以此为基础形成流程优化工具和解决方案,通过对企业业务的深入理解,如工作单申请、派发、转派、审核、提交等等[6],工作流引擎可以很好的运用到企业数字化进程中。本文研发的工作流引擎结合数字设计的业务流程,目的是将工作分解成定义好的任务或角色,根据一定的原则和过程来实施这些任务并加以监控,从而达到提高效率、控制过程、增强有效管理业务流程等。工作流引擎主要包括节点管理、流向管理、状态控制、流程实例管理等核心功能。对于流程设计,大家应该并不陌生,用户通过拖、拉、拽来实现流程的建模,使得流程建模变得简单,如图3.4。
图3.4 工作流流程设计
4企业级项目发布与管理
“企业级”软件平台应用结构复杂,涉及内外部资源配置,事务密集、数据量大、用户数多,对软件性能质量要求高。此外,应具备推动企业创新的附加能力。同时运营域仍需开源技术、少量代码作业来提升平台的复杂场景满足度、可扩展性、易用性等,力求项目实现业务与数据闭环的形成使应用程序能够自动适应业务需求变化,于用户侧表现出无代码状态。
因此,本文低代码平台应该具备镜像构建与代码提交的能力,通过镜像构建功能,生成docker镜像,推送到镜像仓库。通过代码提交功能,将开发的模块代码提交到代码仓库。借助于devops流水线,完成对模块的镜像构建。最后利用云平台的部署能力、调度能力、编排能力实现项目运行。
5总结
数智化变革下,企业需要快速灵活地实现各种业务和运营流程。尤其像通信勘察设计领域,对数字化的要求高、专业性强,必须构建大量的应用平台来满足不断增长的数字设计需求[7]。本文提出的低代码开发平台与传统软件开发相比,只需要少量的代码便可以实现企业的个性化需求。结合通信勘察设计专业的数据模型和业务流程,企业级低代码开发平台能够在很大程度上简化应用的研发流程,不影响应用性能的同时有效提升应用的研发效率,大大减少了开发成本。通过低代码开发平台,通信勘察设计加快了信息化和数字化,提高企业的工作效率,降低成本,加速营运资金的流动,增强管理工作,加快企业数智化转型。
6参考文献
[1]冯喆, 张强; 低代码开发平台在企业数字化转型中的应用研究,《互联网周刊》;2022(10).
[2]沈文娟; 基于业务中台技术的低代码开发平台的研究;《信息系统工程》;2022.7.20.
[3]王政;竹梦圆;武欢; 人工智能技术在通信工程数字化设计中的应用;《邮电设计技术》;2021年6期.
[4]孙硕;胡济韬; 有线传输专业数智化转型探究;《新技术新工艺》;2021年12期.
[5]张振超;吴杰;王楠; 一种Java EE平台的代码生成方法;《信息技术与信息化》;2019年10期.
[6]陈鹏飞; 通信工程勘察设计项目质量管理方法初探;《数字化用户》;2018年26期.
[7]陈玉娇; 企业数字化转型制度理论和认知理论的决策过程研究; 《科学学研究》;2021.8.
作者简介:史林(出生年月-1987.6),男,汉,河北省沧州市(省市),中级工程师,中国移动通信集团设计院有限公司黑龙江分公司,硕士。主要研究方向:计算机/通信
1