基于互联网的软件构件信息获取与应用技术研究

来源 :北京大学 | 被引量 : 0次 | 上传用户:wait689
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
软件复用的成功需要三个方面的因素——存在可用的软件构件、复用者能够找到软件构件、复用者能够知道如何使用软件构件。随着大量可复用构件资源的出现,如何帮助复用者认识和理解构件、进而成功地使用构件成为软件复用的关键因素。复用者需要丰富的构件信息(例如构件的描述信息、构件的使用示例等)来提高对构件的认识和理解。随着互联网技术的发展以及信息共享意识的普及,大量的构件信息被发布到互联网上。但互联网中的海量数据也带来了数据分散、噪音干扰、信息重复等问题,而且缺乏组织的分离信息不利于复用者的查看与利用。已有基于互联网的构件收集等相关工作中对构件信息的获取与应用关注不够,在一定程度上影响了所收集构件的传播与复用。  本文围绕构件信息的获取与应用展开研究,研究从互联网中收集整理构件信息的方法,并应用其改善构件复用。论文首先对当前构件信息的分布现状、获取和应用构件信息的相关工作进行了系统分析,提出了一个构件信息获取与应用的方法框架,并选取了两类典型的构件信息——构件描述信息和构件使用示例,研究其获取与应用的技术方法。针对传统构件库以人工提交为主的构件信息获取方式,进一步研究了支持构件信息获取与应用的构件库系统结构,并设计实现了相应系统。  本文工作的主要特色和贡献包括:  (1)对构件信息进行了深入分析,梳理和总结了构件信息获取与应用过程中需要关注的关键问题和步骤,提出了一个构件信息获取与应用的方法框架,为各类型构件信息的获取与应用提供通用的描述机制和共性的框架指导。该框架包括一个通用的构件信息模型,为构件信息相关要素的组织与表达提供支持。方法框架在宏观层面上分为信息获取和信息应用两个主要阶段,定义了构件特征选取、原始数据收集、构件信息提取、构件信息分析应用等几项共性技术与过程。方法框架为各类构件信息的获取与应用提供了统一的流程参考。基于所提出的方法框架,本文具体分析研究了两类典型构件信息(构件描述信息和构件使用示例)的获取与应用的特定技术方法。  (2)针对构件描述信息,提出了一种面向非特定类型来源网页的构件描述信息自动获取方法。借助通用搜索引擎,从互联网中广泛收集构件的各类相关网页。基于从网页中抽取出的信息片段,利用文本相似度和相对距离综合判定信息片段与构件的相关度,选取相关度较高的信息片段作为构件的描述信息。相比于已有工作仅从特定站点的网页中收集信息的方法,该方法从整个互联网范围内获取数据,并能不依赖于对网页结构的了解,自动、准确地从网页中抽取信息。实验表明,本方法能够为互联网中超过半数的公共Web服务构件有效扩充描述信息。  基于收集到的丰富的构件描述信息,提出了一种基于聚类和信息提取技术的构件分类标签生成方法,有效提升构件管理中的构件分类效果。该方法一方面利用聚类技术发现相似构件,在相似构件之间共享标签;另一方面,利用信息提取技术,从构件描述信息中自动分析选取与构件内容相关的关键词汇作为构件分类标签。该方法充分利用构件已有的人工标签数据,并结合信息提取技术,为构件生成数量足够且质量可靠的分类标签。实验表明,该方法能够为互联网中的大量Web服务构件有效生成分类标签,并且标签可用于改进构件检索的效果。  (3)针对构件使用示例,提出了一种外观特征判定和迭代增量解析相结合的网页文档中构件使用示例识别与提取方法。以外观特征判定与迭代解析相结合的方式从网页内容中准确、高效地抽取程序代码片段,并基于规则选择性保留其上下文说明文本,将程序代码和上下文说明组合成直观、易理解的使用示例。与已有的从代码库中获取使用示例的工作相比,该方法从普通的在线网页文档中获取数据,并结合代码解析与信息提取的技术,在保证信息抽取准确性的同时,有效提高了信息抽取的效率和数据规模。基于JDK、JDOM等16个著名Java开源项目中的6491个API进行的实验表明,该方法能为约80%的API获得使用示例,使用示例的数量接近80000个。  为了帮助复用者准确地从大量使用示例中检索到满足需求的示例,提出了一种面向话题的使用示例检索方法。一个使用示例的话题是指其演示或实现的功能。该方法首先基于结构模板自动识别出使用示例文本说明中表达话题的语句,进而发现使用示例的话题。在示例检索时对其话题分配较高权重,从而保证检索结果中的使用示例的话题与复用者需求的相关性。实验表明,该方法能够有效改进使用示例检索的效果。  (4)围绕上述研究,针对传统构件库中以人工提交为主的构件信息获取方式,本文设计并实现了基于互联网的构件信息获取与应用支持系统,为构件库中构件的信息获取与应用提供有效支持。本文工作已经与北京大学软件资源库系统进行整合,成为一个关键组成部分。
其他文献
学位
正确理解用户查询的搜索意图可以提供更加准确、个性化的搜索服务,提高搜索引擎搜索结果质量,改善用户搜索体验。查询理解是目前信息检索领域重点研究问题之一。为了正确的理解
随着集成电路制造工艺的不断进步,处理器芯片的运算能力取得巨大提升,芯片的I/O互连带宽已经成为高性能计算系统的性能瓶颈之一。为满足日益增长的带宽需求,互连协议都在不断加
随着网络技术的日益普及,企事业单位内部的电子办公系统日趋增多,由于各个系统之间的独立性,用户需要多组用户名密码去访问多个办公系统,给用户带来了不便。为了减少用户的这种麻
Android操作系统是一款基于Linux内核的开源操作系统,目前在以手持移动设备为代表的各类硬件平台上均具有广阔的应用前景。龙芯3A是我国首款国产商用4核通用处理器,可应用于个
学位
随着信息化建设的不断深入,我国的电子政务建设取得了长足发展。在其发展过程中,随着用户数和访问量的快速增长,积累了海量的政务数据,进入了大数据时代。目前电子政务数据库的建
学位
学位
随着互联网的快速普及与Web网站的蓬勃发展,如何在海量数据中快速、准确地找到有效的信息,成为了一个重要课题。搜索引擎是信息发现的有效手段,努力提升搜索质量,让用户更准确的