数据挖掘技术在软件工程中应用探究

数据挖掘技术在软件工程中应用探究

ID:6089157

大小:27.50 KB

页数:6页

时间:2018-01-02

数据挖掘技术在软件工程中应用探究_第1页
数据挖掘技术在软件工程中应用探究_第2页
数据挖掘技术在软件工程中应用探究_第3页
数据挖掘技术在软件工程中应用探究_第4页
数据挖掘技术在软件工程中应用探究_第5页
资源描述:

《数据挖掘技术在软件工程中应用探究》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、数据挖掘技术在软件工程中应用探究  摘要随着信息技术的不断发展,日常生活中人们所接触的信息量越来越多,如何在众多信息量中找到自己有用的信息,成为影响人们工作效率和工作质量的关键因素,而数据挖掘技术的应用则能很好的解决这个问题。本文将通过介绍数据挖掘技术在软件工程中的应用,详细分析数据挖掘技术的作用和影响。关键词数据挖掘;软件工程;开源软件中图分类号:TP311文献标识码:A文章编号:1671-7597(2014)01-0073-01所谓数据挖掘是指在大量、无序、模糊的数据中挖掘出其中有用的信息的过程,它能实现信息的分类、聚类并进行偏差分析。在

2、这个信息爆炸的时代里,人们获取的信息量是非常惊人的。在软件工程中,软件的开发及管理过程中都会出现大量信息和数据,如何更好地在众多信息中快速找出有用信息成为困扰软件工程的一大问题,因此,对信息数据的挖掘在软件工程中显得更为重要。1数据挖掘的过程及技术一般的数据挖掘过程包括4个步骤,即对软件库里的数据进行选择、对被选择的数据进行预处理形成格式化数据、再对格式化的信息进行挖掘,最终吸收其中有用的知识。6在软件工程中数据挖掘的工作一般可以分为3个层次,即交互式可视数据探查、自动模式提取及模型建构,这3个层面相互关联,其中可视数据探查为提取模式及模型的

3、建构提供基础,模型的建构又为数据探查和模式提取提供了指导。软件工程中常用的数据挖掘技术主要是通过分析、聚类、预测及统计分析等技术从众多资源中找出潜在的、对人们有用的信息并反馈给软件系统。2数据挖掘技术在软件工程中的应用数据挖掘技术被应用到软件工程中已经有20多年的历史,随着科学技术的不断进步,数据挖掘技术的应用也越来越广泛,如,在银行、保险、交通及零售等行业都在应用数据挖掘技术。而在软件工程中使用数据挖掘则可以提高软件系统的维护效率并增加系统的稳定性和安全性。软件工程中的程序代码分析、软件项目管理、软件故障检测及开源软件开发等方面都应用了数据

4、挖掘技术。2.1开源软件开发中的数据挖掘6开源软件(OSS)顾名思义就是源代码是开放的软件,这种软件目前大多对客户都是免费的,也正是由于这个原因使得开源软件的控制和管理非常困难,因此,要引进数据挖掘技术帮助开源软件提高质量。如,大阪大学的学生就设计了一个分布式的数据挖掘系统,它不仅能对大规模系统进行挖掘还能对多个开源软件进行挖掘。还有牛津大学设计的数据挖掘系统能实现对系统的开发者与使用者进行跟踪管理,极大地提高了开源软件的质量和使用率。2.2软件项目管理中的数据挖掘软件项目管理中的数据挖掘主要体现在两个方面,一个是对组织关系的挖掘一个是对版本

5、控制信息的挖掘。其中,软件项目的管理是一个复杂的工程,对人员组织关系的挖掘主要是对人力资源进行协调和分配。例如,一个工程项目可能有成百上千人参与,在参与过程中人员之间的电子邮件、文档等都会产生交互,交互中极易造成秩序混乱,而数据挖掘技术的使用则可以很好的将工作人员的组织关系进行区分,有利于软件项目管理的顺利进行。此外,数据挖掘技术还体现在对版本控制信息的挖掘。版本控制可以记录文件内容的变化,以方便用户查看版本的修订情况。将数据挖掘技术引入到版本控制信息中可以减少系统后期的维护成本。它能为软件系统的维护提供警示作用,有些挖掘数据能清晰的查找出系

6、统修复记录中的错误,通过查找错误记录使软件的设计者能成功避开很多常见的错误,提高软件项目的管理水平。2.3程序代码及机构中的数据挖掘6这里所说的程序代码指的是克隆代码,所谓克隆代码就是通过简单的复制和粘贴进行再次使用的代码。对克隆代码的检测也是数据挖掘中应用最早的,目前对克隆代码的检测主要有以下几种方式,基于文本对比方法、基于标识符对比方法、基于度量的方法、基于程序结构表示的方法及运用潜在语义索引等方法。但是对于克隆代码的数据挖掘还不是很成熟,主要是因为数据挖掘时仅考虑了语法信息而忽略了对语义的挖掘。其次,是对横切关注点(Aspect)的挖掘

7、,对Aspect进行挖掘主要是因为有些关注点在程序中的代码非常相似甚至是同一代码段。对于Aspect的挖掘方式有很多,如,对代码文本分析时,可以根据不同的特点可以分为基于文本和类型的分析、形式概念分析方法、基于聚类分析方法及基于自然语言的分析方法等等。对于执行模式进行挖掘时可采用形式概念分析法及基于方法执行关系的挖掘两种方式。对于调用关系分析时,可以采用扇入分析软件探查技术和基于耦合与PageRank度量的方式进行挖掘。最后是在数据库中挖掘有用的代码或构件。目前,常用的方法有通过记录输入-输出关系检索、通过关键词进行索引和挖掘、寻找相似的代码

8、源和语义、基于构建交互关系图的方法及对所需构件进行形式化描述等等,如我们使用的Google、百度等搜索引擎都可以进行数据的检索。2.4软件故障检测中的数据挖掘6数据

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。