面向方面软件的变化影响分析理论及其应用
结题报告
批准号:
60970009
项目类别:
面上项目
资助金额:
31.0 万元
负责人:
赵建军
依托单位:
学科分类:
F0203.软件理论、软件工程与服务
结题年份:
2012
批准年份:
2009
项目状态:
已结题
项目参与者:
陈雨亭、章程、常曦、孙强、谢峰、骆桢轩、林羽、高春风、沈海豪
国基评审专家1V1指导 中标率高出同行96.8%
结合最新热点,提供专业选题建议
深度指导申报书撰写,确保创新可行
指导项目中标800+,快速提高中标率
客服二维码
微信扫码咨询
中文摘要
在软件开发过程中,变化影响分析是一项非常重要的技术。这项技术可以用于分析得到一个阶段中代码的改变(增加新代码,删除旧代码,修改源代码)对整个程序所产生的影响,并且将这种影响有效地返回给程序员,使程序员在后续的工作中能够做出正确的决定。目前,已经存在很多方法来实现基于面向过程和面向对象程序的变化影响分析,却很少涉及到面向方面编程的领域。本研究拟以面向方面编程语言为目标,提出了一种新的变化影响分析技术。该技术的核心在于归纳定义一系列原子变化,并用这些原子变化完全捕捉两个程序版本间的语义不同。本研究同时也希望提出了一种新的变化影响分析模型,该模型基于静态的面向方面程序的系统调用图,用于找出被影响的程序代码片段、回归测试用例及影响它们(回归测试用例)的源代码修改部分。最后,我们将提供面向方面软件变化影响分析的集成工具集,它将有益于提高面向方面软件的开发效率和可靠性。
英文摘要
面向方面软件开发(Aspect-Oriented Software Development, AOSD)是一种支持分离软件关注点的新技术,这种新技术使得系统的一些横切特性能够模块化,从而提高了软件的可维护性,可复用性及可靠性。在软件开发过程中,变化影响分析是一项非常重要的技术。这项技术可以用于分析得到一个阶段中代码的改变(增加新代码,删除旧代码,修改源代码)对整个程序所产生的影响,并且将这种影响有效地返回给程序员,使程序员在后续的工作中能够做出正确的决定。目前,已经存在很多方法来实现基于面向过程和面向对象程序的变化影响分析,却很少涉及到面向方面编程的领域。本研究拟以面向方面编程语言为目标,提出了一种新的变化影响分析技术。该技术的核心在于归纳定义一系列原子变化,并用这些原子变化完全捕捉两个程序版本间的语义不同。本研究同时也希望提出了一种新的变化影响分析模型,该模型基于静态的面向方面程序的系统调用图,用于找出被影响的程序代码片段、回归测试用例及影响它们(回归测试用例)的源代码修改部分。最后,我们将提供面向方面软件变化影响分析的集成工具集,它将有益于提高面向方面软件的开发效率和可靠性。本课题取得了如下研究成果。(1)提出并进一步完善了基于原子操作得面向方面软件的变化影响分析理论模型;(2)提出了面向方面软件系统调用图的增量式构建算法并开发了相应的工具原型;(3)提出了面向方面程序的指向分析模型,并开发了相应的支持工具。根据指向分析的模型以及实验数据所撰写的论文已经完成,将于明年初投稿到程序分析领域的著名会议;(4)在利用面向方面软件的影响分析技术对自动化调试的改进方面,提出了基于断言的面向方面程序的调试技术;(5)作为主要组织者,项目负责人在 2010年9月及2011年10月在东京及上海成功组织召开了第6,7届亚太高级软件模块化会议(AOAsia/Pacific 2010/2011)(即原亚太面向方面软件开发国际会议),并在会上介绍了本课题有关面向方面程序的断言检测及上下文敏感的指向分析等研究成果,受到相关学者的好评;(6)被邀请参加面向方面软件开发领域的顶级国际会议AOSD 2011的程序委员会委员,并同本领域的研究者在包括面向方面软件开发等领域进行了广泛的学术交流;(7)在相关领域发表了多篇高水平的学术论文。
专著列表
科研奖励列表
会议论文列表
专利列表
基于机器学习的软件调试技术研究
  • 批准号:
    61272102
  • 项目类别:
    面上项目
  • 资助金额:
    83.0万元
  • 批准年份:
    2012
  • 负责人:
    赵建军
  • 依托单位:
面向方面软件的测试技术研究
  • 批准号:
    60673120
  • 项目类别:
    面上项目
  • 资助金额:
    26.0万元
  • 批准年份:
    2006
  • 负责人:
    赵建军
  • 依托单位:
国内基金
海外基金