一种面向软件代码单元和代码度量的代码变更序列方法

    公开(公告)号:CN111290777B

    公开(公告)日:2021-09-17

    申请号:CN202010077082.5

    申请日:2020-01-23

    Applicant: 复旦大学

    Abstract: 本发明属于软件工程技术领域,具体为一种面向软件代码单元和代码度量的演化历史切片方法。本发明利用代码版本库中的分支和代码提交等代码演化历史信息,通过建立贯穿演化历史的代码持续追溯机制,实现针对指定代码单元或其度量值的演化历史切片分析。所得到的演化历史切片由修改了指定的代码单元或导致指定的代码度量值发生变化的代码变更序列组成,每个代码变更包括从对应的代码提交中抽取的相关信息,包括代码提交唯一编号、提交者、代码修改内容、提交说明等。这种演化历史切片可以帮助理解并追踪代码的演化过程以及相关代码问题的发展变化过程,支持开发人员绩效评价、软件项目质量监控和预警等应用。

    面向移动社交圈的个人化服务方法

    公开(公告)号:CN104158805B

    公开(公告)日:2017-11-17

    申请号:CN201410388770.8

    申请日:2014-08-10

    Applicant: 复旦大学

    Abstract: 本发明属于软件工程技术领域,具体为一种面向移动社交圈的个人化服务应用模式。本发明提出了个人化服务的概念,即将人的各种知识、经验和能力等转化为一种服务;并提出了面向移动社交圈的个人化服务应用模式,即在移动社交圈平台的基础上,用户可以向特定的移动社交圈发布特定的个人化服务,可以发现和请求所属移动社交圈内的个人化服务,甚至可以把个人化服务、应用服务、以及Web服务进行混合服务组装来满足个人的需求。采用本发明可以有效地利用现实世界中多种多样的人力资源,从而提供了更加丰富、更加灵活、以及更加具有针对性的知识密集型服务。

    一种面向服务的软件系统运行的自适应系统及优化控制方法

    公开(公告)号:CN103337046A

    公开(公告)日:2013-10-02

    申请号:CN201310212848.6

    申请日:2013-06-02

    Applicant: 复旦大学

    Abstract: 本发明属于软件工程技术领域,具体为面向服务的软件系统运行的自适应系统及优化控制方法。本发明自适应系统采用反馈控制环路,其框架结构包括监控、分析、规划和执行四个部分。本发明使用PID控制器对运行时相关质量属性的质量偏好值(优先级)进行动态调节,并以此为输入进行偏好驱动的服务选择和流程选择;服务选择和流程选择所得到的服务配置和流程配置方案将用于实现运行时流程的动态重配置,从而实现系统的优化调节。本发明可以实现基于实时反馈的面向服务的软件系统运行时总体质量优化,与传统的针对某一特定质量属性的优化方法相比具有较大的优势。

    一种基于控制论和目标推理的软件质量运行时优化方法

    公开(公告)号:CN101930371A

    公开(公告)日:2010-12-29

    申请号:CN201010283382.5

    申请日:2010-09-16

    Applicant: 复旦大学

    Abstract: 本发明属于软件工程技术领域,具体为一种基于控制论和目标推理的软件质量运行时优化方法。本发明引入基于价值的软件工程中的价值观点,以客户的业务观点出发定义特定于目标系统的价值度量模型作为系统总体质量反馈,并以此为基础实现基于需求目标推理的软件质量运行时优化。本发明使用PID控制器对运行时相关质量属性的优先级(质量偏好)进行动态调节,并以此为输入进行偏好驱动的需求目标推理。目标推理所得到的需求目标配置方案用于指导运行时体系结构的动态重配置,从而实现系统的优化调节。采用本发明可以实现基于实时反馈的软件系统运行时总体质量优化。与传统的针对某一特定质量属性的优化方法相比具有较大的优势。

    基于函数选择和语义等价匹配的多函数同源漏洞检测方法

    公开(公告)号:CN119397543A

    公开(公告)日:2025-02-07

    申请号:CN202411347582.0

    申请日:2024-09-26

    Applicant: 复旦大学

    Abstract: 本发明属于软件工程技术领域,具体为基于函数选择和语义等价匹配的多函数同源漏洞检测方法。本发明方法包括签名生成和漏洞检测两个阶段;签名生成阶段包括:输入漏洞修复补丁,抽取修改方法并其中的关键修复方法;对抽取的关键修复方法进行语义等价替换后分别对语义等价替换前后的函数生成签名;漏洞检测阶段包括:输入目标检测软件,利用克隆检测软件进行预处理减少搜索空间;抽取目标检测软件中的函数并对其进行语义等价替换,分别对语义等价前后的函数生成签名,并进行两阶段签名匹配,最终输出目标项目中是否存在可疑的多方法同源漏洞。本发明方法可以帮助识别开源软件中的多方法同源漏洞,降低同源漏洞所造成的危害,提升开源软件的安全性。

    基于LLM增强的项目依赖库漏洞分步利用方法

    公开(公告)号:CN119357970A

    公开(公告)日:2025-01-24

    申请号:CN202411260482.4

    申请日:2024-09-10

    Applicant: 复旦大学

    Abstract: 本发明属于软件工程技术领域,具体为基于LLM增强的项目依赖库漏洞分步利用方法。本发明方法包括,对项目进行轻量级的依赖树和调用图可达性分析,并识别从项目到漏洞方法的所有可达调用链;将对整个调用链的模糊测试分解为对调用链中每一步方法调用的定向模糊测试;结合静态分析和提示工程技术,利用LLM对当前测试函数的语义理解以及前一步测试生成的利用信息来辅助种子的生成。利用生成的种子进行定向模糊测试,并通过执行反馈机制对种子的执行路径进行分析,指导种子的选择和变异,最终生成能够成功利用项目依赖库漏洞的有效输入。本发明可帮助开发者快速定位并及时修复漏洞,从而降低依赖漏洞对项目带来的风险和潜在损失。

    一种基于知识图谱的深度学习模型推荐方法

    公开(公告)号:CN116108191A

    公开(公告)日:2023-05-12

    申请号:CN202211416498.0

    申请日:2022-11-13

    Applicant: 复旦大学

    Abstract: 本发明属于软件工程技术领域,具体为一种基于知识图谱的深度学习模型推荐方法。本发明方法包括:模型知识图谱构建方法,以开源代码仓库和组件相关的文本语料为输入,输出一个融合AI仓库、模型、组件、实现等知识的模型知识图谱;模型推荐方法,以已有的且需要修改的模型实现代码为输入,输出多个最相似的模型参考实现,以及对应的解释信息;解释信息中包含模型使用的组件、组件之间的关系、组件相关的描述性知识等。本发明基于融合多源知识的模型知识图谱,根据用户输入的模型的代码,在高层语义上进行匹配模型架构,从而得到相似的模型。本发明充分利用人工智能领域的背景知识,促进深度学习模型实现的重用,提高AI应用开发人员的开发效率。

    面向软件系统的软件项目及第三方库知识图谱构造方法

    公开(公告)号:CN111241307A

    公开(公告)日:2020-06-05

    申请号:CN202010077130.0

    申请日:2020-01-23

    Applicant: 复旦大学

    Abstract: 本发明属于软件工程技术领域,具体为面向软件生态系统的软件项目及第三方库知识图谱构造方法。本发明包括:通过爬取和解析软件项目的基本信息和版本发布通知获取软件项目和软件项目发布版本的基本知识;通过代码克隆检测分析获取不同软件项目的发布版本之间的代码克隆知识;通过爬取和解析软件项目的缺陷追踪系统获取软件项目发布版本中的缺陷与缺陷修复知识,并分析缺陷与第三方库API以及代码克隆的链接知识。本发明所构造的软件项目知识图谱包括软件项目、软件项目发布版本、缺陷与代码克隆之间的关系等;本发明所构造的面向软件生态系统的软件项目及第三方库知识图谱能够支持软件项目成熟度评估、第三方库更新推荐、冲突检测等智能化应用。

    一种API误用的变更模式挖掘方法

    公开(公告)号:CN109857648A

    公开(公告)日:2019-06-07

    申请号:CN201910030995.9

    申请日:2019-01-14

    Applicant: 复旦大学

    Abstract: 本发明属于软件工程技术领域,具体为一种API误用的变更模式挖掘方法。本发明从代码托管服务上海量开源项目的变更提交历史中选取出修复API误用的变更提交,通过分析变更提交的细粒度代码差异来抽取API误用的变更方式,对API误用的变更方式的项目间频次(在开源项目中出现的项目数)和项目内频次(在所有开源项目中出现的次数)进行排序得到API误用的变更模式。本发明所挖掘出的API误用的变更模式在海量开源项目中频繁出现,可以用来检测开源项目中的API误用,从而提高开源项目的质量。

Patent Agency Ranking