欢迎来到知嘟嘟! 联系电话:13095918853 卖家免费入驻,海量在线求购! 卖家免费入驻,海量在线求购!
知嘟嘟
我要发布
联系电话:13095918853
知嘟嘟经纪人
收藏
专利号: 2024111098100
申请人: 北京博珥佐特软件科技有限公司
专利类型:发明专利
专利状态:授权未缴费
专利领域: 计算;推算;计数
更新日期:2025-04-08
缴费截止日期: 暂无
价格&联系人
年费信息
委托购买

摘要:

权利要求书:

1.基于云平台的软件开发包的智能编译方法,其特征在于:包括以下步骤,

S1、预先获取软件开发包,并将软件开发包上传至云平台,云平台对软件开发包进行预处理,包括代码解析、依赖关系分析和初步的代码优化;

S2、根据S1步骤获取预处理后的软件开发包,并对预处理后的软件开发包内的相关开发任务数据信息进行监测,同时在进行软件不断开发的过程中,对主分支与各开发分支之间的相关差异数据信息进行记录,综合构建开发状态集合,根据开发状态集合生成差异系数Cyxs,若所述差异系数Cyxs超过安全阈值,发出调动预警指令;

S3、接收到调动预警指令之后,将各开发分支的修改结果同步至主分支中,并在软件进行开发过程中,对各开发分支间的相关联数据信息进行收集,以生成分支交叉影响集合,根据分支交叉影响集合生成交叉影响系数Jyxs,基于机器学习技术,通过将交叉影响系数Jyxs与差异系数Cyxs相关联,并经过无量纲处理后,拟合获取合并冲突指数Hczs;

S4、预先设置冲突阈值V,并将冲突阈值V与所述合并冲突指数Hczs进行对比分析,以综合判断当前软件开发包内,分支合并时的冲突程度;根据相应的冲突程度发出预警指令,做出智能编译前修复手段。

2.根据权利要求1所述的基于云平台的软件开发包的智能编译方法,其特征在于:S11、将云平台内的软件开发包依次进行代码解析、依赖关系分析和初步的代码优化,其中,代码解析包括将上传至云平台的软件开发包进行扫描,以识别编程语言和文件类型,并使用解析器对代码进行语法分析,生成抽象语法树;

S12、依赖关系分析包括通过解析后的代码,识别每个文件所依赖的文件,并根据解析结果构建依赖图谱,将依赖图谱中的节点代表为文件,边线代表为依赖关系;

S13、初步的代码优化包括使用代码格式化工具,对软件开发包内的代码进行格式统一;并使用静态分析工具检测潜在的错误、代码异味和安全漏洞,根据静态分析报告进行代码修正,再识别和删除未使用的代码,减少代码冗余。

3.根据权利要求1所述的基于云平台的软件开发包的智能编译方法,其特征在于:S21、所述开发状态集合包括相关开发任务数据信息和相关差异数据信息,将根据S1步骤中经过预处理后的软件开发包,监测与记录软件开发包内的相关开发任务数据信息,所述相关开发任务数据信息包括代码基数Dmjs、依赖项数量Yssp及测试覆盖率Cfq;

并在进行软件不断开发的过程中,对软件开发包内主分支与各开发分支之间的相关差异数据信息进行监测与记录,所述相关差异数据信息包括同步频率Tbp及代码变更差值Dcb。

4.根据权利要求3所述的基于云平台的软件开发包的智能编译方法,其特征在于:S22、依据S21步骤中获取的相关开发任务数据信息,将所述测试覆盖率Cfq与所述依赖项数量Yssp相关联,并经过无量纲处理后,计算获取任务的复杂程度因子Fcyz,所述复杂程度因子Fcyz通过以下公式获取:式中,Dmjs表示为代码基数,

5.根据权利要求4所述的基于云平台的软件开发包的智能编译方法,其特征在于:S23、根据软件开发包内主分支与各开发分支之间的相关差异数据信息,并结合S22步骤中获取的复杂程度因子Fcyz,获取差异系数Cyxs,所述差异系数Cyxs通过以下公式获取:式中,Dcb表示为代码变更差值,Tbp表示为同步频率,

S231、预先设置安全阈值,将安全阈值与差异系数Cyxs进行对比分析,以初步判断当前软件在开发过程中是否需将各开发分支的修改结果同步至主分支中;

