低代码平台加持后紧急交付项目如何突破极限

导读:

传统开发+低代码开发,两种开发模式的深度融合,基于已有的业务沉淀,快速实现项目中大量的定制需求,高速、高能使得传统项目最为宝贵的工期变得充裕。

项目管理的十大知识域中,其实并没有专门的时间(工期)管理,相近的知识域是进度管理。但是在笔者所经历过的项目,无一不是从做计划开始就在跟工期较劲,有些确实是因为系统间对接的需要和前期筹划不周导致需要配套部分赶工,可更多的是甲方无由来的就是要求提前。没有办法,"时间就是金钱,时间就是效益"会把这个要求统统置为合理。以前,为了应对这样的局面,项目经理能做的似乎就仅仅是找领导要更多的人,求甲方予更多的宽限。

在接下来的篇幅里,本文就一个传统的"紧急"项目为例,结合低代码支撑引入,分析在快速交付中低代码平台高速开发能力带来的高效快速交付,最大限度的减少项目项发时间投入,从而节约出来更多的时间用于业务验证,在缓解业务上线时间压力的同时,提升交付质量。

PART. 1 项目背景

某集团多云运维管理平台,是面向集团的、针对全栈混合云的统一运维平台,该项目包含大量资源设备的管理、详情查询及运维流程相关功能。项目要求交付一个全新的平台系统,可以复用核心能力和核心模型,但仍然有大量的页面和业务流程需要重新开发。项目面临如下困难:

  • 交付周期短:项目周期短要求3个月交付,按传统开发预期要5个月;开发人员紧缺,特别是前端。
  • 研发工作量大:业务能力包含交维、故障、割接、开通四类流程,涉及业务部门多、流程复杂。
  • 定制困难:标准产品功能在不同的项目上经常有个性化需求需要调整产品功能,往往就是在标准产品功能的代码上进行个性化的开发,导致标准产品功能存在很多个性化逻辑分支。

PART. 2 项目实践

此项目使用的产品是采用传统开发模式开发出来的,项目交付开发如何做到传统开发和低代码开发两种方式结合,并且形成一套有力的组合拳?这其实也是很多未曾接触过低代码平台同学们的公有困惑,如何让低代码平台上的开发成果和传统模式开发系统的无缝对接,下文继续为您分解。注:本文项目中的低代码平台采用浩鲸灵犀开发平台。

1、门户集成

标准产品中,存在大量的传统模式开发页面,在本期中需要根据需求新增大量的定制页面,这部分页面是使用灵犀低代码平台进行配置开发。如何将这部分和原标品集成起来,对外提供统一的访问入口,让用户感觉不到技术实现的差异呢?

标准产品开发使用的是ngportal,灵犀开发平台内置集成模块能自动适配ngportal,双方可以使用同样的认证体系,实现无缝的集成。另外,如果后续遇到第三方的门户系统,灵犀也提供了二次开发接口,支持定制包的方式对接其门户的用户组织人员基础信息。

2、页面开发

上一个问题中,迫切需要解决的是200多个页面的开发效率问题,这个问题也就是本期项目"紧急"的根因。灵犀开发平台基于中台能力接口,采取前台端分工的方式协同开发,并且针对项目个性化的需求提供了立体的个性化扩展解决方案。

前后端协同开发

基于原标准产品成熟的后台模块,在后台接口仍然采用传统开发方式,页面和流程需要重新进行的部分开发采用灵犀低代码开发模式。前后端的开发工作可以并行,缩短工期。在后台接口开发的同时,只需要先输出接口报文格式,就可以使用灵犀开发平台并行开发页面。

灵犀平台开发步骤是:

① 根据接口报文格式创建mock接口;

② 页面根据mock接口的出入参创建页面数据源;

③ 页面使用页面数据源来开发页面的逻辑;

④ 真正的接口提供后,页面数据源重新绑定真正的接口;

⑤ 使用真正的接口开始联调。

MOCK接口

面-线-点立体多维的页面扩展

多云运维管理平台是个非常复杂的系统,页面数量大、样式丰富、交互复杂,不仅要求灵犀开发平台具备较高的开发效率,也要求灵犀开发平台具备灵活扩展的能力。灵犀开发平台通过面-线-点立体多维的页面扩展机制来支持项目上的需求。

:应用钩子扩展。应用钩子以切面的方式影响全局的行为。它类似一个触发器 ,当一个事件发生的时候,会触发对应的应用钩子,例如:"页面加载完成"的应用钩子,就是当所有的页面打开时,都会触发这个钩子,执行钩子里面的代码。在此项目上我们就使用了应用钩子,改变了所有页面上控件的渲染方式,由原来是先显示再隐藏,改变为根据权限先隐藏再显示。

线:页面组件扩展。针对多个页面有相同业务功能的部分,可以使用页面组件进行封装后,再被页面使用,减少重复开发,也方便维护。

:自定义代码块扩展。针对页面具备的样式和前端交互需要进行个性化的设置,可以编写CSS/JS来实现。

应用钩子类型

页面样式适配

灵犀适配传统开发模型的页面样式,支持新增并绑定主题样式,可以进行CSS代码个性化的调整。

3、业务流程

