当前位置:问答库>论文摘要

题目:C++面向对象软件中可复用构件识别与筛选技术研究与实现

关键词:构件获取;软件复用;过程模型;构件识别;构件筛选;代码审查

  摘要

基于已有软件的构件获取方法,在程序理解的基础上,通过构件识别、筛选、验证、包装和入库等步骤提取遗产系统中具有可复用价值的软件成分,这种方法具有成本低、效率高的优势,已经逐渐成为支持软件复用的一项关键技术。目前,构件获取主要针对面向对象软件,出现了构件识别算法、度量技术以及构件验证等一系列获取方法和技术。构件获取有望成为一种高效的软件生产手段。但是,构件获取过程需要获取者对软件的每部分都进行细致入微的考查,手工完成这项工作是一件费时费力的事情,特别是很多遗产系统在设计和开发时并没有为复用做专门的考虑,甚至没有完整的文档和接口说明。如何通过自动化手段辅助获取者识别和筛选具有可复用价值的软件成分成为构件获取过程中的一个关键问题。本课题在构件获取过程模型的基础上,调研了国内外关于构件识别和筛选的方法以及辅助工具,重点研究C++面向对象软件中可复用构件识别与筛选方法,讨论了一种基于文件关系的构件识别算法FRBCI,并运用代码审查技术辅助构件筛选,尝试为获取者提供一种新的有效的筛选手段,从而为构件获取过程给予自动化支持,提高构件获取的效率。本文首先介绍了构件识别、筛选方法以及辅助工具的国内外研究现状,分析了目前研究和工具中存在的问题;接着介绍了构件获取过程模型,并对程序理解、代码审查等相关技术做了介绍;然后,本文分析了C++软件的特点,讨论了C++可复用构件的结构,阐述了FRBCI识别算法,并把代码审查技术引入构件筛选,通过建立规则检查表、缺陷检测、生成问题列表等方法和技术辅助用户筛选构件;最后,本文实现了一个C++构件获取辅助工具,并与Eclipse开发环境集成,方便了构件验证和修改。此外,本文以C++静态分析器(JLParser)为例进行了实例分析以验证所提方法的有效性,并与一个国外工具PATRicia进行了比较。