若所述差异系数Cyxs超过安全阈值时,向外发出调动预警指令,此时将作进一步分析,执行S3步骤;

若所述差异系数Cyxs未超过安全阈值时,暂无需向外发出调动预警指令。

6.根据权利要求5所述的基于云平台的软件开发包的智能编译方法,其特征在于;

S31、当接收到调动预警指令时,此时将各开发分支的修改结果同步至主分支内部,保持软件开发包内代码的同步处于正常状态;

S32、将在软件进行开发过程中,监测与收集各开发分支间的相关联数据信息,并生成分支交叉影响集合,所述分支交叉影响集合包括依赖关系数量Yjss、重叠比例Cdbz及分支数量Fzs。

7.根据权利要求6所述的基于云平台的软件开发包的智能编译方法,其特征在于:S33、基于分支交叉影响集合,通过将所述依赖,交叉影响系数Jyxs,所述交叉影响系数Jyxs通过以下公式获取:式中,Fzs表示为分支数量,Yjss表示为依赖关系数量,Cdbz表示为重叠比例,

8.根据权利要求1所述的基于云平台的软件开发包的智能编译方法,其特征在于:S34、所述合并冲突指数Hczs获取方式如下:通过将所述交叉影响系数Jyxs与所述差异系数Cyxs相关联,并经过无量纲处理后,将对应数据值映射至区间式中,

9.根据权利要求1所述的基于云平台的软件开发包的智能编译方法,其特征在于:预先设置冲突阈值V,通过将所述合并冲突指数Hczs与所述冲突阈值V进行对比分析,以综合判断当前软件开发包内,分支合并时的冲突程度,并根据相应的冲突程度,发出预警指令,以做出智能编译前修复手段,具体内容如下:若所述合并冲突指数Hczs大于所述冲突阈值V时,表示为当前分支合并时的冲突程度处于异常状态,此时将向开发者发出红色冲突预警指令,并提示出现冲突的文件和代码段,自动检测冲突点,并在代码中标记出具体冲突位置,再针对依赖关系的复杂部分提供重构建议;

若所述合并冲突指数Hczs等于所述冲突阈值V时,表示为当前分支合并时的冲突程度处于临界状态,存在冲突风险,此时将向开发者发出橙色冲突预警指令,并提供冲突点的详细信息,同时建议分阶段与小规模地进行合并,逐步解决冲突,并运行自动化测试,确保合并后的代码仍然保持稳定和功能完整;

若所述合并冲突指数Hczs小于所述冲突阈值V时,表示为当前分支合并时的冲突程度未处于异常状态,此时将进行常规合并,并记录合并过程,确保所有变更都被记录在案,以备将来查阅。

10.基于云平台的软件开发包的智能编译系统,包括上述权利要求1~9任一项所述的基于云平台的软件开发包的智能编译方法,其特征在于:包括处理模块、开发监测模块、差异分析模块、分支间监测模块、关联分析模块及修复模块;

所述处理模块,预先获取软件开发包,并将软件开发包上传至云平台,云平台对软件开发包进行预处理,包括代码解析、依赖关系分析和初步的代码优化;

所述开发监测模块,根据S1步骤获取预处理后的软件开发包,并对预处理后的软件开发包内的相关开发任务数据信息进行监测,同时在进行软件不断开发的过程中,对主分支与各开发分支之间的相关差异数据信息进行记录,综合构建开发状态集合;

所述差异分析模块,根据开发状态集合生成差异系数Cyxs,若所述差异系数Cyxs超过安全阈值,发出调动预警指令;

所述分支间监测模块,接收到调动预警指令之后,将各开发分支的修改结果同步至主分支中,并在软件进行开发过程中,对各开发分支间的相关联数据信息进行收集,以生成分支交叉影响集合;

所述关联分析模块,根据分支交叉影响集合生成交叉影响系数Jyxs,基于机器学习技术,通过将交叉影响系数Jyxs与差异系数Cyxs相关联,并经过无量纲处理后,拟合获取合并冲突指数Hczs;

所述修复模块,预先设置冲突阈值V,并将冲突阈值V与所述合并冲突指数Hczs进行对比分析,以综合判断当前软件开发包内,分支合并时的冲突程度;根据相应的冲突程度发出预警指令,做出智能编译前修复手段。