基于重构偏序规划的软件移植方法研究

基于重构偏序规划的软件移植方法研究

论文摘要

软件移植是扩大软件使用范围,延长软件使用周期的重要手段之一。但是现有的软件移植大多依靠开发人员的经验完成,难以保证移植后系统与原系统的一致性。本文将软件重构方法引入到软件移植之中,通过重构行为保持的特点来保证软件移植的质量。同时为了适应复杂系统的移植,将智能规划理论应用到软件重构中来。通过智能规划方法来指导软件重构操作的选择,一方面使得软件移植工作可以部分自动化,另一方面也可以避免重构操作选择的盲目性,从而提高软件移植的效率。本文首先详细介绍了偏序规划方法,阐述了在Eclipse平台下实现Scheme语言解释器插件的有关原理和技术,从而方便在软件开发平台下实现偏序规划。为了保证软件结构描述的可视化,论文提出了基于带属性类型图的软件结构描述方法,并通过GXL语言将软件结构的图形描述转换为基于谓词逻辑的软件描述,以便于实施规划。论文进一步将偏序规划方法应用到软件重构,提出了一个基于偏序规划的软件重构规划思想,有利于解决软件重构操作的选择问题。论文最后以一个具体的软件移植项目为例,详细分析了重构偏序规划的方法在软件移植中的应用,证明了软件移植中基于规划的软件重构方法是有效的。

论文目录

  • 摘要
  • ABSTRACT
  • 目录
  • 第一章 绪论
  • 1.1 研究背景及意义
  • 1.2 研究水平与现状
  • 1.2.1 软件移植
  • 1.2.2 软件重构
  • 1.2.3 智能规划
  • 1.3 论文主要研究工作
  • 1.4 论文组织结构
  • 第二章 ECLIPSE平台下的偏序规划设计
  • 2.1 Eclipse平台概述
  • 2.2 偏序规划方法
  • 2.2.1 偏序关系定义
  • 2.2.2 规划问题描述
  • 2.2.3 因果连接与规划冲突
  • 2.2.4 偏序规划描述
  • 2.3 偏序规划工具实现
  • 2.3.1 Scheme语言的特点
  • 2.3.2 Eclipse平台下Scheme语言解释器的设计与实现
  • 2.3.3 基于Scheme语言的偏序规划描述
  • 2.4 本章小节
  • 第三章 基于重构偏序规划方法的软件移植研究
  • 3.1 基于重构方法的软件移植研究
  • 3.1.1 软件移植与重构
  • 3.1.2 基于重构的软件移植方法
  • 3.1.3 方法适用范围分析
  • 3.2 基于偏序规划的重构方法分析
  • 3.2.1 重构与智能规划
  • 3.2.2 基于偏序规划的重构方法
  • 3.3 软件结构描述
  • 3.3.1 软件结构的ATG描述
  • 3.3.2 软件结构的谓词逻辑描述
  • 3.3.3 软件结构ATG到谓词逻辑的转换
  • 3.4 规划操作描述
  • 3.5 规划描述
  • 3.6 基于偏序规划的重构算法
  • 3.7 算法总结与改进
  • 3.8 本章小结
  • 第四章 重构偏序规划方法在软件移植中的应用
  • 4.1 条件接收系统概述
  • 4.1.1 项目背景
  • 4.1.2 系统功能
  • 4.1.3 系统结构
  • 4.2 μC/OS-II操作系统
  • 4.2.1 消息邮箱模式
  • 4.2.2 消息队列模式
  • 4.3 基于重构偏序规划的条件接受系统移植
  • 4.3.1 条件接收系统移植任务分析
  • 4.3.2 面向移植的重构描述
  • 4.3.3 基于重构规划的移植实现
  • 4.4 本章小结
  • 第五章 总结与展望
  • 5.1 总结
  • 5.2 展望
  • 参考文献
  • 致谢
  • 攻读学位期间主要的研究成果
  • 相关论文文献

    • [1].基于集对分析的软件重构方案优选模型[J]. 计算机应用研究 2010(11)
    • [2].一种改进的基于层次聚类的软件重构技术研究[J]. 计算机工程与应用 2015(20)
    • [3].软件重构的研究[J]. 科协论坛(下半月) 2012(04)
    • [4].重构改善软件可维护性的量化研究[J]. 微计算机应用 2009(10)
    • [5].面向Code Smells的“容器—破坏者—发现者”检测策略[J]. 小型微型计算机系统 2016(03)
    • [6].重构C++程序物理设计(英文)[J]. 软件学报 2009(03)
    • [7].基于版本的多重软件重构自动检测技术研究[J]. 江西师范大学学报(自然科学版) 2018(05)
    • [8].基于实时重构的代码质量教育[J]. 计算机教育 2016(05)
    • [9].代码重构工具在面向对象教学的应用探索[J]. 电脑知识与技术 2013(23)
    • [10].大规模C++软件系统测试驱动开发的设计与实践[J]. 计算机技术与发展 2012(09)
    • [11].一种软件重构设计方法及其应用[J]. 现代制造工程 2010(05)
    • [12].基于形式化方法的测试驱动开发研究[J]. 计算机工程与设计 2008(15)
    • [13].基于方法水平移动的软件重构技术研究[J]. 湖南邮电职业技术学院学报 2018(02)
    • [14].面向Fork/Join框架的软件重构及性能分析[J]. 计算机应用 2015(11)
    • [15].函数抽取重构的自动检测方法[J]. 计算机科学 2015(12)
    • [16].软件重构及设计模式在摄像头阅卷系统中的应用研究[J]. 计算机与现代化 2012(02)
    • [17].即时重构系统下的switch语句检测算法[J]. 山西大同大学学报(自然科学版) 2015(05)
    • [18].一种基于类型传播分析的泛型实例重构方法[J]. 软件学报 2009(10)
    • [19].一种自动的软件体系结构规约重写方法及工具支持[J]. 江西师范大学学报(自然科学版) 2008(02)

    标签:;  ;  ;  ;  

    基于重构偏序规划的软件移植方法研究
    下载Doc文档

    猜你喜欢