数据挖掘技术在软件知识库中应用研究.pdfVIP

数据挖掘技术在软件知识库中应用研究.pdf

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
--优秀硕士毕业论文,完美PDF格式,可在线免费浏览全文和下载,支持复制编辑,可为大学生本专业本院系本科专科大专和研究生学士硕士相关类学生提供毕业论文范文范例指导,也可为要代写发表职称论文的提供参考!!

数据挖掘技术在软件知识库中的应用研究 年 级:2007 级 导师:张师超 研究生:刘玉峰 专 业:计算机软件与理论 方 向:数据挖掘 摘 要 随着信息化的快速发展,计算机数据库系统已经进入社会的各个领域,由此带来了行 业数据的爆炸性增长。面对海量的数据,使得存储能力有限的计算机不得不抛弃一些过时 的数据。然而,这些数据里面包含了大量的有价值信息却无法获取,面对这一难题,数据 挖掘技术应运而生,数据挖掘技术一开始就是面向应用的,它是一门交叉学科,融合了数 据库、人工智能、机器学习、统计学等多个领域的学科,基本功能有关联分析、分类分析、 聚类分析、例外分析等,与之相关各种数据挖掘工具的应用也逐渐成熟。 软件需求的日益增长和开发技术的快速更新,软件系统的规模和复杂性急剧增长,其 开发活动和管理难以控制。在软件工程领域中,传统的方法和简单的数理统计方法难以解 决数据及信息爆炸式增长所带来的困扰。因此从程序源代码、设计文档以及收集的相关软 件数据集中发现有价值的信息并指导软件工程的开发和维护显得尤为重要。所以,一些专 家学者想到利用这些成熟的数据挖掘技术研究软件工程项目中产生的大量数据(通常称为 软件知识库),进一步发掘隐藏在软件数据背后的潜在的、有价值的信息。数据挖掘技术 已经成为软件工程领域软件数据研究的一个热点问题,在软件生命周期中产生许多数据 (如文档、程序源代码文件、Bug 报告、软件版本更新历史等)中隐藏着许多有价值的信 息,利用这些信息可以协助软件开发人员理解系统架构、函数调用依赖等,帮助维护人员 了解当前系统中出现的Bug 和潜在 Bug,进一步增加系统的稳定性、健壮性和可靠性等。 软件知识库的挖掘在近几年发展尤为迅速,研究人员已经提出了许多优秀的数据挖掘算法 应用在软件工程的生命周期的各个阶段,并且得到了较好的实验结果。本论文的工作主要 研究软件知识库中的软件开发、测试和维护过程中的 2 类数据:软件修改历史数据(存储 在 SVN)和Bug 报告数据(存储在 Bugzilla ),并依此为切入点挖掘两类数据集来协助开 发人员和维护人员。论文主要由以下几个部分展开: (1)数据挖掘和软件工程综述:对数据挖掘技术的由来、经典算法及应用方向进行 概述。然后介绍了软件工程学。从大型软件工程项目出发,对庞大的软件工程知识库进行 数据挖掘技术的应用。尤其对软件开发和维护方面做了阐述,以及将来比较有挑战性的问 题等。 (2)软件知识库数据抽取。 目前最常用的版本控制工具是SVN 或 CVS,在软件系统的整个生命周期中,它会产 生大量的源代码文件、文档或交流记录等演化历史数据。如果没有足够的经验,庞大的软 件系统会让开发人员和维护人员无从下手。为了方便开发人员和维护人员我们需要抽取出 软件系统演化历史数据中有价值的信息转化为可挖掘的数据集,然后利用数据挖掘技术分 析这些数据,从中找到有意义和价值的知识。我们在这部分主要讨论如何建立抽取器 (Java-RESC )从SVN 版本控制库中抽取出适合挖掘的 XML 格式数据集。 (3)知识库挖掘在软件开发中的应用。 随着软件工程学发展,软件系统越来越庞大,代码文件呈螺旋状上升,从而程序中错 综复杂的调用关系是不可以避免的,软件开发的成本不断增加,同时消耗大量的人力、物 力。软件开发人员对软件架构不熟悉的话,会严重影响软件的开发周期,同时也会影响到 软件系统的质量和稳定性。软件开发过程中往往会出现这样的情况:添加或修改源代码的 一个文件,通常都需要添加或修改软件架构中关联的源代码文件,这是因为大型软件系统 的各模块之间存在相互依赖性,这种依赖关系很难用传统的静态或动态分析技术进行检 测。本文通过数据挖掘技术来研究软件系统各模块源代码文件关联依赖,通过了解各模块 之间的调用相互关联来帮助软件开发人员快速理解软件体系结构,并且当开发人员添加、 修改或删除某个文件或源代码时,我们的方法可以有效的为其提供修改路径建议。 (4)知识库挖掘在软件维护中的应用。 软件系统维护是软件生命周期中最重要的一个阶段,也是花费时间最长的阶段。要使 软件系统能在实际和不断变化的计算机复杂环境中正常运行,维护人员就必须要

文档评论(0)

wwqqq + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档