DWF 低代码开发技术及其在数字化运营和运维平台建设中的应用
前言
2019 年以来清华大学软件学院、大数据系统软件国家工程实验室与云智慧合作,推进大数据系统技术和软件在智能业务运维领域的应用。
本文介绍了“清华数为”大数据应用低代码开发工具 DWF 的特点,分享了 DWF 在基于大数据的数字化业务运营和运维平台建设中运用的实际案例。
随着数字化浪潮的到来,新一代信息技术与业务深度融合的趋势不可逆转,越来越多的企业开始通过业务线上化来收集沉淀自己的数据资产,并迫切期望通过具体应用将数据资产转化成实际价值。然而,面对层出不穷和不断演化的技术手段,用户在基于大数据建立有效的应用软件或系统时往往显得无所适从,开发资源往往捉襟见肘。
与此同时,用户系统和应用所产生的运维数据也呈现大数据的 4V 特征(体量巨大、数据类型繁多、价值密度低、处理速度快),如何基于运维大数据快速构建有效的运维系统,保障 IT 基础设施和各类应用稳定运行,提升 IT 服务管理水平,是企业必须要面对的挑战。
通过运用低代码技术,提高 IT 开发和运维人员效率,让非 IT 背景的领域工程师、业务专业人员也能快速开发出面向具体应用场景的智能应用软件,对于挖掘数据资产价值、提升智能业务运维水平、加强组织数字孪生建设等具有实际意义。
数字化转型中大数据应用开发面临的挑战
让软件的用户最大限度地参与到软件开发中,一直以来都是外界对软件的期望。从软件工程的概念被提出至今,人们在这个方向上的努力就一直没有停止过。进入本世纪第二个十年,通过数字化的手段实现转型已经变成业内共识,企业对用户参与软件开发的需求更加迫切。
根据一项针对百余家企业的调查显示:按照需求明确程度和变化频繁程度,企业谋求数字化转型过程中的典型应用大致可以分成四类,分别是遗留系统升级、新型客户参与模式、数字化运维提效、其他创新类应用[1, 2]。
企业数字化转型中应用项目的分类
遗留系统升级处在最下层,需求明确,不会大量变更,主要是希望运用新的技术手段(例如:移动互联网、云计算)复刻出原来已经存在的业务,从而提升自身运营效率。
遗留系统升级之上是新型客户参与模式和数字化运维提升效率的应用,这两类应用的需求相对不明确、变化频度更高,主要是谋求在保留核心业务的基础上,通过数字化技术升级应用形态。相对而言,属于较为可控,又容易看到效果的渐进式转型。
最上层的称为其他创新类应用,其典型特点是需求不明确,需要进行频繁的反复修改。一般而言成功的概率非常低,但是企业不得不进行尝试。
上述需求相对不明确、变更频度快的应用项目实施,往往会面临以下挑战或问题:
• 市面上没有现成的应用程序可以直接购买。受限于行业特性以及规模,目前不太会有开发人员为此专门开发应用;
• 现成的解决方案过于复杂或过于昂贵。需要购买昂贵的传统信息化软件,但是并不能有效解决问题;
• 为客户提供的系统需要定制的内容较多。每个客户系统有巨大的差异性,大量需求要定制开发,不得不雇佣昂贵的开发人员;
• 用户希望未来可低成本掌控数字化发展能力。希望降低软件从业人员的参与成本。
清华数为 DWF 大数据应用开发工具及其特点
在“低代码”技术产品崛起的同时,国内的同类产品也纷纷出现。和国外的企业用户相比,国内企业用户的市场在现阶段存在差异,总结起来表现在以下几个方面:
第一,企业“自给自足”的核心理念不会改变。由于企业自身业务限制或者行业法规决定,主要应用必须在内部部署使用。
第二,“平台热”催生的“应用荒”大量存在。随着轰轰烈烈的大数据平台或者数据中台的建设,企业花大力气收集了大量数据后才发现数据没有“收藏价值”,需要靠应用输出“使用价值”,而搭建应用的工作没有人做。
第三,行业应用的复杂程度超出想象。这并不是简单的一个 APP 就能解决,也不是一个“开发高手”就能解决的,因此需要长期的迭代,并希望能够有所沉淀。
最后,企业也不希望放弃将部分应用部署到公有云上的可能性。
基于上述观察判断,大数据系统软件国家工程实验室启动了面向大数据系统的低代码开发工具的开发项目,名为“清华数为”大数据应用开发工具(DataWay Framework,简称 DWF)。该项目是清华数为大数据软件栈的核心构件之一,目的是为了支持企业基于大数据系统实现应用软件的低代码开发。
DWF 具有如下特点:
一站式:DWF 自身追求尽可能简单的结构,从而使其既能以一个独立安装包在非联网环境下的普通 PC 上部署启动,又可以在云计算或者容器环境下部署,从而满足企业“私云公用”的对外平台搭建应用开发服务的需求,又可以并入容器管理器中成为微服务。
可配置:采用模型驱动(而非代码驱动)的设计理念,通过组织建模、数据建模、表单建模、功能操作和权限控制直接建模产生系统,避免产生中间形态的代码和由此引发的变更问题,降低后续测试、维护的成本。
表单建模示例
组件化:允许在线将全部或者部分模型从系统中导出独立的模型包组合到其他 DWF 系统中,既降低了开发技术门槛,又保证了一致的输出结果,从而方便即时交付系统,即改、即用,快速响应变更需求。
低码量:基于模型开展有针对性的扩展编码工作,减少总编码量,降低开发难度。配合敏捷定制功能,大幅度减少了代码量和系统缺陷产生的可能。当出现难以实现的复杂场景的时候,利用 SDK 进行二次开发,以最小限度优雅地降级到传统开发模式上。
在上述特点的支持下,基于 DWF 组织复杂应用时的工作模式如下图所示。领域专家和现场实施工程师可以使用现成的行业模型包起步,通过无代码定制、低代码开发的方式快速形成符合实际业务的应用系统;只有在必要的时候才由专注具体技术的程序员介入实现高难度开发,从而通过分流需求、分级技能的方式降低应用开发的成本,缩短响应周期。
DWF 运用的典型案例
(一)某运营商 ICT 项目管理系统快速开发
ICT 业务是运营商更好地服务于政企客户,实现转型和谋求长期发展的关键。为加强 ICT 项目管理,某省运营商委托云智慧定制化开发一套项目管理系统,包括资料管理、维表管理、权限管理、数据分析、告警管理、报告报表、后评估管理等功能模块,分 Web 端、手机端。
该项目中云智慧将 DWF 用作系统开发平台,快速实现客户的系统开发需求,通过 DWF 与数据中台对接,实现实时的业务分析、报表展示、智能告警,直接促进该运营商的 ICT 业务数字化运营与管理。
(二)某电力企业 3D 数字孪生可视化编排系统开发
实验室与云智慧合作,开发基于 DWF、IoTDB、AutoVis 等大数据系统软件组件的 3D 数字孪生可视化编排系统 SmartScene。该系统可实现依赖于无人机航拍技术及街景拍摄技术完成空间场景的素材获取,使用 Smart3D 完成模型制作;通过 NavVis 测绘工具完成室内空间的数字化及 3D 模型,以 CAD/3dMax 及 BIM 技术为主,以拖拽形式进行精细化单体场景的建模;以知识库知识辅助智能机器人对相关 BIM 信息查询,并用 AutoVis 进行全自动化展现。
SmartScene 以 DWF 提供架构支撑,以 loTDB 作为数据存储组件,运用于某集团下属电力公司的智慧变电项目。此外,该项目以三维场景加二维图表组件的方式,通过传统的 MVC 模型进行相应的抽象,通过可视化实体事件关系的方式来进行相关定义,达到低代码的要求,让开发者更专注于业务层面本身。
变电站调度驾驶舱
总结与展望
本文介绍了清华数为大数据应用快速开发工具 DWF 的研发初衷、技术特点,及其在数字化运营和运维中的典型用例。目前,“低代码”开发的理念正逐步被市场广泛接受,这对于这项新技术发展是一个重大利好。但是在复杂的企业需求面前,“低代码”技术产品能够解决的问题也会存在一定的局限性。相信在很长一段时间里,围绕“低代码”的运用还会存在争议[6],但这种争议必将促进该项技术的下一步发展。
展望未来,清华数为大数据应用开发工具 DWF 在持续改进的同时,还将通过清华软件学院智能运维研究中心平台与云智慧持续开展以下合作:
一是实施方法论指导。探索最佳实施方案和典型实施流程,从而更加有效的放大跨领域协同的效能。
二是沉淀行业标准模型。利用模型驱动能力,总结项目实践经验,不断沉淀行业模型,进而保持可控、一致的功能输出能力。
三是发展合作伙伴和场景。吸收更多的合作伙伴,用发展来解决在发展过程中出现的问题,不断突破现在的边界。
作者:清华大学软件学院、大数据系统软件国家工程实验室 刘英博
参考文献:
[1]MESAGLIO M, HOTLE M. Pace-Layered Application Strategy and IT Organizational Design: How to Structure the Application Team for Success, 2016 [M].
[2]GOODMAN D. What Can You Build with a Low-Code Platform [M]. 2020.
[3]RICHARDSON C, RYMER J R J F C, MA, USA. New Development Platforms Emerge For Customer-Facing Applications [J]. 2014,
[4]BUCCHIARONE A, CABOT J, PAIGE R F, et al. Grand challenges in model-driven engineering: an analysis of the state of the research [J]. 2020, 19(1): 5-13.
[5]WATSON A. OMG (object management group) architecture and CORBA (common object request broker architecture) specification; proceedings of the IEE Colloquium on Distributed Object Management, F, 1994 [C]. IET.
[6]SANCHIS R, GARCíA-PERALES Ó, FRAILE F, et al. Low-Code as Enabler of Digital Transformation in Manufacturing Industry [J]. 2020, 10(1): 12.
评论