• 当期目录
  • 优先出版
  • 过刊浏览
  • 点击排行
  • 下载排行
  • 综述文章
  • 专刊文章
  • 分辑系列
    快速检索
    过刊检索
    全选反选导出
    显示模式:
    2025,36(4):1413-1434, DOI: 10.13328/j.cnki.jos.007223, CSTR: 32375.14.jos.007223
    [摘要] (150) [HTML] (0) [PDF 7.01 M] (1448)
    摘要:
    形式化方法在需求一致性验证领域已经取得了显著的成就. 然而, 随着嵌入式系统需求复杂度的不断提升, 需求一致性验证面临着状态空间过大的挑战. 为了有效约减验证的状态空间, 同时考虑到嵌入式系统需求所涉及的设备强依赖性, 提出一种复杂嵌入式系统需求一致性的组合验证方法. 它基于需求分解, 识别需求间的依赖关系, 通过这些依赖关系组装验证子系统, 从而实现对复杂嵌入式系统需求的组合验证, 并能初步定位到不一致的需求. 具体而言, 采用问题框架方法对需求进行建模和分解, 并预设领域设备知识库对设备的物理特性进行建模. 在验证子系统的组装过程中, 生成预期软件的行为模型, 并结合物理设备的模型进行动态组装. 最后, 采用航空领域机载侦查系统进行了实例研究, 验证了方法的可行性和有效性, 并通过5个案例评估证实了验证状态空间的显著减小. 此方法为复杂嵌入式系统需求的验证提供了一种切实可行的解决方案.
    2025,36(4):1435-1460, DOI: 10.13328/j.cnki.jos.007224, CSTR: 32375.14.jos.007224
    [摘要] (330) [HTML] (0) [PDF 6.86 M] (1697)
    摘要:
    Python丰富的开发生态提供了多种多样的第三方库, 极大地提高了开发者的开发效率和质量. 第三方库开发者通过对代码底层的封装, 使得上层应用开发者只需调用API就可以使用相关功能, 从而快速完成开发任务. 然而, 第三方库API不会保持恒定不变. 由于缺陷修复、代码重构、功能新增等, 第三方库代码会不断更新. 更新后部分API发生了不兼容的更改, 从而导致上层应用运行异常终止或者产生不一致的结果. 因此, Python第三方库API的兼容性问题已成为目前开源生态中亟需解决的问题之一. 目前已有相关研究工作对Python第三方库API兼容性问题展开研究, 但兼容性问题原因的分类覆盖不够完全, 无法输出兼容性问题的细粒度原因. 为此, 对Python第三方库API兼容性问题的表现形式和产生原因开展了实证研究, 并针对性提出了Python不兼容API的静态检测方法. 首先, 针对flask库和pandas库的总共6个版本对, 通过收集版本更新日志、运行回归测试相结合的方法, 共收集108个不兼容API对. 接着, 对收集到的数据开展实证研究, 总结了Python第三方库API兼容性问题的表现形式和产生原因. 最后, 提出了一种基于静态分析技术的Python不兼容API的检测方法, 输出句法层面的不兼容API问题产生原因. 在4个常用Python第三方库的共计12个版本对上进行了实验评估, 结果表明检测方法具有良好的有效性、泛化性、时间性能、空间性能以及易用性.
    2025,36(4):1461-1488, DOI: 10.13328/j.cnki.jos.007254, CSTR: 32375.14.jos.007254
    [摘要] (508) [HTML] (0) [PDF 12.67 M] (538)
    摘要:
    随着深度学习技术在计算机视觉与自然语言处理等领域取得巨大成功, 软件工程研究者开始尝试将其引入到软件工程任务求解当中. 已有研究结果显示, 深度学习技术在各种代码相关任务(例如代码检索与代码摘要)上具有传统方法与机器学习方法无法比拟的优势. 这些面向代码相关任务训练的深度学习模型统称为深度代码模型. 然而, 由于神经网络的脆弱性和不可解释性, 与自然语言处理模型与图像处理模型一样, 深度代码模型安全也面临众多挑战, 已经成为软件工程领域的焦点. 近年来, 研究者提出了众多针对深度代码模型的攻击与防御方法. 然而, 目前仍缺乏对深度代码模型安全研究的系统性综述, 不利于后续研究者对该领域进行快速的了解. 因此, 为了总结该领域研究现状、挑战及时跟进该领域的最新研究成果, 搜集32篇该领域相关论文, 并将现有的研究成果主要分为后门攻击与防御技术和对抗攻击与防御技术两类. 按照不同技术类别对所收集的论文进行系统地梳理和总结. 随后, 总结该领域中常用的实验数据集和评估指标. 最后, 分析该领域所面临的关键挑战以及未来可行的研究方向, 旨在为后续研究者进一步推动深度代码模型安全的发展提供有益指导.
    2025,36(4):1489-1529, DOI: 10.13328/j.cnki.jos.007268, CSTR: 32375.14.jos.007268
    [摘要] (315) [HTML] (0) [PDF 10.46 M] (601)
    摘要:
    随着信息化的深入, 大量应用程序的开发和功能迭代不可避免引入软件缺陷, 并潜在地对程序可靠性和安全性造成了严重的威胁. 检测与修复软件漏洞, 已经成为开发者维护软件质量必要的任务, 同时也是沉重的负担. 对此, 软件工程的研究者在过去的数十年中提出大量相关技术, 帮助开发者解决缺陷相关问题. 然而这些技术都面对着一些严峻的挑战, 在工业实践落地上鲜有进展. 大模型, 如代码大模型CodeX和对话大模型ChatGPT, 通过在海量数据集上进行训练, 能够捕捉代码中的复杂模式和结构, 处理大量上下文信息并灵活地适应各种任务, 以其优秀的性能吸引了大量研究人员的关注. 在诸多软件工程任务中, 基于大模型的技术展现出显著的优势, 有望解决不同领域过去所面对的关键挑战. 因此, 尝试对目前已经存在基于大模型相关成熟技术的3个缺陷检测领域: 深度学习库的缺陷检测、GUI自动化测试、测试用例的自动生成, 与软件缺陷修复的成熟领域: 缺陷自动化修复, 进行分析和探究, 在阐述其发展脉络的同时对不同技术流派的特性和挑战进行深入的探讨. 最后, 基于对已有研究的分析, 总结这些领域和技术所面临的关键挑战及对未来研究的启示.
    2025,36(4):1530-1556, DOI: 10.13328/j.cnki.jos.007288, CSTR: 32375.14.jos.007288
    摘要:
    缺陷自动定位方法可以极大程度减轻开发人员调试和维护软件程序的负担. 基于信息检索的缺陷定位方法是广泛研究的缺陷自动定位方法之一, 并已取得了较好的成果. 随着深度学习的普及, 将深度学习应用于基于信息检索的缺陷定位成为近年来的研究趋势之一. 系统梳理和总结了52篇近年来将深度学习引入基于信息检索缺陷定位的工作. 首先, 总结该类缺陷定位的数据集和评价指标, 接着从不同粒度和可迁移性分析了该类技术的定位效果, 随后着重梳理了相关工作中信息编码表征方法和特征提取方法. 最后总结对比分析了各领域最先进的定位方法, 并展望了使用深度学习的基于信息检索的缺陷定位方法的未来发展方向.
    2025,36(4):1557-1569, DOI: 10.13328/j.cnki.jos.007189, CSTR: 32375.14.jos.007189
    [摘要] (124) [HTML] (0) [PDF 6.39 M] (1505)
    摘要:
    作为任务型对话系统的一个核心部分, 槽填充任务通过识别话语中存在的特定槽实体来服务于后续的下游任务. 但是, 针对一个特定领域, 需要大量有标记的数据作为支撑, 收集成本较高. 在此背景下, 跨领域槽填充任务出现, 该任务通过迁移学习的方式高效地解决了数据稀缺问题. 已有的跨领域槽填充方法都忽视了槽类型之间在话语中存在的依赖, 导致现有的模型在迁移到新领域时性能欠佳. 为了弥补这个缺陷, 提出基于槽依赖建模的跨领域槽填充方法. 基于生成式预训练模型的提示学习方法, 设计一种融入槽依赖信息的提示模板, 该模板建立了不同槽类型之间的隐式依赖关系, 充分挖掘预训练模型的实体预测性能. 此外, 为了进一步提高槽类型和槽实体与话语文本之间的语义依赖, 增加了话语填充子任务, 通过反向填充的方式增强话语与槽实体的内在联系. 通过对多个领域的迁移实验表明, 所提模型在零样本和少样本的设置上取得了较大的性能提升. 此外, 对模型中的主要结构进行了详细地分析和消融实验.
    2025,36(4):1570-1589, DOI: 10.13328/j.cnki.jos.007202, CSTR: 32375.14.jos.007202
    [摘要] (286) [HTML] (0) [PDF 6.30 M] (2167)
    摘要:
    近年来, 深度学习研究成果在全球范围内得到广泛应用. 为了提高大规模深度学习模型的训练效率, 业界通常采用建设GPU集群并配置高效的任务调度器的策略. 然而, 深度学习训练任务具有性能异构性和放置拓扑敏感性等复杂性能特性. 对性能无感知的调度容易导致资源利用率低下、训练效率差等问题. 为了应对这一挑战, 近期涌现出大量基于性能建模的深度学习训练任务调度器. 这些调度器通过构建精确的性能模型, 深入了解任务的复杂性能特性, 并据此设计更优化的调度算法, 从而形成更高效的调度方案. 首先基于建模设计思路, 对目前调度器使用的性能建模方法进行分类综述. 随后, 根据调度器利用性能建模的调度优化途径, 对现有的任务调度工作进行系统性分析. 最后, 对性能建模与调度在未来的研究方向进行展望.
您是第位访问者
版权所有:中国科学院软件研究所 京ICP备05046678号-3
地址:北京市海淀区中关村南四街4号,邮政编码:100190
电话:010-62562563 传真:010-62562533 Email:jos@iscas.ac.cn
技术支持:北京勤云科技发展有限公司

京公网安备 11040202500063号