软件库函数时序规约挖掘与推荐研究

来源 :北京大学 | 被引量 : 0次 | 上传用户:tomyang
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
由于软件库能够给软件开发带来便利,复用软件库已成为软件复用的一种重要的途径。为了帮助程序员正确地使用软件库,大多数软件库均提供在线文档,有的软件库提供指导软件库使用的书籍,有些软件库还提供专门的论坛以供讨论其用法。软件库的在线文档、相关书籍和论坛能够帮助程序员系统地学习和掌握软件库的用法。然而,随着软件库的数量和规模的不断增长,许多程序员需要针对具体的编程任务学习相关软件库的用法。为了帮助程序员在这一情况下理解并正确地使用软件库,本文提出一种软件库时序规约的挖掘与推荐方法,此方法包括两个主要步骤:1)时序规约的挖掘,其目标是针对各种软件库挖掘丰富的时序规约:2)时序规约的推荐,其目标是针对程序员面临的编程任务,向其推荐相关的时序规约。具体而言,本文的主要工作如下:   (1)针对时序规约的挖掘,提出三种新的时序规约挖掘技术和一种辅助挖掘技术。第一种技术基于客户代码分析完成时序规约的挖掘,此技术综合利用聚类和序列挖掘,能在挖掘的过程中获得时序规约适用的编程上下文。在此技术之上,提出一种辅助挖掘技术,此辅助技术通过在获取软件库函数的调用序列时进行过滤来帮助挖掘强制性时序规约。第二种技术基于软件库源代码分析完成时序规约的挖掘,此技术不依赖于客户代码,可适用于能够获得源代码的软件库。第三种技术基于软件库文档分析完成时序规约的挖掘,此技术利用自然语言处理,能够挖掘隐含在多个软件库方法的描述信息中的时序规约。针对软件库的实际情况分别采用以上时序规约挖掘技术,可以获得丰富的时序规约。本文还通过实验分别验证了以上技术在挖掘时序规约方面的有效性。   (2)针对时序规约的推荐,提出一种将时序规约推荐和代码推荐有机结合的时序规约推荐技术,其目的是利用代码弥补时序规约过于抽象的不足,并利用时序规约辅助有效代码的定位。本文还通过实验验证了此技术的有效性。   (3)基于本文提出的软件库时序规约的挖掘与推荐方法,实现了一个名为MAPO的工具,并基于此工具对本文所提方法进行了验证。其结果表明,本文所提方法能有效地帮助程序员学习软件库的用法,从而减少在编程任务中引入的缺陷数。
其他文献
分布式虚拟现实系统正受到各行各业越来越多的关注,在先进的计算机技术支持下,人们可以在虚拟的世界中进行对真实情况的仿真模拟,达到节约成本预知结果的目的。   大规模分布
无线通信技术的迅速发展给移动车载系统提供了广阔的发展空间和应用前景。车联网可以实现车辆内部网与外部网的信息交换,并与现有的互联网整合起来,实现社会与车辆系统的整合
数字集成电路的设计错误注入技术在功能验证中具有重要的意义,可用于评估验证质量和指导激励生成。然而根据调研分析,学术界并没有通用的设计错误注入方法和公开的设计错误注入
近年来,矿井安全监控系统在煤炭工业上的运用越来越广泛,但是还存在着效率低,开发时间长,可靠性差等问题。因此利用组态技术建立一套完善的矿井安全监控组态软件为解决上述问
随着嵌入式技术的发展和硬件设备的价格下降,嵌入式系统的存储能力迅速提高;另一方面,应用中产生的数据也在日益增加,这些数据亟需管理,因此嵌入式文件系统的重要性显得愈加
随着多媒体应用的普及,相关技术(如:堆存储、视频压缩,以及高速网络等)得到了进一步的推广。目前磁盘容量和性能之间的差距越来越大,而且内存的性能增长速度也远远大于磁盘性
汽轮发电机组是电力生产的重要设备,由于其设备结构的复杂性和运行环境的特殊性,汽轮发电机组的故障率一直比较高,故障危害性也很大。因此,汽轮发电机组的故障诊断一直是故障诊断技术应用的一个重要方面。汽轮机振动信号中一般含有大量的噪声,要求对振动信号进行消噪。在研究了Donoho阈值消噪的基础上,提出了阈值量化的新定义,并实现了一种基于遗传算法的信号消噪方法,通过引入了γ估计因子,对估计因子的遗传优化来实
聚类分析是数据挖掘技术的一个重要研究领域,对大规模、高维数据的聚类分析是目前研究的热点和难点问题。 论文在分析高维数据的主要特征,传统聚类算法在处理大规模高维数据
随着网络技术的飞速发展,IMS(IP Multimedia Subsystem,IP多媒体子系统)正在得到广泛的应用。IMS网络完全以IP网络作为承载网络,以SIP(Session Initial Protocol,会话初始协
电能在现代社会中是一种极为重要的能源,在电子技术越来越发达的今天,一方面现代电力电子设备对电能质量更为敏感,另一方面现代电子设备的大量应用加重了电网电能质量的污染。因