多项目多系统环境的版本号有向图排序稽核方法和系统技术方案

技术编号:24572731 阅读:19 留言:0更新日期:2020-06-20 23:57
本发明专利技术公开了一种多项目多系统环境的版本号有向图排序稽核方法和系统,能够在大量的系统版本号中快速找到错误版本号并做提示,从而减轻人工负担,提高发布质量。其技术方案为:借助统一入口收集多个开发部门的所有开发项目的所有版本,通过单向依赖规则和有向图算法进行版本号稽核,在单系统多项目的情况下找出实际依赖错误的版本号,在多系统多项目的情况下根据版本依赖关系构造项目依赖关系找出互相依赖的项目错误,在多系统多项目的情况下在上述找出的正确项目依赖信息基础上,根据有向无环的原则找出多系统版本号(项目)循环依赖的错误。

Audit method and system of version number digraph sorting in multi project and multi system environment

【技术实现步骤摘要】
多项目多系统环境的版本号有向图排序稽核方法和系统
本专利技术涉及一种系统版本号稽核技术,具体涉及一种多项目多系统环境的版本号有向图排序稽核方法和系统。
技术介绍
一般一个IT技术公司会有一个运维部门和多个开发部门。这n个开发部门会发起m个项目(项目是指为解决某个问题或者需求,组织多人完成一次某些系统的软件功能的开发过程),组织开发和发布很多个版本,而运维部门负责将这些版本上线。这个过程比较复杂,涉及相当多的人,相当长的时间,一般通过项目管理软件进行管理。目前市场上存在的项目管理软件或版本管理软件,比如jira、git等。其中jira是一个缺陷跟踪管理系统,为针对缺陷管理、任务跟踪和项目管理的商业应用软件;git是一个分散式版本控制软件。Jira这种项目管理软件可以记录项目和版本号(版本号是指一个系统的版本的标识号),也可以展示项目和版本号之间的对应关系,却没有方法去稽核这个关系的正确性。git这种版本管理软件可以管理版本之间的分支和合并,能够判断版本之间的正确性,但是缺少对多个版本组成的多项目依赖关系的管理,以至于需要花费大量时间去做人工稽核,不仅效率低下,而且容易出错。
技术实现思路
以下给出一个或多个方面的简要概述以提供对这些方面的基本理解。此概述不是所有构想到的方面的详尽综览,并且既非旨在指认出所有方面的关键性或决定性要素亦非试图界定任何或所有方面的范围。其唯一的目的是要以简化形式给出一个或多个方面的一些概念以为稍后给出的更加详细的描述之序。本专利技术的目的在于解决上述问题,提供了一种多项目多系统环境的版本号有向图排序稽核方法和系统,能够在大量的系统版本号中快速找到错误版本号并做提示,从而减轻人工负担,提高发布质量。本专利技术的技术方案为:本专利技术揭示了一种多项目多系统环境的版本号有向图排序稽核方法,方法包括:步骤1:获取包含项目和版本号信息的数据后进行预处理,经排除无效数据后得到筛选后的数据;步骤2:进行单系统多项目版本号的依赖稽核,找出实际依赖错误的版本号;步骤3:进行多系统多项目依赖稽核,根据版本依赖关系构造项目依赖关系,找出互相依赖的项目错误,再根据有向无环的原则找出多系统版本号循环依赖的错误;步骤4:展现有向图数据并标注出错误版本数据。根据本专利技术的多项目多系统环境的版本号有向图排序稽核方法的一实施例,步骤1进一步包括:第一步:通过统一入口收集项目和版本号信息并将其保存为字典类型,其中字典类型的键为版本号,对应的值包括系统名、依赖版本号、项目标识和项目状态;第二步:通过运维接口获取目前仿真/生产环境上与上一步相同的系统版本号,仿真环境中的所有版本集合设为一个虚拟项目,其依赖版本号设置为空,项目标识设置为仿真环境,项目状态设置为已上线,对生产环境中的所有版本集合也做同样的处理,如果其他项目与仿真生产环境的数据冲突,则默认仿真生产数据为正确,其他项目为错误,仿真生产环境的数据为版本号依赖的起始;第三步:将第一步中收集到的包括项目和版本号信息的数据,排除已经上线且版本号小于等于生产环境中的版本号的项目数据,得到筛选后的数据。根据本专利技术的多项目多系统环境的版本号有向图排序稽核方法的一实施例,步骤2进一步包括:在步骤1的筛选后的数据的基础上,按照系统抓取版本号,根据版本号单调递增原则对每个系统的版本号进行排序,每个系统获取一个版本号列表;对每个版本号列表逐一核对每个版本号的前一版本号与依赖版本号是否一致,如果不一致,则标记为错误,其中错误类型为版本依赖错误。根据本专利技术的多项目多系统环境的版本号有向图排序稽核方法的一实施例,步骤3进一步包括:在步骤1的筛选后的数据的基础上,按项目抓取版本号,然后在项目列表中按每两个项目都进行版本大小判断,区分出有版本大小冲突的项目X和没有冲突的正常项目Y;将X中的项目和Y中的项目一一进行版本大小判断,将X中没发现版本大小冲突的项目放到Y中,将经过处理后的剩余的X项目标记为错误,其中错误类型为不同系统的版本互相依赖;将正常项目Y放入有向图中,检查是否存在环,如果存在环则将该项目Y标记为错误,其中错误类型为项目循环依赖,如果不存在环则按照深度优先的规则对项目Y进行排序。根据本专利技术的多项目多系统环境的版本号有向图排序稽核方法的一实施例,在步骤3和步骤4之间还包括:将小于生产版本号且项目状态为未上线/结束的标记为错误,其中错误类型为已上线但未结束。本专利技术还揭示了一种多项目多系统环境的版本号有向图排序稽核系统,系统包括:采集筛选模块,用于获取包含项目和版本号信息的数据后进行预处理,经排除无效数据后得到筛选后的数据;单系统多项目版本号依赖稽核模块,用于进行单系统多项目版本号的依赖稽核,找出实际依赖错误的版本号;多系统多项目依赖稽核模块,用于进行多系统多项目依赖稽核,根据版本依赖关系构造项目依赖关系,找出互相依赖的项目错误,再根据有向无环的原则找出多系统版本号循环依赖的错误;展示模块,用于展现有向图数据并标注出错误版本数据。根据本专利技术的多项目多系统环境的版本号有向图排序稽核系统的一实施例,采集筛选模块配置为执行以下的处理:第一步:通过统一入口收集项目和版本号信息并将其保存为字典类型,其中字典类型的键为版本号,对应的值包括系统名、依赖版本号、项目标识和项目状态;第二步:通过运维接口获取目前仿真/生产环境上与上一步相同的系统版本号,仿真环境中的所有版本集合设为一个虚拟项目,其依赖版本号设置为空,项目标识设置为仿真环境,项目状态设置为已上线,对生产环境中的所有版本集合也做同样的处理,如果其他项目与仿真生产环境的数据冲突,则默认仿真生产数据为正确,其他项目为错误,仿真生产环境的数据为版本号依赖的起始;第三步:将第一步中收集到的包括项目和版本号信息的数据,排除已经上线且版本号小于等于生产环境中的版本号的项目数据,得到筛选后的数据。根据本专利技术的多项目多系统环境的版本号有向图排序稽核系统的一实施例,单系统多项目版本号依赖稽核模块配置为执行以下的处理:在采集筛选模块输出的数据的基础上,按照系统抓取版本号,根据版本号单调递增原则对每个系统的版本号进行排序,每个系统获取一个版本号列表;对每个版本号列表逐一核对每个版本号的前一版本号与依赖版本号是否一致,如果不一致,则标记为错误,其中错误类型为版本依赖错误。根据本专利技术的多项目多系统环境的版本号有向图排序稽核系统的一实施例,多系统多项目依赖稽核模块配置为执行以下的处理:在采集筛选模块输出的数据的基础上,按项目抓取版本号,然后在项目列表中按每两个项目都进行版本大小判断,区分出有版本大小冲突的项目X和没有冲突的正常项目Y;将X中的项目和Y中的项目一一进行版本大小判断,将X中没发现版本大小冲突的项目放到Y中,将经过处理后的剩余的X项目标记为错误,其中错误类型为不同系统的版本互相依赖;将正常项目Y本文档来自技高网...

