软件架构设计方法、系统及设备技术方案

技术编号:38240872 阅读:17 留言:0更新日期:2023-07-25 18:03
本发明专利技术提供了一种软件架构设计方法、系统及设备,所述方法包括以下步骤:将所述目标软件划分为对应于不同功能需求的多个功能模块;将各个所述功能模块分别映射为一状态,基于所有的状态构建形成状态机;每一状态对应一触发器事件和待处理事务;当一当前状态对应的触发器事件被触发时,控制所述当前状态执行所述待处理事务,获得对应的执行结果;以及根据所述待处理事务的执行结果,确定对应的下一状态,将所述状态机的状态由所述当前状态转换至所述下一状态,直至所述状态机的流程结束;本发明专利技术降低了低代码开发平台的软件架构设计难度,利于提高软件架构设计效率。利于提高软件架构设计效率。利于提高软件架构设计效率。

【技术实现步骤摘要】
软件架构设计方法、系统及设备


[0001]本专利技术涉及计算机软件
,具体地说,涉及一种软件架构设计方法、系统及设备。

技术介绍

[0002]当前低代码开发平台已经成为行业的热点,市场上不断涌现各种各样的低代码开发平台。面对越来越复杂的市场需求,对于低代码平台的要求也越来越高,不仅要满足简单场景的功能实现,还要支持复杂场景的功能实现。
[0003]对于复杂场景,其软件架构设计难度往往较大。而软件架构设计的工作通常也是软件生产过程中最难的部分,需要丰富的专业知识。复杂场景下,不仅会遇到简单的逻辑,还会遇到逻辑嵌套、条件判断、循环、递归等复杂逻辑,这些复杂逻辑会使得软件变得复杂,也就使得软件架构设计难度明显变大。另一方面,这也不利于实现低代码开发平台应对各种场景下的自动化编程能力。
[0004]因此,如何降低低代码开发平台在各种场景下的软件架构设计难度,是目前面临的一个问题。
[0005]需要说明的是,在上述
技术介绍
部分公开的信息仅用于加强对本申请的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。

技术实现思路

