郝丹
- 作品数:7 被引量:3H指数:1
- 供职机构:北京大学信息科学技术学院更多>>
- 发文基金:国家自然科学基金更多>>
- 相关领域:自动化与计算机技术更多>>
- 软件学科发展回顾特刊前言被引量:1
- 2019年
- 随着信息技术的飞速发展,软件系统无处不在,其应用形态呈现出泛在化、社会化、情境化、智能化等特征,软件正逐步成为人类社会不可或缺的基础设施.软件学科的发展是显而易见的,体现在系统规模越来越大,所解决的问题越来越复杂,交互对象越来越多样,人们寄予越来越高的可靠性要求.现在,人机物融合应用模式的不断深入,“泛在系统”和“软件定义”也成为呼之欲出的着力点.这孕育了软件学科的新的增长点,也给软件方法和技术带来了新的挑战.“以史为镜,可以知兴替”,为了更好地把握时机,迎接挑战,有必要重新审视软件学科中典型方法和技术的发展历程,从而启迪未来的发展方向.2019年是《软件学报》创刊30周年,以此特刊形式记录之.
- 梅宏梅宏金芝
- 关键词:软件系统信息技术基础设施人类社会社会化
- 模型驱动的面向对象程序信息抽取方法
- 2005年
- 为了满足当前程序理解工具对效率、容错性和灵活性的要求,提出一种模型驱动的面向对象程序抽取方法.并应用这种方法实现了java程序的信息抽取器.这种方法通过对面向对象程序表示模型的分层,采用宽度优先信息抽取策略完成系统代码到表示模型的转换过程.同时,在层次性抽取的过程中,通过适当的使用词法分析手段和目标语言超集文法的机制,在效率和容错性方面,都对以往方法做出了改进.此外,该方法能够启发式的识别给定的代码片断并为之构建抽象语法树,具有一定的自动性.
- 李合罗景张路赵伟郝丹
- 关键词:逆向工程
- 一种静态的编译器重复缺陷报告识别方法被引量:2
- 2019年
- 编译器缺陷报告在编译器质量保证中具有重要作用,而重复缺陷报告往往带来不必要的人力、时间等资源浪费.为了识别编译器重复缺陷报告,本文提出了一种静态的重复缺陷报告识别方法IdenDup.该方法可以有效解决两个场景下的重复缺陷报告问题,即模糊测试(fuzz testing)所产生的缺陷报告和缺陷管理系统中不同来源的缺陷报告.具体来说,IdenDup利用缺陷报告中静态文本和程序特征来识别重复缺陷报告,其中程序特征包括程序词法、语法,以及本文首次提出的数据流特征.特别地,程序数据流特征指的是程序中变量使用路径(变量使用方式及使用方式的顺序)特征.之后,我们使用C语言的两个主流编译器GCC和LLVM作为实验对象,对IdenDup的效果进行了实验探究.实验结果表明,IdenDup可以有效地识别上述两个场景下的重复缺陷报告,并且超过已有方法.
- 陈俊洁胡文翔郝丹熊英飞张洪宇张路
- 关键词:数据流分析
- 模型驱动的面向对象程序信息抽取方法
- 为了满足当前程序理解工具对效率、容错性和灵活性的要求,本文提出了一种模型驱动的面向对象程序抽取方法,并应用这种方法实现了java程序的信息抽取器.这种方法通过对面向对象程序表示模型的分层,采用宽度优先信息抽取策略完成系统...
- 李合罗景张路赵伟郝丹
- 关键词:面向对象程序信息抽取方法
- 文献传递
- 一个基于程序理解的代码复用系统
- 为了使软件复用能够在代码层次上系统化的实施,本文在自动程序理解技术研究的基础上,定义了几种基本的理解形式以及针对这些理解形式的分析方法.基于给定的理解形式与分析方法,在软件复用工程化思想的指导下,设计并实现了一个基于程序...
- 罗景姜人宽赵伟郝丹张路孙家骕
- 关键词:软件复用代码复用
- 文献传递
- 智能软件工程专栏前言
- 2020年
- 软件作为信息社会的基础设施,深刻地影响着现代人类文明的进程。自1968年软件工程的概念被提出以来,如何高效地开发高质量的软件一直是计算机科学的研究热点。近年来,随着人工智能技术的发展,人工智能与软件工程开始深度融合,由此形成的全新学科交叉方向——智能软件工程成为了国内外学者关注的焦点和研究重点。智能软件工程主要涵盖两方面:人工智能赋能的软件工程和面向人工智能的软件工程。一方面,以深度学习为代表的人工智能迅猛发展,为软件工程研究提供了全新的方法、技术和工具,显著提高了解决传统软件工程任务的能力。
- 江贺郝丹许畅彭鑫
- 关键词:软件工程人工智能计算机科学基础设施
- 自适应推导下的统一化调试加速技术
- 2022年
- 在传统调试过程中,缺陷定位通常作为程序修复的前置步骤.最近,一种新型调试框架(统一化调试)被提出.不同于传统调试中缺陷定位和程序修复的单向连接方式,统一化调试首次建立了定位与修复之间的双向连接机制,从而达到同时提升两个领域的效果.作为首个统一化调试技术,ProFL利用程序修复过程中伴随产生的大量补丁执行信息逆向地提升已有缺陷定位技术的效果.统一化调试技术不仅修复了可被修复的缺陷,而且也为不能被自动修复技术修复的缺陷提供了有效的调试线索.虽然统一化调试是一个很有前景的研究方向,但其在补丁验证过程中涉及到了大量的测试用例执行(比如百万量级的测试执行),因此时间开销问题严重.提出一种针对于统一化调试框架的加速技术(AUDE),该技术通过减少对缺陷定位效果无提升的测试执行,以提升统一化调试的效率.具体来说,AUDE首先通过马尔可夫链蒙特卡洛采样方法构建补丁执行的初始序列,随后在补丁执行过程中将已执行的补丁信息作为反馈信息,自适应性地估计每一个未执行补丁可能提供有效反馈信息的概率.在广泛使用的数据集Defects4J上对该技术进行了验证,发现AUDE在显著加速ProFL的同时,并没有降低其在缺陷定位和程序修复的效果.例如:在减少了ProFL中70.29%的测试执行的同时,AUDE仍在Top-1/Top-3/Top-5指标上与ProFL保持了相同的定位效果.
- 娄一翎张令明郝丹郝丹张路
- 关键词:软件质量保障软件测试缺陷修复