【技术保护点】
1.一种多项目多系统环境的版本号有向图排序稽核方法,其特征在于,方法包括:/n步骤1:获取包含项目和版本号信息的数据后进行预处理,经排除无效数据后得到筛选后的数据;/n步骤2:进行单系统多项目版本号的依赖稽核,找出实际依赖错误的版本号;/n步骤3:进行多系统多项目依赖稽核,根据版本依赖关系构造项目依赖关系,找出互相依赖的项目错误,再根据有向无环的原则找出多系统版本号循环依赖的错误;/n步骤4:展现有向图数据并标注出错误版本数据。/n

【技术特征摘要】
1.一种多项目多系统环境的版本号有向图排序稽核方法,其特征在于,方法包括:
步骤1:获取包含项目和版本号信息的数据后进行预处理,经排除无效数据后得到筛选后的数据;
步骤2:进行单系统多项目版本号的依赖稽核,找出实际依赖错误的版本号;
步骤3:进行多系统多项目依赖稽核,根据版本依赖关系构造项目依赖关系,找出互相依赖的项目错误,再根据有向无环的原则找出多系统版本号循环依赖的错误;
步骤4:展现有向图数据并标注出错误版本数据。


2.根据权利要求1所述的多项目多系统环境的版本号有向图排序稽核方法,其特征在于,步骤1进一步包括:
第一步:通过统一入口收集项目和版本号信息并将其保存为字典类型,其中字典类型的键为版本号,对应的值包括系统名、依赖版本号、项目标识和项目状态;
第二步:通过运维接口获取目前仿真/生产环境上与上一步相同的系统版本号,仿真环境中的所有版本集合设为一个虚拟项目,其依赖版本号设置为空,项目标识设置为仿真环境,项目状态设置为已上线,对生产环境中的所有版本集合也做同样的处理,如果其他项目与仿真生产环境的数据冲突,则默认仿真生产数据为正确,其他项目为错误,仿真生产环境的数据为版本号依赖的起始;
第三步:将第一步中收集到的包括项目和版本号信息的数据,排除已经上线且版本号小于等于生产环境中的版本号的项目数据,得到筛选后的数据。