[0006]针对现有技术中的问题,本专利技术的目的在于提供一种软件架构设计方法、系统及设备,以降低低代码开发平台的软件架构设计难度,利于提高软件架构设计效率。
[0007]为实现上述目的,本专利技术提供了一种软件架构设计方法,用于对一目标软件进行架构设计,所述方法包括以下步骤:
[0008]S110,将所述目标软件划分为对应于不同功能需求的多个功能模块;
[0009]S120,将各个所述功能模块分别映射为一状态,基于所有的状态构建形成状态机;每一状态对应一触发器事件和待处理事务;
[0010]S130,当一当前状态对应的触发器事件被触发时,控制所述当前状态执行所述待处理事务,获得对应的执行结果;以及
[0011]S140,根据所述待处理事务的执行结果,确定对应的下一状态,将所述状态机的状态由所述当前状态转换至所述下一状态,直至所述状态机的流程结束。
[0012]可选地,每一所述功能模块中包括多个功能函数;步骤S120还包括:
[0013]将每一所述功能函数分别映射为一子状态;每一所述功能模块中所有功能函数对应的子状态组合形成与所述功能模块对应的状态;
[0014]步骤S130包括:
[0015]当一当前状态对应的触发器事件被触发时,控制所述当前状态下的各子状态执行对应的所述功能函数。
[0016]可选地,每一所述功能模块中包括多个图形元素和逻辑节点;步骤S120包括:
[0017]将每一所述功能模块中的所述图形元素映射为状态机中的状态图,以及将每一所述功能模块中的所述逻辑节点映射为状态机中的状态点;
[0018]基于与每一所述功能模块对应的所述状态图和所述状态点,构建形成与每一所述功能模块对应的状态。
[0019]可选地,所述状态点包括逻辑控制器;步骤S130包括:
[0020]获取所述逻辑节点对应的逻辑运算符;
[0021]当一当前状态对应的触发器事件被触发时,控制所述逻辑控制器基于所述逻辑运算符,对所述图形元素执行对应的操作。
[0022]可选地,所述目标软件中的所述功能模块均为可视化图形编程模块;所述可视化图形编程模块具有级联关系,且包括第一可视化图形编程模块和第二可视化图形编程模块;其中,第一可视化图形编程模块级联多个第二可视化图形编程模块;所述当前状态与所述第一可视化图形编程模块相对应;
[0023]步骤S140包括:
[0024]根据所述待处理事务的执行结果,确定与所述第一可视化图形编程级联的一第二可视化图形编程模块,作为目标可视化图形编程模块;
[0025]将与所述目标可视化图形编程模块对应的功能模块相匹配的状态,作为下一状态;并将所述目标可视化图形编程模块作为下一次可视化逻辑运算的输入参数。
[0026]可选地,步骤S130包括:
[0027]当所述目标软件接收到用于操作所述图形元素的拖拽操作指令,则将对应操作的所述图形元素进行连接,连接后的所述图形元素形成对应的连接节点;
[0028]当所述逻辑节点基于用户拖拽操作移动至与所述连接节点重合时,则确定当前状态对应的触发器事件被触发。
[0029]可选地,步骤S130还包括:
[0030]当所述逻辑节点基于用户拖拽操作移动至与所述连接节点重合时,基于当前的所述图形元素和所述连接节点,控制所述当前状态执行所述待处理事务。
[0031]可选地,所述状态机包括条件接收器;步骤S130包括:
[0032]当所述条件接收器识别到当前状态对应的触发器事件被触发时,控制所述当前状态执行所述待处理事务。
[0033]本专利技术还提供了一种软件架构设计系统,用于实现上述软件架构设计方法,上述系统包括:
[0034]功能模块划分单元,将所述目标软件划分为对应于不同功能需求的多个功能模块;
[0035]状态映射单元,将各个所述功能模块分别映射为一状态,基于所有的状态构建形成状态机;每一状态对应一触发器事件和待处理事务;
[0036]当前状态执行事务单元,当一当前状态对应的触发器事件被触发时,控制所述当前状态执行所述待处理事务,获得对应的执行结果;以及
[0037]状态转换单元,根据所述待处理事务的执行结果,确定对应的下一状态,将所述状态机的状态由所述当前状态转换至所述下一状态。
[0038]本专利技术还提供了一种软件架构设计设备,包括:
[0039]处理器;
[0040]存储器,其中存储有上述处理器的可执行程序;
[0041]其中,上述处理器配置为经由执行上述可执行程序来执行上述任意一项软件架构设计方法的步骤。
[0042]本专利技术还提供了一种计算机可读存储介质,用于存储程序,上述程序被处理器执行时实现上述任意一项软件架构设计方法的步骤。
[0043]本专利技术与现有技术相比,具有以下优点及突出性效果:
[0044]本专利技术提供的软件架构设计方法、系统及设备基于状态机的思想,将软件的运行逻辑分解为不同的状态,每个状态负责一个独立事务,状态之间完全独立,特定事件发生时,执行当前状态的事务,并且状态之间会发生转换;复杂的状态可以进一步的拆分为功能更加单一的子状态,最终软件逻辑变为由众多子状态构成的状态机,从而将软件的复杂功能变得原子化和单一化,降低了低代码开发平台的软件架构设计难度,利于提高软件架构设计效率;也利于实现低代码开发平台的自动化编程能力。
附图说明
[0045]通过阅读参照以下附图对非限制性实施例所作的详细描述,本专利技术的其它特征、目的和优点将会变得更明显。
[0046]图1为本专利技术一实施例公开的一种软件架构设计方法的示意图;
[0047]图2为本专利技术另一实施例公开的一种软件架构设计方法的示意图;
[0048]图3为本本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种软件架构设计方法,其特征在于,用于对一目标软件进行架构设计,所述方法包括以下步骤:S110,将所述目标软件划分为对应于不同功能需求的多个功能模块;S120,将各个所述功能模块分别映射为一状态,基于所有的状态构建形成状态机;每一状态对应一触发器事件和待处理事务;S130,当一当前状态对应的触发器事件被触发时,控制所述当前状态执行所述待处理事务,获得对应的执行结果;以及S140,根据所述待处理事务的执行结果,确定对应的下一状态,将所述状态机的状态由所述当前状态转换至所述下一状态,直至所述状态机的流程结束。2.如权利要求1所述的软件架构设计方法,其特征在于,每一所述功能模块中包括多个功能函数;步骤S120还包括:将每一所述功能函数分别映射为一子状态;每一所述功能模块中所有功能函数对应的子状态组合形成与所述功能模块对应的状态;步骤S130包括:当一当前状态对应的触发器事件被触发时,控制所述当前状态下的各子状态执行对应的所述功能函数。3.如权利要求1所述的软件架构设计方法,其特征在于,每一所述功能模块中包括多个图形元素和逻辑节点;步骤S120包括:将每一所述功能模块中的所述图形元素映射为状态机中的状态图,以及将每一所述功能模块中的所述逻辑节点映射为状态机中的状态点;基于与每一所述功能模块对应的所述状态图和所述状态点,构建形成与每一所述功能模块对应的状态。4.如权利要求3所述的软件架构设计方法,其特征在于,所述状态点包括逻辑控制器;步骤S130包括:获取所述逻辑节点对应的逻辑运算符;当一当前状态对应的触发器事件被触发时,控制所述逻辑控制器基于所述逻辑运算符,对所述图形元素执行对应的操作。5.如权利要求3所述的软件架构设计方法,其特征在于,所述目标软件中的所述功能模块均为可视化图形编程模块;所述可视化图形编程模块具有级联关系,且包括第一可视化图形编程模块和第二可视化图形编程模块;其中,第一可视化图形编程模块级联多个第二可视化图形编程模块;所述当前状态与所述第一可视化图形编程模块相对应;步...

【专利技术属性】
技术研发人员:傅临黎石梦南
申请(专利权)人:睿珀智能科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1