一种物联网软件业务流程调试装置、调试方法和调试系统与流程

文档序号:33036318发布日期:2023-01-24 20:01阅读:23来源:国知局
一种物联网软件业务流程调试装置、调试方法和调试系统与流程

1.本公开涉及软件开发技术领域,尤其涉及一种物联网软件业务流程调试装置、调试方法和调试系统。


背景技术:

2.软件开发中,通过业务流程的调试,可以快速发现业务流程是否存在问题。
3.如附图1所示,现有软件开发业界,在对物联网设备进行程序软件的配置过程中,常见各种语言开发的断点调试,常见于ide(软件开发工具)的代码调试,一般业界的这类调试工具是跟软件运行态的语言环境相关,在代码语言某一行设置一个代码断点,然后启动软件运行,触发语言线程运行到这一行代码,这时ide软件会在代码断点处,挂起线程,并获取线程上下文信息(如代码变量运行的值),展示给软件开发者,方便开发者确认软件运行至此是否正确,进而来确定软件代码是否正确需要调整。
4.调试代码的过程中,通过ide界面,可以增加断点,也可以设置断点,在有断点基础上,也能够让线程忽略断点,断点生效后,通过ide界面,可以按代码行调试代码,在技术原理上,ide是控制正在执行程序中的指针及堆栈指针来达到目的。
5.而现有技术只能实现调试代码语言层面的情况,也就是说只能通过断点了解软件语言运行环境的单个线程上下文信息,局限于该次请求线程直接相关的代码运行情况,无法反馈业务流程上的数据情况,且依懒于开发ide工具。因此,有碍于物联网设备的软件程序升级。


技术实现要素:

