程序理解中静态分析与抽取技术的研究及实现

来源 :浙江工业大学 | 被引量 : 0次 | 上传用户:annhongmay
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
由于程序分析和理解的困难性,软件系统特别是大型软件系统,其生存期往往长达数十年,多年的运行历史,使得遗留软件系统中包含了众多知识,包括系统需求分析、设计决策、业务规则、维护及需求变更等。为了能够充分利用这些遗留软件资源,软件系统的持续性演化变得十分重要。然而,对这些系统常年的维护或演化异常困难,且成本开销巨大。软件维护已成为软件工程界面临的重要课题之一,能否准确、迅速、全面地理解程序是决定维护工作成败的关键。因此,程序理解研究对软件开发、管理和维护有着关键意义,特别是针对遗留软件系统维护和演化具有重要的意义。程序理解的目的在于获得足够的软件系统信息,适用于人理解的形式展现出来,以辅助和促进人对软件的理解。这是一项非常耗费时间的过程,要自动实现对程序的分析、理解和表达,首先要解决程序静态分析和信息抽取关键技术。因为源程序分析的高效性、抽取信息的完整性和准确性将直接影响到后续的程序理解系统的整个过程和性能,对软件的维护工作或演化过程具有非常重要的作用和意义。论文通过深入的调研,在参阅国内外大量文献资料的基础上,对程序理解、静态分析技术和信息抽取机制进行了较为系统的研究,所做主要工作包括:1、对程序理解相关理论的研究:研究了有关程序理解的相关背景知识和技术现状;对程序理解的意义、关键技术问题、存在困难以及设计模型进行了较系统的研究。2、对静态分析技术进行了研究,特别是对其中的预处理这一技术进行了专题研究,针对如何处理源程序中的预处理分析、几个编译阶段包含词法分析、具体预处理过程的实现等,提出了具体的实现模型和方案。3、通过对目前典型抽取工具及静态分析系统中词法、语法分析工具的研究和比较,设计了静态分析信息抽取系统的架构,设计和实现了语法和词法分析器,重点实现了静态信息抽取模块。4、通过分析传统静态分析抽取机制,研究了静态分析抽取机制的优化问题。此外,针对有些编译系统的头文件关系复杂、规模庞大的问题,论文对于如何提高这类文件的静态分析抽取效率,如何快速、准确地抽取信息进行了较深入的探讨。
其他文献
<正> 澳门是一个有悠久历史的“花园旅游”城市,中西结合,人口方面有许多独特的地方。一、近年人口增长迅速澳门原是荒凉之地,14世纪以前定居人口很少,是我国沿海各地渔舟停
作文是学生语文能力的综合体现,也是全面提高学生素质的一项重要工作。目前我国小学作文教学水平及小学生作文水平都普遍偏低,本文针对小学生作文教学中存在的问题,提出了几
随着我国经济发展的突飞猛进,农村经济得到了快速的发展,在农业经济管理工作方面也有了很大成就,明显改善了农村居民的生活条件。作为农村工作重要内容之一的农村经济管理,农
随着行政现代化和政治民主化的深入发展,“政府效能”开始日益活跃在理论和实践中,作为一个综合的评价指标,它指政府及其工作人员为了实现管理目标,从事公务活动时,发挥功能的程度
汶川“5.12”大地震不仅在地震影响区内产生大量的崩塌、滑坡地质灾害,而且在整个核心区内形成了多处堰塞湖,库区内边坡变形破坏有不同程度的增加,尤其在哈姆山段变形破坏强
随着市场竞争的不断加剧,国内企业越来越强烈地认识到,企业的竞争归根结底是人才的竞争。企业能否生存和发展,能否建立自己的核心竞争优势,很大程度上取决于企业能否吸引、发展和
本文从理论上阐明:在保证层叠式视频汇流环电气性能的前提下,欲减小结构尺寸、体积和重量,必须选择特性阻抗小的同轴电缆,采用介电系数尽可能小的绝缘材料作绝缘盘,同时必须
削片机是人造板制造业中的重要设备,其存在生产能耗大、噪声严重、功率匹配性差、设备不稳定等一系列问题。国内外学者已对其进行了大量的研究工作。盘式削片机相对于鼓式削
针对个性化推荐系统中用户偏好信息量小的问题,提出了混合用户偏好获取,以相对准确但稀少的显式评分为基础,综合考虑用户页面停留时间、页面滚动时间和鼠标点击次数三项浏览
就业歧视是一个世界性的问题,世界各国都存在着不同程度的就业歧视现象。就业歧视降低了劳动力市场对劳动力资源最优配置的效率,剥夺和损害了部分劳动者公平、公正的就业机会和