自研开发低代码开发平台的版本管理机制(低代码开发平台架构)
本平台目标是打破低代码平台不能做复杂应用的行业现状,开放给用户(软件公司或企业内部的开发实施人员)以可视化的方式自行深度定制、快速构建业务应用系统。重点在简捷性、可定制性、细颗粒度、灵活度上要和市面上的傻瓜式低代码软件产品拉开明显的距离。
为支持多用户协同开发并满足企业随时的业务调整、需求变化,必须设计一套完备的版本管理机制作为后面开发功能设计的基石,又要适合在线开发模式的特性,初步构思的还不很成熟,请行家多给点建议指导。
为确保用户应用系统的功能一致性,页面、代码、流程等各部分可单独保存但不可单独分开做版本,版本只作用于整体的应用系统实例;版本有“已激活”状态,不允许修改现有任何已存在的激活状态版本内容;当前运行版本必为已激活状态,可以随时切换至任何一个激活状态版本;支持多用户多版本开发,有且不只有一个当前编辑版本,进入编辑时加载当前最新且未激活状态的版本,如不存在,需手动创建新版本或从当前任何一个现有版本(任何状态)选择,非激活状态直接编辑,否则克隆生成最新版本,新的编辑版本号为当前最大版本号加一;编辑保存时检测服务器上的版本状态,不允许修改激活状态版本,自动附带版本号校验,只能操作对应版本的实例,各开发模块做版本冲突检测,避免多用户开发时编辑混乱;业务流程实例按创建时系统的运行版本执行,系统运行版本变更不响应现有业务流程执行;未激活版本和未被指定过运行版本的版本实例可以被删除,否则禁止删除,确保当前业务按当时版本执行。