6.为了解决上述问题,本技术提出一种物联网软件业务流程调试装置、调试方法和调试系统。
7.本技术一方面,提出一种物联网软件业务流程调试装置,包括:
8.软件界面,用于显示各个物联网业务节点的业务流程;
9.软件服务端,用于处理各个业务流程,并将业务数据发送并保存至业务数据库;
10.业务数据库,用于保存各个业务流程的业务数据;
11.断点处理单元,部署于预设的业务节点上,用于进行断点调试,并将断点调试信息发送并保存至断点数据库;
12.断点数据库,用于保存各个物联网业务节点的上下文信息以及断点信息,为软件界面的断点界面提供所各个物联网业务节点信息;以及恢复断点时,供业务流程继续处理的业务上下文数据。
13.作为本技术的一可选实施方案,可选地,所述断点处理单元,包括:
14.断点设置模块,用于在业务流程各节点上设置断点;
15.取消/忽略模块,用于在业务流程各节点上取消/忽略断点;
16.所述断点设置模块和所述取消/忽略模块,均分布部署于业务流程各节点的所述
软件界面上。
17.作为本技术的一可选实施方案,可选地,所述断点处理单元,包括:
18.断点记录模块,用于接受所述断点设置模块的接口请求,并在该所述断点设置模块所处业务节点断点时,记录所述业务节点的上下文信息以及所述断点设置模块的断点本身信息,并将记录断点信息发送至所述断点数据库;
19.所述断点记录模块,部署于所述软件服务端上。
20.作为本技术的一可选实施方案,可选地,所述断点处理单元,包括:
21.断点恢复模块,用于请求业务节点处理接口,恢复业务处理流程,更新断点状态,并将断点信息发送并保存至所述断点数据库;其中,所述断点状态所处的断点,为被所述取消/忽略模块所处理的断点;
22.所述断点恢复模块,部署于所述软件服务端上。
23.作为本技术的一可选实施方案,可选地,所述断点处理单元,包括:
24.业务断点拦截模块,用于拦截中断业务处理流程,反馈业务上下文信息至所述软件界面,并将获取的拦截信息发送并保存至所述断点数据库;
25.所述业务断点拦截模块,部署于所述软件服务端上。
26.本技术另一方面,提出一种基于上述所述的一种物联网软件业务流程调试装置的调试方法,包括如下步骤:
27.选择业务节点,进行断点设置,并将断点的设置信息通过断点记录模块发送并保存至断点数据库;
28.根据预设的断点调试方案,利用断点处理单元进行断点调试,并将断点调试信息发送并保存至断点数据库。
29.作为本技术的一可选实施方案,可选地,所述根据预设的断点调试方案,利用断点处理单元进行断点调试,并将断点调试信息发送并保存至断点数据库,包括:
30.获取断点信息;
31.利用业务断点拦截模块,对软件界面中所有业务节点处理的请求进行拦截判断:
32.如果当前请求是来自所设置断点的请求,则拦截不予通过,并请求得到该节点处理代码,将业务流程挂起;
33.返回接口业务流程和该节点信息至软件界面,软件界面展示业务处理节点信息。
34.作为本技术的一可选实施方案,可选地,所述根据预设的断点调试方案,利用断点处理单元进行断点调试,并将断点调试信息发送并保存至断点数据库,包括:
35.在利用取消/忽略模块取消断点时,从软件服务端中删除该断点在所述断点数据库中的断点信息;
36.在利用取消/忽略模块忽略断点时,从软件服务端中重新设置该断点状态并更新在所述断点数据库中的断点业务上下文信息;
37.在需要恢复断点时,通过断点恢复模块重新请求业务节点处理接口,恢复业务处理流程,更新断点状态,并将断点信息发送并保存至所述断点数据库。
38.本技术另一方面,提出一种调试系统,包括:
39.处理器;
40.用于存储处理器可执行指令的存储器;
41.其中,所述处理器被配置为执行所述可执行指令时实现上述所述的调试方法。
42.本发明的技术效果:
43.本技术通过在业务开发的软件界面和软件服务端上部署断点处理模块,用于各个节点的流程调试,可以利用业务流程上下文进行断点反馈软件业务流程设置是否合理,能够很好地适应于低代码界面开发流程的应用开发调试。
44.本发明则侧重于软件业务流程上的信息反馈调试,进而了解软件整体功能流程是否合理性,解决的不是技术代码层面的问题,调试更多的是业务流是否合理性,调试断点等功能有由软件自身实现,无须依懒开发ide工具。可以使得物联网设备的程序软件快速得到升级、换代。
45.根据下面参考附图对示例性实施例的详细说明,本公开的其它特征及方面将变得清楚。
附图说明
46.包含在说明书中并且构成说明书的一部分的附图与说明书一起示出了本公开的示例性实施例、特征和方面,并且用于解释本公开的原理。
47.图1示出为现有软件代码断点调试的流程示意图;
48.图2示出为本发明一种物联网软件业务流程调试装置的应用系统示意图。
具体实施方式
49.以下将参考附图详细说明本公开的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。
50.在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。
51.另外,为了更好的说明本公开,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本公开同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本公开的主旨。
52.为了更好理解本技术,本处作如下术语解释:
53.断点:中断暂停软件请求流程运行的代码点;
54.ide:integrated development environment,集成开发环境,本文更多的是指软件开发工具。
55.线程:线程是操作系统能够进行运算调度的最小单位,被包含在进程之中,是进程中的实际运作单位。一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。
56.线程上下文:线程的上下文线程的上下文本质上是一组处理器的寄存器,有正在执行程序中的指针及堆栈指针,能通过这些指针知道线程变量所含的即时值。
57.业务流:为了完成某一个业务闭环,所需要经过的业务处理过程,比如工单审批,先要员工提出申请单子,然后经过主管审批,再到人事部审批,最后到hr审批完成,才算完成一个完整的业务流程。
58.业务节点:业务流程某一状态点,如订单提交状态、订单驳回状态。
59.本实施例中,有关软件开发工具的选择,不做限制。各个软件开发工具的开发流程以及配置模块,具体根据所选择的软件开发工具进行决定,本实施例的断点处理模块以及断点数据库的部署环境,可以基于上述所选择的软件开发工具进行确定。
60.实施例1
61.本发明则侧重于物联网系统中的软件业务流程上的信息反馈调试,进而了解软件整体功能流程是否合理性,解决的不是技术代码层面的问题,调试更多的是业务流是否合理性,调试断点等功能有由软件自身实现,无须依懒开发ide工具。
62.如图2所示,公开提出了本技术一方面,提出一种物联网软件业务流程调试装置,包括:
63.软件界面,用于显示各个物联网业务节点的业务流程;软件界面主要显示各个软件代码的执行流程,便于为用户展示各个业务流程的编码,用于断点的选择和查看;
64.软件服务端,用于处理各个业务流程,并将业务数据发送并保存至业务数据库;软件服务端为软件开发工具所配置的处理中心,具体根据各个软件开发软件进行配置;软件服务端可以对不同的业务流程进行管控;
65.业务数据库,用于保存各个业务流程的业务数据;业务数据库用于记录和保存业务信息数据;
66.断点处理单元,部署于预设的业务节点上,用于进行断点调试,并将断点调试信息发送并保存至断点数据库;断点处理单元主要为各个节点提供调试代码行的作用,进行代码检测,线程是否需要挂起等判断;
67.断点数据库,用于保存各个物联网业务节点的上下文信息以及断点信息,为软件界面的断点界面提供所各个物联网业务节点信息;以及恢复断点时,供业务流程继续处理的业务上下文数据。本系统单独设立了断点数据库,用于各类断点处理信息的保存,对断点的设置、部署、拦截等信息,皆可以将其动作信息保存,便于了解断点的执行过程。
68.利用各个业务流程节点处所部署的断点,可以利用业务流程上下文进行断点反馈判断,判断软件业务流程设置是否合理,因此适用于低代码界面开发流程应用开发调试。
69.在本实施例中,在软件界面或者软件服务器端设置各个断点处理模块的形式以及部署位置,可以不做限制,可以根据业务属性或者软件开发者的应用习惯进行设置等。
70.结合附图2,具体描述本技术断点处理模块。
71.本实施例,在软件界面设置“断点设置模块”、“取消/忽略模块”,可以采用虚拟按键的方式实现,这样方便用户在浏览软件界面时,通过这两个功能模块在对应的业务流程节点上设置断点,或者取消/忽略断点操作。
72.业务流程,由后端(软件服务端)进行承载执行,业务数据保存至业务数据库。
73.对应各个断点的状态,本实施例设置了断点记录模块,用于记录各个节点的断点动作信息。比如在某个节点设置断点,将该处断点的设置信息发送并保存在断点记录模块中。断点记录模块,将断点的相关信息记录,并发送至断点数据库进行保存。断点记录模块,本实施例优选部署在软件服务端上。
74.各个模块的具体功能如下,本实施例不做赘述。本实施例中的各个模块或者单元,所描述的为一个优先部署方案,实际可以根据软件项目的具体开发方式来设置各模块的应
用部署方案,至于采用虚拟按键或者实体按键或者为程序包的形式,由设计人员进行决定。
75.作为本技术的一可选实施方案,可选地,所述断点处理单元,包括:
76.断点设置模块,用于在业务流程各节点上设置断点;
77.取消/忽略模块,用于在业务流程各节点上取消/忽略断点;
78.所述断点设置模块和所述取消/忽略模块,均分布部署于业务流程各节点的所述软件界面上。
79.作为本技术的一可选实施方案,可选地,所述断点处理单元,包括:
80.断点记录模块,用于接受所述断点设置模块的接口请求,并在该所述断点设置模块所处业务节点断点时,记录所述业务节点的上下文信息以及所述断点设置模块的断点本身信息,并将记录断点信息发送至所述断点数据库;
81.所述断点记录模块,部署于所述软件服务端上。
82.作为本技术的一可选实施方案,可选地,所述断点处理单元,包括:
83.断点恢复模块,用于请求业务节点处理接口,恢复业务处理流程,更新断点状态,并将断点信息发送并保存至所述断点数据库;其中,所述断点状态所处的断点,为被所述取消/忽略模块所处理的断点;
84.所述断点恢复模块,部署于所述软件服务端上。
85.作为本技术的一可选实施方案,可选地,所述断点处理单元,包括:
86.业务断点拦截模块,用于拦截中断业务处理流程,反馈业务上下文信息至所述软件界面,并将获取的拦截信息发送并保存至所述断点数据库;
87.所述业务断点拦截模块,部署于所述软件服务端上。
88.各个模块功能具体划分如下:
89.1、软件界面部署断点设置、取消/忽略模块,模块分布在业务流程各节点上,可以针对每个节点进行设置断点进行调试,也可以取消断点,或者忽略断点对业务流生效。
90.2、软件服务端部署记录断点模块,用于接受界面设置断点接口请求,记录该业务节点断点时业务节点上下文信息以及断点本身信息。
91.3、断点数据库,用于保存业务节点上下文信息以及断点信息,可以提供断点界面查看业务节点信息,以及恢复断点时,供业务流程继续处理的业务上下文数据。
92.4、软件服务端部署恢复断点模块,用于更新断点状态,以及请求业务节点处理接口,恢复业务处理流程;
93.5、软件服务端部署业务断点拦截模块,用于拦截中断业务处理流程,并反馈业务上下文信息给软件界面,方便用户查看了解业务流是否正确。如附图2所示,当对分支流程b2的业务流程进行检测时,通过业务断点拦截模块对该分值流程进行拦截中断,并查看该节点处的业务流程上下文信息,模块将该节点的业务流程上下文信息发送至软件服务端,经过软件服务端处理后,最终将拦截信息反馈至断点数据库。
94.结合结合附图2所示的业务流程进行实施,本处不做流程描述。
95.本技术通过由软件界面实现,在业务某个结点,设置断点,完成设置后,会把断点信息(包括业务流程上下文)通过记录断点模块记录到数据库。软件服务端以及软件界面上部署的各个断点处理模块,可以进行断点应用反馈,
96.基于上述部署,可以进行断点设置、取消、忽略、恢复等操作,可以快速发现代码逻
辑的合理性问题。
97.本实施例中,软件服务端所部署的终端设备/硬件,不限于各种类型的物联网设施/系统。
98.需要说明的是,尽管以分值流程作为示例介绍了如上业务断点拦截的调试方案,但本领域技术人员能够理解,本公开应不限于此。事实上,用户完全可根据实际应用场景灵活设定断点拦截节点,只要可以按照上述技术方法实现本技术的技术功能即可。
99.实施例2
100.基于实施例1的实施原理,本技术另一方面,提出一种基于上述所述的一种物联网软件业务流程调试装置的调试方法,包括如下步骤:
101.s1、选择业务节点,进行断点设置,并将断点的设置信息通过断点记录模块发送并保存至断点数据库;
102.设置断点,由软件界面实现,在业务某个结点,设置断点,完成设置后,会把断点信息(包括业务流程上下文)通过记录断点模块记录到数据库。
103.设置断点,可以根据业务条件针对性设置,比如某个固定人员发起的流程,或者某个固定的流程号。
104.s2、根据预设的断点调试方案,利用断点处理单元进行断点调试,并将断点调试信息发送并保存至断点数据库。
105.断点调试方案,可以是:
106.拦截断点:软件服务端断点拦截模块,获取到断点信息后(主动轮询获取或者被动推送获取),会对软件界面所有业务节点处理的请求进行拦截判断,如果当前请求是来自设置断点的请求,则拦截不予通过;请求到节点处理代码,将业务流程挂起,并返回接口业务流程和节点相关信息,软件界面展示相关业务处理节点信息。
107.取消/忽略断点:取消(会删除断点数据库里面断点的相关信息)或者忽略(设置断点状态,更新断点业务上下文信息)断点,重新请求业务节点处理接口,触发业务流程处理往下走。
108.恢复断点:在取消/忽略断点后,再接收到新的业务节点处理接口时,通过断点恢复模块重新请求业务节点处理接口,恢复业务处理流程,更新断点状态,并将断点信息发送并保存至所述断点数据库。
109.作为本技术的一可选实施方案,可选地,所述根据预设的断点调试方案,利用断点处理单元进行断点调试,并将断点调试信息发送并保存至断点数据库,包括:
110.获取断点信息;
111.利用业务断点拦截模块,对软件界面中所有业务节点处理的请求进行拦截判断:
112.如果当前请求是来自所设置断点的请求,则拦截不予通过,并请求得到该节点处理代码,将业务流程挂起;
113.返回接口业务流程和该节点信息至软件界面,软件界面展示业务处理节点信息。
114.作为本技术的一可选实施方案,可选地,所述根据预设的断点调试方案,利用断点处理单元进行断点调试,并将断点调试信息发送并保存至断点数据库,包括:
115.在利用取消/忽略模块取消断点时,从软件服务端中删除该断点在所述断点数据库中的断点信息;
116.在利用取消/忽略模块忽略断点时,从软件服务端中重新设置该断点状态并更新在所述断点数据库中的断点业务上下文信息;
117.在需要恢复断点时,通过断点恢复模块重新请求业务节点处理接口,恢复业务处理流程,更新断点状态,并将断点信息发送并保存至所述断点数据库。
118.显然,本领域的技术人员应该明白,实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成的,程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各控制方法的实施例的流程。上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
119.本领域技术人员可以理解,实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成的,程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各控制方法的实施例的流程。其中,存储介质可为磁碟、光盘、只读存储记忆体(read-onlymemory,rom)、随机存储记忆体(randomaccessmemory,ram)、快闪存储器(flashmemory)、硬盘(harddiskdrive,缩写:hdd)或固态硬盘(solid-statedrive,ssd)等;存储介质还可以包括上述种类的存储器的组合。
120.实施例3
121.更进一步地,本技术另一方面,提出一种调试系统,包括:
122.处理器;
123.用于存储处理器可执行指令的存储器;
124.其中,所述处理器被配置为执行所述可执行指令时实现上述所述的调试方法。
125.本公开实施例来调试系统包括处理器以及用于存储处理器可执行指令的存储器。其中,处理器被配置为执行可执行指令时实现前面任一所述的一种物联网软件业务流程调试装置。
126.此处,应当指出的是,处理器的个数可以为一个或多个。同时,在本公开实施例的调试系统中,还可以包括输入装置和输出装置。其中,处理器、存储器、输入装置和输出装置之间可以通过总线连接,也可以通过其他方式连接,此处不进行具体限定。
127.存储器作为一计算机可读存储介质,可用于存储软件程序、计算机可执行程序和各种模块,如:本公开实施例的一种物联网软件业务流程调试装置所对应的程序或模块。处理器通过运行存储在存储器中的软件程序或模块,从而执行调试系统的各种功能应用及数据处理。
128.输入装置可用于接收输入的数字或信号。其中,信号可以为产生与设备/终端/服务器的用户设置以及功能控制有关的键信号。输出装置可以包括显示屏等显示设备。
129.以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本技术领
域的其它普通技术人员能理解本文披露的各实施例。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1