流程编排提供"平台+服务"的能力,旨在建立多应用共享的统一流程平台,对流程建模、流程开发、流程测试、流程部署、流程执行、流程运维的流程全生命周期进行闭环管理。

流程编排基于BPM规范,编排引擎除了支持传统的人工操作环节所编排的工单流程,也支持基于自动操作环节的编排,包括App服务、服务目录以及JavaScript等类型编排的自动操作API。API支持单步调测能力,可以在调测过程中查看具体的执行日志,支持查看调测过程中的流程变量参数,并可修改流程变量参数后继续进行下一步调测。

业务流程配置

4、扩展点

多云运维管理平台由集团自上而下需要推广到各个省级平台进行应用,每个省份都有各种前端或后端定制的需求,需要将定制功能进行代码级别的隔离,避免干扰标准产品核心代码。本项目中灵犀低代码平台通过前后端扩展点支撑机制来解决这个问题。

页面扩展点

灵犀开发平台实现了页面扩展点功能,来解决以上的痛点。页面扩展点核心的思路为:产品团队开发(可以是传统开发,也可以灵犀开发)出来的标准页面中指定的区域可以允许项目自行定制,定制时不希望办事处拷贝产品团队的代码进行修改;在运行时,自动检查是否存在定制,如果有则使用定制的功能,如果没有则使用标准产品默认的功能。

基于灵犀前端扩展点解决方案,产品团队和项目研发团队租户管理员主要处理事项:

产品团队租户管理员核心工作:

① 将产品能力和远程组件注册上来,让项目组开发时可以调用;

② 录入本产品所有的组件扩展点,让项目组可以知道哪个组件可以去覆盖。

项目租户管理员核心工作:

① 查看有哪些扩展点,使用新的组件以替换默认的。

新组件的创建方式支持三种方式:上传组件(线下开发)、在线编排业务组件、在线IDE开发。

页面扩展点处理流程

后端扩展点

在现有服务能力基础上,通过实现暴露的扩展点,来完成个性化需求。其具体实现逻辑为:在多云运维管理平台产品传统开发的业务服务的代码中埋下扩展点,然后将这些扩展点的信息录入到灵犀开发平台;各定制项目通过灵犀开发平台对录入的扩展点进行扩展实现。当调用被埋扩展点的服务时,判断该扩展点是否已被实现;若该扩展点已被实现,则调用实现扩展点的服务;若该扩展点未被实现,则调用原有服务能力。

后端扩展点处理流程

PART. 3 实践总结

提高开发效率

使用低代码平台能够帮助项目组团队快速地构建和交付定制需求,较之传统模式开发效率提升了 30%左右,很大程度的节约了项目开发周期,缓解项目工期压力,随着项目团队成员对低代码平台掌握不断熟练,研发效率有望继续提升。

降低开发成本

低代码平台降低了对流程专业技能的需求,使得普通开发人员可以参与应用开发,从而降低了开发成本。

优化业务流程

低代码平台提供了所见即所得的界面,使得在项目交付实施过程中,有效地提升了业务人员参与度,更好地理解业务需求并转化为应用功能,从而优化业务流程。

应用资产沉淀

通过低代码平台进行开发既可以直接使用到平台提供的组件外,参与项目开发的有着丰富经验的业务专家在实现过程中所开发的页面、流程,抽象的业务对象都可以形成组件,项目组成员可直接使用。

提高应用交付质量

低代码平台提供了一系列的开发工具和组件,可以帮助开发者更好地进行应用设计、开发和测试,从而提高应用交付的质量。

提升用户体验

低代码平台使得应用开发更加便捷,使得企业可以更快地响应用户需求,提供更好的用户体验。

上面几点基本上是合着传统的低代码的效益分析思路所做的项目总结作业,难多落入俗套,还是奉上(下图)项目实战数据结果,通过与传模式的对比,实际的人力使用,以及应用资产累积情况,让效益直观可描述,有图有真相。

相关推荐
2401_8827275715 小时前
BY组态-低代码web可视化组件
前端·后端·物联网·低代码·数学建模·前端框架
_xaboy2 天前
开源动态表单form-create-designer 扩展个性化配置的最佳实践教程
vue.js·低代码·开源·动态表单·表单·formcreate·低代码表单
_xaboy3 天前
在开源的form-create-designer 表单设计器中扩展自定义操作教程
vue.js·低代码·开源·formcreate·可视化表单设计器·fc-designer
by————组态3 天前
Web组态可视化编辑器 快速绘制组态
前端·网络·物联网·低代码·编辑器·组态
低代码布道师4 天前
微搭低代码入门05循环
低代码
小麦项目管理指南4 天前
如何通过低代码逻辑编排实现业务流程自动化?
运维·低代码·自动化·源代码管理
_xaboy4 天前
利用开源的低代码表单设计器FcDesigner高效管理和渲染复杂表单结构
vue.js·低代码·开源·动态表单·formcreate·低代码表单·可视化表单设计器
Light605 天前
AI 驱动低代码平台:开创智能化用户体验新纪元
人工智能·低代码
jonyleek6 天前
商业智能BI如何零编码对接低代码数据模型?
数据库·低代码·信息可视化·数据分析·数据可视化·软件需求