【低代码】低代码平台协同&敏捷场景下的并行开发解决方案探索 | 京东云技术团队

京东云开发者
• 阅读 241

低代码开发平台的出现,大大地提高的产品交付效率,但是在协同开发敏捷迭代的场景下,也暴露出了一些问题。

例如:

  • 多人同时对项目进行修改,相互影响甚至修改内容被互相覆盖;

  • 同一项目下多个需求同步开发,但需求上线日期不统一,无法拆分上线等等。

本文将根据不同诉求,渐进式的讨论支持并行开发的各种解决方案。

低代码开发平台(Low-Code Development Platform,LCDP),帮助用户使用可视化图形界面(拖拽搭建或配置化方式)编写应用程序,而无需进行传统的编程开发。

低代码开发平台的研发团队往往把更多的经历投入到应用程度搭建过程的完善和丰富上(例如,丰富可通过搭建实现的功能,优化拖拽搭建的交互体验等),而忽略了项目交付过程的能力和体验。

一、项目整体交付

大部分低代码平台,尤其是具备出码能力或托管部署能力的低代码平台,都会采用项目整体交付的形式提供服务。

在用户触发交付流程时,低代码平台会以当前时刻的项目配置、页面配置等,进行代码生产、CI/CD流水线等操作。

【低代码】低代码平台协同&敏捷场景下的并行开发解决方案探索 | 京东云技术团队

【低代码】低代码平台协同&敏捷场景下的并行开发解决方案探索 | 京东云技术团队

【低代码】低代码平台协同&敏捷场景下的并行开发解决方案探索 | 京东云技术团队

二、缩小交付颗粒度

为了提升交付的灵活性,可以通过缩小交付颗粒度的方式,一定程度上的避免多人开发相互影响以及多需求同时开发的问题。例如以页面维度作为最小独立可发布单元

【低代码】低代码平台协同&敏捷场景下的并行开发解决方案探索 | 京东云技术团队

【低代码】低代码平台协同&敏捷场景下的并行开发解决方案探索 | 京东云技术团队

三、虚拟分支交付

在进行实际需求开发过程中,往往会出现同一需求需要对多个页面进行修改,且修改内容相互依赖的情况。此时可以引入一种类似于代码开发过程中使用的分支的概念,将多个页面与“分支”进行关联,使用“分支”作为可发布单元,同一“分支”下的页面同步上线交付。

【低代码】低代码平台协同&敏捷场景下的并行开发解决方案探索 | 京东云技术团队

【低代码】低代码平台协同&敏捷场景下的并行开发解决方案探索 | 京东云技术团队

【低代码】低代码平台协同&敏捷场景下的并行开发解决方案探索 | 京东云技术团队

用户在进行需求开发时,可以创建一个虚拟“分支”,在该分支下进行页面搭建时,页面会被划入该“分支”,其他“分支”无法再次编辑此页面。需求交付时,可以将该“分支”下的全部页面同时发布部署。

四、分支与合并

尽管我们可以将可交付的最小单元定义为页面,但仍然会出现多个需求同时需要修改同一页面的情况。

低代码平台往往使用页面维度进行配置信息的存储与管理(即每个页面为一个完成配置文件),当多人或多个需求需要对同一个页面(配置文件)进行修改时,必然会产生多个副本,且交付时必须经过合并的过程。此时我们便需要真正的引入开发分支,以及分支合并解决冲突等内容了。

【低代码】低代码平台协同&敏捷场景下的并行开发解决方案探索 | 京东云技术团队

【低代码】低代码平台协同&敏捷场景下的并行开发解决方案探索 | 京东云技术团队

【低代码】低代码平台协同&敏捷场景下的并行开发解决方案探索 | 京东云技术团队

若同一页面被分别修改、分别部署时,后发起交付流程的用户需要经过“合并”流程。

此时平台会展示自用户开始修改页面的时刻起,其他用户或需求修改并交付的修改内容,与本次修改内容的对比。若“差异”互不影响,则可以自动“合并”;若“差异”存在“冲突”,则需要由用户来进行决策。

五、可视化分支合并

低代码平台的使用者很可能是非研发人员,而且即便是研发人员,也很难要求用户理解配置文件的内容。此时就需要一种可视化的分支合并与解决冲突的交互方案。

【低代码】低代码平台协同&敏捷场景下的并行开发解决方案探索 | 京东云技术团队

在左侧预览区域,可以高亮展示存在差异或冲突的元素。并在右侧配置区分别展示“线上状态”和“本次修改”的内容,使用“差异”图标高亮不同的配置项内容。用户可以通过点击“差异”图标,切换左侧预览区展示的版本。并在确认后进行保存。

未来畅想 - AIGC

