Gartner2022年重要战略技术趋势中提出了组装式研发的理念,组装式研发是一种软件开发方法,其核心在于“封装业务能力”(PBC),将软件系统划分为多个独立的模块和组件,开发人员可以通过组合和配置这些模块和组件来构建软件系统。
中国工商银行软件开发中心(以下简称“工行软件开发中心”)作为中国信通院《组装式应用开发平台系列标准》的贡献单位,遵循传统Pro Code、Low Code、No Code三层组装式研发路径,结合新兴的AI Code理念,构建行内组装式研发体系,助力金融产品快速创新,其体系化的思考与实践可作为金融生态提效的参考。
图1:组装式研发生态建设思路
1、ProCode标准资产建设,推进资产复用
ProCode指的是一种在程序编码过程中,通过抽象出最佳的编码实践,形成可复用的标准组件或者代码片段,支持开发人员快速构建高质量应用系统的研发模式。工行软件开发中心从代码管理和工具建设两个角度践行ProCode研发模式,形成了拥有2000多个构件及代码片段资产的企业级代码资产库,复用度已经达到2万次以上。
代码管理方面,发布可复用代码管理平台,推动企业代码资产共享共建。一是完成组件、代码和模板等全类型代码资产纳管能力建设,形成MAVEN、NPM和移动端等11项代码资产纳管标准;二是重点关注前端组件和信创转型等关键领域,加强可复用代码的建设与推广使用,形成资产专区;三是依托代码自动扫描工具和用户的主观评价,建立可复用代码资产复用效能评价体系,为资产建设营造竞争氛围。
工具建设方面,上架一体化开发集成IDE插件,基于研发场景对研发流程进行了重构,实现配套工具链的深度整合,通过提供覆盖代码提交、资产复用、接口开发、环境运维、研发自测以及研发工作台等六大一站式服务能力,为开发人员打造了一个便捷高效的研发环境。同时,通过研发行为数据持续洞察,不断挖掘研发流程中的断点和堵点,以微洞察、微提升和微循环的方式,实现了数据驱动的研发模式数字化转型。这种数字化的新生态,让开发人员能够更加专注于应用编码,并为大家营造了一个沉浸式的研发体验。
图2:一体化开发集成IDE能力视图
2、LowCode低代码可视化组装,增强交互体验
LowCode主要聚焦定制性弱、复用性高的业务场景,通过屏蔽底层技术细节,从实体模型设计出发,快速生成增删改查页面及后端逻辑,从而实现前后端页面的快速组装,降低用户体验研发门槛。工行软件开发中心将低代码能力和用户体验专业设计相结合,在行内推广代码平台、简搭·前端设计管理与共享平台,推进LowCode可视化组装研发,将专业前后端设计研发能力赋能一线开发。
低代码平台:通过简单的拖拽和拼接等低代码方式进行开发,使得各种经验水平的开发人员都能够通过直观的图形化界面,利用可复用的资产组件、模型驱动以及逻辑编排等核心功能来创建Web和移动端(未来规划)应用。这不仅减轻了开发人员重复低效的代码编写工作负担,还简化了研发过程,使开发人员能更专注于业务逻辑的开发。在简单增删改查等应用场景下,单个页面的研发效率预计可提升30%。
图3:低代码平台拼搭能力展示
简搭·前端设计管理与共享平台:结合设计交互增强和低代码能力,提供了四大能力:标准区块、微前端、素材共享和低代码工具。通过可视化方式,实现设计素材的共享预览,用户可以自由组合基础组件和标准区块,省去页面元素编辑步骤,从而以所见即所得的形式完成功能模块的页面模板开发工作。目前,平台月访问量已经突破了6000+。
3、NoCode积木式拼搭,推进快速上线
NoCode通过流程标准化和可视化,实现业务场景的无代码配置化上线,提高应用系统灵活性,帮助企业更好地适应快速发展的市场需求。工行软件开发中心基于行内产品线节点部署现状,制定适合行内系统架构的构件标准,搭建组装平台,并在金融产品线进行实践试点,取得初步成效。
组装平台根据系统功能的重要程度进行分级归纳,形成了UI、APP、前置、引流、基础服务、交易、管理、异步、批量等9类可组装节点能力视图。重点面向金融生态云场景,完成生态认证中心、权限中心、流程中心等三大基础能力建设,通过复用现有资产完成AMC监控、数据脱敏等技术积木块的建设,支持了多种标准工程搭建脚手架。在通用缴费云平台和通用资金监管平台建设中,成功将场景级业务服务代码提效30%,新工程框架搭建提效60%。
图4:组装式节点和业务组件
4、AICode智能生成式编码,实现代码补全
AICode主要基于人工智能大模型,提供代码推演预测、代码自动生成和智能代码检索等功能,帮助开发人员实现高效、自动化的智能研发。工行软件开发中心以 IDE为触点,聚焦智能代码补全、单元测试自动生成、代码异常检测三大AIGC应用场景,打造智能研发助手,探索智能研发新方向。
智能代码补全模型行内定制化训练:利用TB级优质代码作为训练素材,结合北大科研团队前沿研究成果,与关联公司技术团队初步完成行内定制化训练模型验证,旨在提升代码智能补全采纳率。
单元测试自动生成解决方案:采用智能遗传算法实现单元测试自动生成能力,助力存量代码单元测试案例的补全,已自动生成超过7万行单元测试案例。
代码异常检测与代码转自然语言:利用大模型识别代码潜在问题并给出修复建议,支持代码语义、代码逻辑、参数配置等静态代码扫描无法识别的问题类型。此外,还提供交互对话式的代码注释生成和代码含义解释能力,协助开发人员读懂老旧代码,协助开发人员检测代码近千次。
图5:智能单元测试生成
未来,组装式研发需要突破的两个关键点是:一是通过数据融合,与业界先进的大模型场景应用经验相结合,提升智能化辅助决策能力,并增强组装式和智能化研发能力。二是借鉴平台工程理念,逐步完善金融全业务线和全场景的组装能力搭建,以满足金融企业日益增长的新需求。