3.根据权利要求1所述的多项目多系统环境的版本号有向图排序稽核方法,其特征在于,步骤2进一步包括:
在步骤1的筛选后的数据的基础上,按照系统抓取版本号,根据版本号单调递增原则对每个系统的版本号进行排序,每个系统获取一个版本号列表;
对每个版本号列表逐一核对每个版本号的前一版本号与依赖版本号是否一致,如果不一致,则标记为错误,其中错误类型为版本依赖错误。


4.根据权利要求1所述的多项目多系统环境的版本号有向图排序稽核方法,其特征在于,步骤3进一步包括:
在步骤1的筛选后的数据的基础上,按项目抓取版本号,然后在项目列表中按每两个项目都进行版本大小判断,区分出有版本大小冲突的项目X和没有冲突的正常项目Y;
将X中的项目和Y中的项目一一进行版本大小判断,将X中没发现版本大小冲突的项目放到Y中,将经过处理后的剩余的X项目标记为错误,其中错误类型为不同系统的版本互相依赖;
将正常项目Y放入有向图中,检查是否存在环,如果存在环则将该项目Y标记为错误,其中错误类型为项目循环依赖,如果不存在环则按照深度优先的规则对项目Y进行排序。


5.根据权利要求1至4中任一项所述的多项目多系统环境的版本号有向图排序稽核方法,其特征在于,在步骤3和步骤4之间还包括:
将小于生产版本号且项目状态为未上线/结束的标记为错误,其中错误类型为已上线但未结束。


6.一种多项目多系统环境的版本号有向图排序稽核系统,其特征在于,...

【专利技术属性】
技术研发人员:胡晋舒刚
申请(专利权)人:上海金融期货信息技术有限公司
类型:发明
国别省市:上海;31

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

1