在进行低代码协同开发过程中,可以尝试引入AIGC进行配置信息的理解和分析,帮助用户理解、描述修改的内容,发现问题漏洞,并且在进行配置合并时给出建议。

【低代码】低代码平台协同&敏捷场景下的并行开发解决方案探索 | 京东云技术团队

作者:京东零售 牛晓光

来源:京东云开发者社区 转载请注明来源

点赞
收藏
评论区
推荐文章
低代码开发平台 | 低代码的衍生历程、优势及未来趋势
通过简单的拖拉拽操作,而不用编写复杂的代码,实现少写代码或者不写代码,就能快速高效完成业务目标。低代码平台演进1.低代码概念低代码是无需编码(0代码)或通过少量代码就可以快速生成应用程序的开发平台。通过可视化进行应用程序开发的方法,具有不同经验水平的开发人员可以通过图形化的用户界面,使用拖拽组件和模型驱动的逻辑来创建网页和移动应用程序。2.低代码衍生历
企业级飞速低代码 | 这5个理由让软件架构师积极拥抱低代码
从避免技术债务到简化和整合业务流程到解锁单体系统,低代码提供了速度和灵活性。软件开发者和架构师曾经有理由对低代码技术持怀疑态度,但今天,许多成熟的低代码平台使敏捷开发团队能够提高生产力、增加质量、并频繁部署。开发人员使用低代码技术来构建应用程序、客户体验、门户网站、搜索体验、工作流集成、数据管道、数据流、仪表板、测试自动化、机器学习模型和其他解决方案。"低代
企业如何选型低代码才能避免踩坑 | 飞速低代码
​低代码开发平台该怎么选型?现如今,低代码开发平台又再次进到公众视野。对于企业来说,使用低代码开发平台不仅仅意味着数字化转型的开始,也意味着内部开发效率提升、业务流程梳理更加清晰。市场上的低代码平台非常多,企业应该怎么选型才能避免踩坑呢?1、软件开发的灵活性企业不断发展扩大,标准化的产品软件已经难以满足企业的需求,在这种情况下,低代码平台的灵活性就显得十分重
企业级飞速低代码开发平台 | 产品介绍 | APass平台 | 全场景适用
​1、低代码是什么低代码通常是指APaas产品,通过为开发者提供可视化的应用开发环境,降低或去除应用开发对原生代码编写的需求量,进而实现便捷构建应用程序的一种解决方案。因此,低代码平台也常备成为APaas平台。广义上低代码概念涵盖所有能够完成代码的集成,减少代码开发的应用过程和服务,但狭义上低代码的概念更倾向定位满足企业业务端应用需求,通过可视化界面,利用少
Stella981 Stella981
3年前
Azure DevOps Server 2019 (TFS)安装教程
概述AzureDevOpsServer2019(之前的名称为TFS),作为微软AzureDevOps的企业私有(onpremises)服务器,是一个为开发团队提供软件协作开发管理的服务平台,在需求管理、代码管理、持续集成和交付、敏捷开发方面为软件开发团队提供全流程的技术服务。这一运行在企业内网中的开发服务器,由于具备入门门槛低、
Stella981 Stella981
3年前
JNPF低代码开发平台—SpringCloud微服务解决框架
JNPF低代码开发平台总体介绍JNPF低代码开发平台(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fwww.yinmaisoft.com%2F%3Ffrom%3Dseo)是由引迈信息完全自主研发的专业的前后端分离java低代码快速开发平台,JNPF
万界星空科技 万界星空科技
7个月前
低代码开发有哪些优势?
低代码平台以其高效、便捷、低成本的优势,正逐渐成为软件开发领域中的性价比之王。它不仅能够满足快速开发的需求,还能够降低技术门槛和维护成本,提高开发质量。随着技术的不断进步和应用场景的不断拓展,低代码平台将在未来发挥更加重要的作用,为企业和开发者带来更多的机遇和挑战。
敏捷开发 敏捷开发
4个月前
敏捷激流中的测试
敏捷开发浩浩荡荡流行了20多年,彻底改变了软件研发行业。如果说敏捷开发对产品、开发和测试这三种类型的工作哪一个影响最大,我会选择测试。因为敏捷开发模式下迭代周期缩短,很多问题会更集中地暴露出来,比如用户故事拆分往往不够细致精确、开发和测试无法并行展开、开发
taskbuilder taskbuilder
1星期前
TaskBuilder简介
1、TaskBuilder的定位随着这两年“低代码”概念的火爆,现在市面上出现了很多所谓的零代码和低代码开发平台,其中有大厂商建设的云平台级低代码,涵盖的范围很广,也有专注某些领域的低代码,例如建站、小程序开发、APP开发、可视化大屏、数字孪生、物联网组态