CN115509509A - 应用软件开发过程的可视化方法及系统 - Google Patents
应用软件开发过程的可视化方法及系统 Download PDFInfo
- Publication number
- CN115509509A CN115509509A CN202211112242.0A CN202211112242A CN115509509A CN 115509509 A CN115509509 A CN 115509509A CN 202211112242 A CN202211112242 A CN 202211112242A CN 115509509 A CN115509509 A CN 115509509A
- Authority
- CN
- China
- Prior art keywords
- application software
- development process
- node
- branch
- log file
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 130
- 238000007794 visualization technique Methods 0.000 title claims abstract description 30
- 238000004458 analytical method Methods 0.000 claims abstract description 44
- 238000011161 development Methods 0.000 claims abstract description 38
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 33
- 238000012800 visualization Methods 0.000 claims description 18
- 238000004590 computer program Methods 0.000 claims description 15
- 238000012795 verification Methods 0.000 claims description 4
- 238000009795 derivation Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 8
- 238000007726 management method Methods 0.000 description 6
- 230000000007 visual effect Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 238000004519 manufacturing process Methods 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 239000003086 colorant Substances 0.000 description 1
- 210000001520 comb Anatomy 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000013515 script Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000010937 topological data analysis Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/34—Graphical or visual programming
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供一种应用软件开发过程的可视化方法及系统,方法包括:根据应用软件发布平台中预置的拓扑分析算法对应用软件开发过程中产生的日志文件进行分析,获取应用软件版本开发过程中的目标分支的拓扑关系,所述日志文件中记录了应用软件开发过程中的各分支的节点信息;在所述应用软件发布平台中对所述拓扑关系进行可视化显示。所述系统执行所述方法。本发明基于预置的拓扑分析算法对应用软件开发过程中的日志文件进行分析,得到应用软件开发过程中的关注的目标分支的拓扑关系,并通过对拓扑关系可视化显示,清晰展示了目标分支中拓扑关系,克服了现有技术中因追踪目标分支需人工记录产生的误差导致应用软件最终版本发布错误的问题。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种应用软件开发过程的可视化方法及系统。
背景技术
在应用软件开发项目中,分布式版本控制系统Git的代码分支管理一直是需要小心处理的问题。常用的分支管理策略保持了项目简洁性,分支状况容易追踪。但在多个批次同时在进行开发测试,而且批次发布顺序可能变化的情况下,无法采用常用的分支管理策略,因为测试及组包将在不同的批次分支上进行,于是分支之间涉及到功能分支合并到批次分支进行测试,测试完成之后在批次分支上发布版本,确定投产后交付到主master分支,而其它批次分支要同步交付内容等等复杂操作,Git的提交日志错综复杂,通过普通的日志可视化工具无法清晰展现各分支之间的拓扑关系,此外,为保持对软件开发过程中分支版本的追踪,需要人工记录。
发明内容
本发明提供的应用软件开发过程的可视化方法及系统,用于解决现有技术中存在的上述问题,基于预置的拓扑分析算法对应用软件开发过程中的日志文件进行分析,得到应用软件开发过程中的关注的目标分支的拓扑关系,并通过对拓扑关系可视化显示,清晰展示了目标分支中拓扑关系,克服了现有技术中因追踪目标分支需人工记录产生的误差导致应用软件最终版本发布错误的问题。
本发明提供的一种应用软件开发过程的可视化方法,包括:
根据应用软件发布平台中预置的拓扑分析算法对应用软件开发过程中产生的日志文件进行分析,获取应用软件版本开发过程中的目标分支的拓扑关系,所述日志文件中记录了应用软件开发过程中的各分支的节点信息;
在所述应用软件发布平台中对所述拓扑关系进行可视化显示。
根据本发明提供的一种应用软件开发过程的可视化方法,所述根据预设拓扑分析算法分析应用软件开发过程中产生的日志文件,获取应用软件版本开发过程中的目标分支的拓扑关系之前,所述方法,还包括:
获取存储所述日志文件的数据仓库地址;
对所述应用软件发布平台接收到的用户的申请访问请求进行校验,并在校验通过后,获取所述日志文件,所述申请访问请求包括所述数据仓库地址以及用户身份信息。
根据本发明提供的一种应用软件开发过程的可视化方法,所述获取应用软件版本开发过程中的目标分支的拓扑关系,包括:
根据所述拓扑分析算法,对所述日志文件中的所述目标分支中的各节点信息进行分析,以确定所述目标分支中的第一节点,所述第一节点具有唯一父节点和唯一子节点,且所述第一节点没有标识;
对所述第一节点进行隐藏后,获取所述拓扑关系。
根据本发明提供的一种应用软件开发过程的可视化方法,所述根据应用软件发布平台中预置的拓扑分析算法对应用软件开发过程中产生的日志文件进行分析,获取应用软件版本开发过程中的目标分支的拓扑关系,还包括:
根据所述拓扑分析算法,对所述日志文件中的所述目标分支中的各节点信息进行分析,以确定所述目标分支中的第二节点,所述第二节点具有多个父节点,且所述第二节点的父节点均不在所述目标分支中;
对所述第二节点进行隐藏后,获取所述拓扑关系。
根据本发明提供的一种应用软件开发过程的可视化方法,所述根据应用软件发布平台中预置的拓扑分析算法对应用软件开发过程中产生的日志文件进行分析,获取应用软件版本开发过程中的目标分支的拓扑关系,还包括:
根据所述拓扑分析算法,对所述日志文件中的所述目标分支中的各节点信息进行分析,以确定所述目标分支中的第三节点,所述第三节点出现在包括所述目标分支的多个分支中;
对包含所述第三节点的各个分支之间的派生关系或合并关系添加标识后,获取所述拓扑关系。
根据本发明提供的一种应用软件开发过程的可视化方法,所述目标分支包括如下至少一项:
应用软件版本发布分支和应用软件版本追平分支。
本发明还提供一种应用软件开发过程的可视化系统,包括:分析模块以及显示模块;
所述分析模块,用于根据应用软件发布平台中预置的拓扑分析算法对应用软件开发过程中产生的日志文件进行分析,获取应用软件版本开发过程中的目标分支的拓扑关系,所述日志文件中记录了应用软件开发过程中的各分支的节点信息;
所述显示模块,用于在所述应用软件发布平台中对所述拓扑关系进行可视化显示。
本发明还提供一种电子设备,包括处理器和存储有计算机程序的存储器,所述处理器执行所述程序时实现如上述任一种所述应用软件开发过程的可视化方法。
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述应用软件开发过程的可视化方法。
本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述应用软件开发过程的可视化方法。
本发明提供的应用软件开发过程的可视化方法及系统,基于预置的拓扑分析算法对应用软件开发过程中的日志文件进行分析,得到应用软件开发过程中的关注的目标分支的拓扑关系,并通过对拓扑关系可视化显示,清晰展示了目标分支中拓扑关系,克服了现有技术中因追踪目标分支需人工记录产生的误差导致应用软件最终版本发布错误的问题。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明提供的应用软件开发过程的可视化方法的流程示意图之一;
图2是本发明提供的各节点之间的拓扑关系示意图之一;
图3是本发明提供的应用软件开发过程的可视化方法的流程示意图之二;
图4是本发明提供的应用软件开发过程的可视化方法的流程示意图之三;
图5是本发明提供的第一级父提交的示意图;
图6是本发明提供的各节点之间的拓扑关系示意图之二;
图7是本发明提供的各节点之间的拓扑关系示意图之三;
图8是本发明提供的拓扑关系的示意图;
图9是本发明提供的应用软件开发过程的可视化系统的结构示意图;
图10是本发明提供的电子设备的实体结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1是本发明提供的应用软件开发过程的可视化方法的流程示意图之一,如图1所示,方法包括:
步骤100、根据应用软件发布平台中预置的拓扑分析算法对应用软件开发过程中产生的日志文件进行分析,获取应用软件版本开发过程中的目标分支的拓扑关系;
步骤200、在应用软件发布平台中对拓扑关系进行可视化显示;
其中,所述日志文件中记录了应用软件开发过程中的各分支的节点信息。
需要说明的是,上述方法的执行主体可以是计算机设备。
可选地,在步骤100中,应用软件发布平台可以基于Electron技术(应用软件发布平台的底层基于Node.js技术实现)开发而成的,并通过应用软件发布平台中预置的拓扑分析算法对应用软件开发过程中产生的日志文件进行分析,得到应用软件开发过程中重点关注的目标分支的拓扑关系。
在步骤200中,基于应用软件发布平台对得到的目标分支的拓扑关系进行可视化显示。
在一个实施例中,将目标分支的拓扑关系中的各节点信息梳理好后,对其需要进行可视化操作。具体地,可以结合Html5与JavaScript技术对其进行可视化操作,并将可视化结果方便地嵌入网站及应用软件发布平台中。
需要说明的是,可视化操作结合Html5和JavaScript实现,但需要完整的软件或网站来支持,便于用户使用。
在一个实施例中,应用软件开发过程中产生的日志文件事先存储在数据仓库(如Git仓库)中。
Git仓库的存储的应用软件开发过程中的日志文件commit(提交日志)记录了每一次代码的增量改动,是Git的底层建筑,其branch分支(版本控制中出现的分叉,每个分支可以独立发展,也可以合并)、tag标签等都基于此日志。除初始化commit外,每一个commit都有一个或两个父commit,表明此commit是基于其父commit上做的增量变化。commits之间的关联组成了图结构,而分branch、tag则都是指向图结构顶点的指针,给予分支管理极大的自由性。
同时,Git自带日志图形化命令,可以图形化展示提交日志,详细列出了每一次提交记录,完整展示了提交记录节点之间的关系,但是当提交记录复杂后用户很难查看分支与分支之间的关联。
Git的底层设计使得Git在性能及占用空间上都极为出色,且适用于分布式开发,对于简单的分支管理策略,也能提供友好的可视化显示,易于追踪历史记录。但分支策略比较复杂时,Git能提供的可视化方案将会变得杂乱,如图2所示,commit节点之间的关系可能错综复杂,以至于很难快速找到所重点关注的目标分支及标签。此外,也很难区分目标分支的提交与其它分支合并到此分支的提交(如branch2,单从图2中并不能确定branch2分支到底是commit 0-2-4-6-7是原分支提交还是由节点commit 0-1-3-5-6-7是原分支提交后得到的)。
commit:Git里的提交,每一次提交都在上一个提交的存量上做了增量改动,一连串的commit形成了最终版本。
进一步地,在一个实施例中,目标分支包括如下至少一项:
应用软件版本发布分支和应用软件版本追平分支。
需要说明的是,多个分支同时开发时,如果其中一个分支开发完成并投产,其余分支需要包含已投产的内容,就需要将已投产分支的代码合并到其余仍然在开发中的分支,这个过程叫追平。
参见图3,本发明通过应用软件开发过程(自动化版本发布过程及分支合并过程)中以确保重要节点打上tag(作为标识),在当前分支记录版本tag(例如,交付v1.0、交付v2.0、交付v3.0作为不同版本的标识)以及在开发分支记录追平tag,然后对应用软件开发过程中产生的日志文件进行拓扑分析,梳理清楚各个分支间的关系,最终在应用软件发布平台上展示目标分支的拓扑关系,从而清晰追踪各个分支的交付情况。
在复杂应用软件开发中自动化流程避免人工误差以及清晰的版本追踪可视化,以帮助开发运维准确明了地了解代码仓库状态,能极大减轻版本发布过程中人员压力,消除版本记录与现实状况的差异,减少版本上线的出错率以及方便回溯。通过版本发布及追平自动化流程一方面避免人工操作繁琐流程,另一方面也自动将目标分支打上tag,成为对日志文件中分析的基础。
在一个实施例中,应用软件发布平台提供有数据仓库例如Git仓库地址输入栏,方便用户能够通过在应用软件发布平台上直接输入Git仓库地址,显示目标分支的拓扑关系,方便人员使用。
本发明提供的应用软件开发过程的可视化方法,基于预置的拓扑分析算法对应用软件开发过程中的日志文件进行分析,得到应用软件开发过程中的关注的目标分支的拓扑关系,并通过对拓扑关系可视化显示,清晰展示了目标分支中拓扑关系,克服了现有技术中因追踪目标分支需人工记录产生的误差导致应用软件最终版本发布错误的问题。
进一步地,在一个实施例中,步骤100之前,所述方法,还可以具体包括:
获取存储所述日志文件的数据仓库地址;
对所述应用软件发布平台接收到的用户的申请访问请求进行校验,并在校验通过后,获取所述日志文件,所述申请访问请求包括所述数据仓库地址以及用户身份信息。
可选地,参见图4,获取存储应用软件开发过程中产生的日志文件的数据仓库地址(Git仓库地址),例如可以使用如下命令,提取当前分支(如master)的提交记录,同理,可以获取所有关注的重要分支(目标分支)的提交记录。不同分支之间的记录会有重合,将在拓扑分析中进一步分析。
git-c log.showSignatrue=false log master--decorate=full--format=%H$%P$%aN$%aE$%at$%cN$%cE$%ct$%B$%s$%ad$%cd$%d;
用户发送访问数据Git仓库的申请访问请求给应用软件发布平台(包括Git仓库地址以及用户身份信息),应用软件发布平台对该申请访问请求中的Git仓库地址以及用户身份信息进行校验。
在一个实施例中,用户身份信息可以具体包括用户名以及密码,通过对Git仓库地址、用户名以及密码进行校验,确定是否给予用户访问Git仓库的权限,并在校验通过后,反馈应用软件开发过程中产生的日志文件。
在一个实施例中,根据用户重点关注的目标分支,执行Git log获取log数据即Gitlog数据,并基于应用软件发布平台中预置的拓扑分析算法对目标分支的日志文件(Gitlog数据)进行分析,得到目标分支的拓扑关系,并进行可视化展示。其中,Git log:Git日志,记录了每一次commit改动内容。
Git log是对历史改动的详细记录,所以其展示往往是依据时间将所有commit都展示,而Git log图只是辅助工具,在简单的分支管理情况下也能清晰展示分支间的关系,但分支较多,开发人员较多的复杂项目使得Git log图十分难读,无法清晰展示分支间的关系。而本发明的重点在于追踪目标分支间的关系,通过水平而非竖直的图像视觉方案展示目标分支的重要节点及关系,并采用以虚线填充使得目标分支长度一致又能体现实际分支进度,不同节点及关系可以采用不同颜色体现,画面直观清晰。
本发明提供的应用软件开发过程的可视化方法,能极大减轻应用软件开发过程中如版本发布过程中的人员压力,消除版本记录与现实状况的差异,减少版本上线的出错率以及方便回溯。
进一步地,在一个实施例中,步骤100,可以具体包括:
步骤1001、根据所述拓扑分析算法,对所述日志文件中的所述目标分支中的各节点信息进行分析,以确定所述目标分支中的第一节点,所述第一节点具有唯一父节点和唯一子节点,且所述第一节点没有标识;
步骤1002、对所述第一节点进行隐藏后,获取所述拓扑关系。
可选地,应用软件开发过程中将版本发布及版本追平过程自动化,并在相关节点自动打上tag(例如,追平v1.0、追平v2.0、追平v3.0作为不同版本的标识)。
版本发布及版本追平是按批次开发过程中常常操作的步骤,这些步骤往往繁琐且易出错,由人工操作并手动记录每一步骤往往不可靠,最终几乎必然导致记录和实际情况的脱节。将这些重要但繁琐的步骤利用Python脚本自动化后,不仅极大减轻了人员的工作负担,减小出错率,也能够确保每一步骤得以在Git上自动记录,为后续的日志文件分析提供了基础,避免现实与记录之间的脱节。
日志文件中记录了应用软件开发过程中每次commit节点信息,本发明提供的拓扑分析算法主要针对分支与分支之间的交叉关系进行分析,一方面需要隐藏拓扑关系上不重要的节点,另一方面要通过拓扑关系(节点之间的图关系、分支节点的交叉、分支初始节点提取等等)及tag标识分析分支信息。
在一个实施例中,如果目标分支中的某一个节点(即第一节点)只有一个父节点且只有一个子节点指向它,且没有标识,说明该节点是一个中间不重要节点,可以直接隐藏,并在最终显示的拓扑关系中隐藏该节点。
进一步地,在一个实施例中,步骤100,还可以具体包括:
步骤1003、根据所述拓扑分析算法,对所述日志文件中的所述目标分支中的各节点信息进行分析,以确定所述目标分支中的第二节点,所述第二节点具有多个父节点,且所述第二节点的父节点均不在所述目标分支中;
步骤1004、对所述第二节点进行隐藏后,获取所述拓扑关系。
如果一个节点(即第二节点)有多个(以两个为例)父节点,说明其是两个分支的合并点。但这不一定是本发明关注目标分支的合并点,一般来说,如果这个节点有分支追平tag,表明这是个分支追平合并,是重要节点,而没有tag的节点可以从拓扑关系(可以是拓扑图)上分析,如果此节点的某个父节点不在关注的目标分支里,拓扑关系上可以隐藏此节点。
进一步地,在一个实施例中,步骤100,还可以具体包括:
步骤1005、根据所述拓扑分析算法,对所述日志文件中的所述目标分支中的各节点信息进行分析,以确定所述目标分支中的第三节点,所述第三节点出现在包括所述目标分支的多个分支中;
步骤1006、对包含所述第三节点的各个分支之间的派生关系或合并关系添加标识后,获取所述拓扑关系。
目标分支中的一个节点(即第三节点)在多个(例如两个)分支同时出现,理论上这个节点所有的前溯节点都将在两个分支同时出现,说明两个分支在该节点出现过合并或者一个分支直接由另一个分支派生而来,此时需要进一步分析日志文件的first parent信息。
first parent:第一级父提交,即所有直接提交到某分支的提交,而不是在其它分支提交后合并到此分支的提交。如图5所示,M,M1,M2,M3和M4是Master分支的第一级父提交,其余节点(A1,A2,A3,A4,B1,B2,B3,C1,C2)虽然合并到了Master分支上,但并不是第一级父提交。
参见图6,分支节点的交叉如果A节点在A’分支的first parent节点里,且有另一分支B’的某个节点B的父节点是此节点A,则说明B’分支是从A’分支中的A节点派生而出。
参见图7如果C节点有两个父节点,说明两分支(C’,C”)在C节点处合并,根据firstparent节点信息可以判断是哪个分支合并到了另一个分支:若C节点在C’分支的firstparent节点里,则表明此处是C”分支合并到了C’分支,反之亦然。
对包含第三节点的各个分支之间的派生关系或合并关系添加标识(例如指向关系)后,得到拓扑关系。
如图8所示,经过分析后,不重要的节点已经被隐藏,且每个节点都只属于一个分支,节点之间的指向关系可以表示分支间的派生和合并关系。
本发明提供的应用软件开发过程的可视化方法,基于预置的拓扑分析算法深入研究应用软件开发过程中的关注的目标分支的拓扑关系,使得目标分支的拓扑关系清晰明了,并通过对拓扑关系可视化显示,清晰展示了目标分支中拓扑关系,克服了现有技术中因追踪目标分支需人工记录产生的误差导致应用软件最终版本发布错误的问题。
下面对本发明提供的应用软件开发过程的可视化系统进行描述,下文描述的应用软件开发过程的可视化系统与上文描述的应用软件开发过程的可视化方法可相互对应参照。
图9是本发明提供的应用软件开发过程的可视化系统的结构示意图,如图9所示,包括:
分析模块910以及显示模块911;
所述分析模块910,用于根据应用软件发布平台中预置的拓扑分析算法对应用软件开发过程中产生的日志文件进行分析,获取应用软件版本开发过程中的目标分支的拓扑关系,所述日志文件中记录了应用软件开发过程中的各分支的节点信息;
所述显示模块911,用于在所述应用软件发布平台中对所述拓扑关系进行可视化显示。
本发明提供的应用软件开发过程的可视化系统,基于预置的拓扑分析算法对应用软件开发过程中的日志文件进行分析,得到应用软件开发过程中的关注的目标分支的拓扑关系,并通过对拓扑关系可视化显示,清晰展示了目标分支中拓扑关系,克服了现有技术中因追踪目标分支需人工记录产生的误差导致应用软件最终版本发布错误的问题。
图10是本发明提供的一种电子设备的实体结构示意图,如图10所示,该电子设备可以包括:处理器(processor)1010、通信接口(communication interface)1011、存储器(memory)1012和总线(bus)1013,其中,处理器1010,通信接口1011,存储器1012通过总线1013完成相互间的通信。处理器1010可以调用存储器1012中的逻辑指令,以执行如下方法:
根据应用软件发布平台中预置的拓扑分析算法对应用软件开发过程中产生的日志文件进行分析,获取应用软件版本开发过程中的目标分支的拓扑关系,所述日志文件中记录了应用软件开发过程中的各分支的节点信息;
在所述应用软件发布平台中对所述拓扑关系进行可视化显示。
此外,上述的存储器中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机电源屏(可以是个人计算机,服务器,或者网络电源屏等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
进一步地,本发明公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的应用软件开发过程的可视化方法,例如包括:
根据应用软件发布平台中预置的拓扑分析算法对应用软件开发过程中产生的日志文件进行分析,获取应用软件版本开发过程中的目标分支的拓扑关系,所述日志文件中记录了应用软件开发过程中的各分支的节点信息;
在所述应用软件发布平台中对所述拓扑关系进行可视化显示。
另一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的应用软件开发过程的可视化方法,例如包括:
根据应用软件发布平台中预置的拓扑分析算法对应用软件开发过程中产生的日志文件进行分析,获取应用软件版本开发过程中的目标分支的拓扑关系,所述日志文件中记录了应用软件开发过程中的各分支的节点信息;
在所述应用软件发布平台中对所述拓扑关系进行可视化显示。
以上所描述的系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机电源屏(可以是个人计算机,服务器,或者网络电源屏等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种应用软件开发过程的可视化方法,其特征在于,包括:
根据应用软件发布平台中预置的拓扑分析算法对应用软件开发过程中产生的日志文件进行分析,获取应用软件版本开发过程中的目标分支的拓扑关系,所述日志文件中记录了应用软件开发过程中的各分支的节点信息;
在所述应用软件发布平台中对所述拓扑关系进行可视化显示。
2.根据权利要求1所述的应用软件开发过程的可视化方法,其特征在于,所述获取应用软件版本开发过程中的目标分支的拓扑关系之前,所述方法,还包括:
获取存储所述日志文件的数据仓库地址;
对所述应用软件发布平台接收到的用户的申请访问请求进行校验,并在校验通过后,获取所述日志文件,所述申请访问请求包括所述数据仓库地址以及用户身份信息。
3.根据权利要求1所述的应用软件开发过程的可视化方法,其特征在于,所述根据应用软件发布平台中预置的拓扑分析算法对应用软件开发过程中产生的日志文件进行分析,获取应用软件版本开发过程中的目标分支的拓扑关系,包括:
根据所述拓扑分析算法,对所述日志文件中的所述目标分支中的各节点信息进行分析,以确定所述目标分支中的第一节点,所述第一节点具有唯一父节点和唯一子节点,且所述第一节点没有标识;
对所述第一节点进行隐藏后,获取所述拓扑关系。
4.根据权利要求1所述的应用软件开发过程的可视化方法,其特征在于,所述根据应用软件发布平台中预置的拓扑分析算法对应用软件开发过程中产生的日志文件进行分析,获取应用软件版本开发过程中的目标分支的拓扑关系,还包括:
根据所述拓扑分析算法,对所述日志文件中的所述目标分支中的各节点信息进行分析,以确定所述目标分支中的第二节点,所述第二节点具有多个父节点,且所述第二节点的父节点均不在所述目标分支中;
对所述第二节点进行隐藏后,获取所述拓扑关系。
5.根据权利要求1所述的应用软件开发过程的可视化方法,其特征在于,所述根据应用软件发布平台中预置的拓扑分析算法对应用软件开发过程中产生的日志文件进行分析,获取应用软件版本开发过程中的目标分支的拓扑关系,还包括:
根据所述拓扑分析算法,对所述日志文件中的所述目标分支中的各节点信息进行分析,以确定所述目标分支中的第三节点,所述第三节点出现在包括所述目标分支的多个分支中;
对包含所述第三节点的各个分支之间的派生关系或合并关系添加标识后,获取所述拓扑关系。
6.根据权利要求1-5任一项所述的应用软件开发过程的可视化方法,其特征在于,所述目标分支包括如下至少一项:
应用软件版本发布分支和应用软件版本追平分支。
7.一种应用软件开发过程的可视化系统,其特征在于,包括:分析模块以及显示模块;
所述分析模块,用于根据应用软件发布平台中预置的拓扑分析算法对应用软件开发过程中产生的日志文件进行分析,获取应用软件版本开发过程中的目标分支的拓扑关系,所述日志文件中记录了应用软件开发过程中的各分支的节点信息;
所述显示模块,用于在所述应用软件发布平台中对所述拓扑关系进行可视化显示。
8.一种电子设备,包括处理器和存储有计算机程序的存储器,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6任一项所述应用软件开发过程的可视化方法。
9.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至6任一项所述应用软件开发过程的可视化方法。
10.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述应用软件开发过程的可视化方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211112242.0A CN115509509A (zh) | 2022-09-13 | 2022-09-13 | 应用软件开发过程的可视化方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211112242.0A CN115509509A (zh) | 2022-09-13 | 2022-09-13 | 应用软件开发过程的可视化方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115509509A true CN115509509A (zh) | 2022-12-23 |
Family
ID=84504269
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211112242.0A Pending CN115509509A (zh) | 2022-09-13 | 2022-09-13 | 应用软件开发过程的可视化方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115509509A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116382666A (zh) * | 2023-04-03 | 2023-07-04 | 北京柏睿数据技术股份有限公司 | 一种基于人工智能模型的项目执行方法和系统 |
-
2022
- 2022-09-13 CN CN202211112242.0A patent/CN115509509A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116382666A (zh) * | 2023-04-03 | 2023-07-04 | 北京柏睿数据技术股份有限公司 | 一种基于人工智能模型的项目执行方法和系统 |
CN116382666B (zh) * | 2023-04-03 | 2023-09-26 | 北京柏睿数据技术股份有限公司 | 一种基于人工智能模型的项目执行方法和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9424167B2 (en) | Automated testing of an application system | |
CN106844217B (zh) | 对应用的控件进行埋点的方法及装置、可读存储介质 | |
KR20210100600A (ko) | 소프트웨어 테스팅 | |
US20080163187A1 (en) | Graphical representation of dependencies between changes of source code | |
US20180018680A1 (en) | Product test orchestration | |
US10275266B1 (en) | Language acceptance testing | |
CN109710528B (zh) | 一种测试脚本生成方法、装置、设备和介质 | |
CN109324864B (zh) | 一种人机交互操作信息的获取方法及装置 | |
US10338915B2 (en) | Automated identification of code dependency | |
US10884907B1 (en) | Methods and systems for automated testing using browser extension | |
CN110837356B (zh) | 一种数据处理方法和装置 | |
JP5327908B2 (ja) | 自動操作部品の特定方法およびその装置 | |
CN115509509A (zh) | 应用软件开发过程的可视化方法及系统 | |
US11308504B2 (en) | Product test orchestration | |
CN109636303B (zh) | 一种半自动提取和结构化文档信息的存储方法及系统 | |
CN110889013A (zh) | 一种基于xml的数据关联方法、装置、服务器及存储介质 | |
CN110908907A (zh) | Web页面测试方法、装置、设备及存储介质 | |
WO2019026248A1 (ja) | プログラム開発支援装置、プログラム開発支援方法、及びプログラム開発支援プログラム | |
US8782626B2 (en) | Search suggestions for static code analysis | |
US10788958B2 (en) | Personalization of a web application | |
US20110145661A1 (en) | Selectively displaying source code defect information within a source code editor | |
CN115827730A (zh) | 一种药品研究模型形成方法、装置、介质和设备 | |
US20240104185A1 (en) | Device registration methods and apparatuses, electronic devices and storage media | |
CN110879871B (zh) | 页面菜单的配置方法及装置 | |
CN113902531A (zh) | 投标文件自动生成系统、方法、电子设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |