文 / 上海农商银行金融科技部 王彬 徐占海 刘文轩 何康
数字化转型在银行和金融业的重要性日益凸显,尤其是在与客户直接相关的领域。然而,银行内部管理的数字化转型工作容易被忽视,尽管这些工作对于提升整体员工工作效率和减少工作复杂性具有重要意义。银行内部管理涉及大量信息统计、数据收集和审批流程,这些程序通常相当复杂,对员工工作效率造成一定的影响。为解决这些问题并推动数字化转型,低代码开发平台提供了一种可视化编程方式,能够显著降低管理人员开发各类信息统计、数据收集和分析应用工具的难度。通过低代码平台,能够快速实现各类管理类应用,从而提升管理效率并减少基层工作人员通过传统方式(如Excel)处理信息的情况。这种转型不仅令银行内部管理更加高效,还能够释放出更多人力资源用于客户服务和业务创新,进一步推动整体业务的数字化进程。
低代码开发优势
1.降低开发门槛。低代码平台通常提供了预定义的模块和组件,用户可以通过简单的拖拽和配置完成相关功能的开发,无需深入了解复杂的编程细节,使得业务场景的开发更加简便和高效。另外,在应用部署和高可用性方面,用户不需要关注系统的底层架构、网络资源的管理以及部署细节,这些都由低代码平台的建设方进行统一规划和运维,有效降低了低代码应用的运维难度,同时提升了应用的高可用性。
2.实现资产沉淀。低代码开发是否便捷很大程度上取决于是否具备满足各类场景使用的组件,功能是否多样。因此,在低代码应用的开发过程中,需要持续积累和沉淀各类低代码组件,使得后续的开发过程中,低代码系统能够适应于种类繁多的业务场景。
3.落地研发规范。由低代码开发项目组逐渐完善平台功能和低代码组件,在平台和组件的开发过程中融入研发规范,例如:安全加密、数据一致性校验和防重功能等。用户在使用相关功能中,在不知不觉的过程中实现规范的落地。
低代码开发不足
1.功能相对单一。低代码开发作为一种声明式的代码,并不关心功能如何实现。其主要优点在于容易上手,可视化操作,但也存在不足,主要是其只适合用于对风格展示要求不高,性能要求一般,但需求时效性高的领域,无法较好满足逻辑复杂、页面风格丰富的业务场景开发需要。
2.社区活跃不足。目前行业中低代码的相关商业产品、开源软件繁多。但未形成高代码开发那种由Java、Python、NodeJs等开发者形成的良好的社区环境,开发人员数量也远不及传统开发人员。使用过程中若有疑问,很难通过开源社区寻找到解决方案,问题的解决依赖于使用手册的完善和开发商的支持力度。
低代码开发实施策略
1.提升底座稳定性和可扩展性。如图所示,低代码应用的部署可以分为独立部署和依托平台底座部署两种方式。在主要的应用场景中,依托平台底座进行部署更为简便快捷,让开发人员无需关注应用运维相关内容。因此,平台底座的稳定性和可扩展性至关重要。结合云原生技术,可基于微服务技术进行底座开发和K8S的部署方式,实现底座支持能力和小应用的弹性伸缩能力。通过统一日志收集和监控对接,实现小应用运行状态的实时监控。
2.高低代码融合满足更多场景。低代码开发平台往往基于配置文件对低代码应用进行描述,在应用运行时再通过配置文件的解析渲染出对应的界面和调用相关基础功能。这种方式受限于基础组件功能,针对组件不具备的样式、风格则无能为力。上海农商银行低代码开发平台通过直接将组件转化为源代码的方式实现功能展示,针对特殊场景应用,可以直接修改源代码,满足各类场景需求。针对后端开发场景,除提供对接外部API、代码块、逻辑编排等方式,还可以通过可视化IDEA的展示方式,基于高代码开发方式满足不同场景的开发需求。
3.兼容两类主流低代码设计模式。根据使用者的不同,低代码开发有两种主要的设计思路,分别是表单驱动和模型驱动。其中表单驱动的实现方式,通常为零代码的开发方式,通过拖拽方式,基于表单驱动,自动实现后端数据存储等相关功能。基于模型驱动的方式,则可以自由设计软件的数据模型,能够承载更多的资源和复杂的业务逻辑。上海农商银行低代码平台在实践过程中,兼具表单驱动和模型驱动的优势,在项目开发的前期可以通过表单驱动快速设计原型界面,随着功能越来越完善,支持转化为源码模式,通过可视化IDEA方式基于模型驱动进行开发。
低代码开发管理策略
1.明确功能定位。为统一行内研发技术栈,提升行内研发效率,通过技术主线规划,针对不同的领域规划了基础服务能力和不同的开发框架。低代码开发平台主要面向行内内部管理类功能、无专业系统承接的功能进行统一管理,助力行内管理数字化转型。
2.提升开发能力。低代码应用的开发有需求方自行开发、低代码项目组开发和合作开发三种方式。针对不同场景,采用不同模式进行开发,逐步提升需求方的开发能力,满足各类需求。在合作开发和低代码项目组开发过程中逐渐积累常用功能,不断丰富平台技术和业务组件。
3.助力系统运维。低代码开发平台由平台管理方负责运行维护,如图所示。低代码应用可以支持一键式发布到不同的测试环境;可以根据行内研发规范通过对接DevOps平台实现一键发布至生产环境,实现小应用的敏捷发布。
图 低代码开发部署方案和功能示意
4.提升复用程度。低代码开发能力的提升主要体现在功能的复用程度,上海农商银行在低代码开发的实践过程中,从组件商城和应用商城建设两个方面提升行内低代码功能复用程度。其中组件方面,在开发过程中强化开发人员组件化开发认识,将常用的功能开发为低代码组件,实现插拔式的功能实现。例如通过对接行内现有AI技术,将OCR识别、智能语音封装成成熟的技术组件,通过拖拉拽的方式便捷地用于低代码应用的开发过程中,促进行内数字化转型智能化。商城建设方面,鼓励业务方将应用发布至应用市场,供其它开发人员复用,在现有应用基础上做优化后,满足自身业务需求。
低代码开发应用效果
上海农商银行低代码开发平台首先在科技部门内部推广使用,目前主要用于实现内部管理功能。通过低代码应用的开发,提升了信息收集统计的效率,减少了手工操作Excel和纸质文件。在任务派发过程中,通过流程自动化实现任务下发,减少传统管理流程中需要指定对接人和任务指派的过程。所有过程资产均在系统中进行留存,减少人为线下沟通收集信息存在遗漏的问题。
低代码开发前景展望
面向未来,上海农商银行将在总结现有经验的基础上,将进一步拓展低代码平台应用场景,提升低代码平台技术水平。
1.拓展应用场景方面。首先,通过集成行内统一移动门户扩展低代码平台在移动端场景的使用;其次,从科技部门扩展到总行业务部门再面向全行推广使用,积累更多的特别是分支行营销宣传相关领域的使用场景;最后,推广低代码和业务系统融合使用,针对部分系统的扩展功能,在缺乏前端技术人员的情况下,可以结合低代码开发平台前端能力,实现系统旁路功能快速扩展。
2.提升技术水平方面。首先,增强基础功能对接,特别是通过可视化组件和配置方式实现与大模型、知识库等基础功能的对接,实现技术能力扩展;其次,完善低代码应用运行稳定性监控预警功能,保障小应用稳定运行;最后,持续落地标准规范,针对行内数据治理、安全治理和开源治理等相关要求,通过优化低代码开发流程、提升基座能力,落实相关管理要求。
(此文刊发于《金融电子化》2024年9月下半月刊)
新媒体中心
主任 / 邝源
编辑 / 姚亮宇 傅甜甜 张珺 邰思琪