软件工程中数据挖掘技术的应用_第1页
软件工程中数据挖掘技术的应用_第2页
软件工程中数据挖掘技术的应用_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、软件工程中数据挖掘技术的应用摘要:近期来,数据挖掘技术在软件项目中产生的作用更不能忽略,笔者关键从程序代码以及结构层面对数据挖掘技术的使用做了研讨,而且亦对面向程序实施记录层面的挖掘开展了研究。关键词:软件项目;数据挖掘技术;使用作者概述:郑健1980-,男,上海市人。硕士研究生毕业。现为上海同济大学电子与信息项目学校项目师。探究方向为计算机技术使用信息技术成为新世纪的明显特点,很多涵盖到各行各业,软件软件工程亦在持续版本提高,总量日渐增大,其创新建立亦更复杂。原本存在的直觉型处理模式已经渐渐适应不了项目中的进程、活动以及对象等的控制与管理层面的进步要求。这个时候数据挖掘技术的产生,给软件项目

2、带来了进步的重要机遇。1关于程序代码及结构层面的挖掘1.1克隆代码检测的办法克隆代码现实上指以复用如此的意图为根本原理的情形下开展拷贝、粘贴的代码段,并且偶尔也是会对局部代码开展修正,往往情形下,可能会有在软件软件工程里面占有代码的总数量的百分之七到百分之二十三。其实关于其检测是旨在避免故障的拷贝传播如此的不利情形发生,同时对其检测还能对软件开展演化这个进程里起到不错的保养作用,大致上能说克隆代码检测如此的存在已经是软件项目这个大专业范围中最先时的数据挖掘要求,当前大略能整理出四中比照常用的办法和路径,依次为立足于文本比拟、标识符比拟、度量、程序结构的办法。其第一立足于文本比拟如此的一个办法和

3、路径,它关键是结合程序代码中的假设干语句经过比拟进而分辨,而其对后期的一个完善,这是运用运用假设干技术或伎俩把字符串的匹配速度和效果给提高上来,示例说能使用Hash函数如此的一项技术用以提高字符串匹配速度和效果,同时运用与其函数技术总体应的Duploe如此的伎俩给予辅助。其二那么是根本原理标识符比拟如此的一个办法和路径,示例比照通用的一个方法就是在构造分词建立标识符序列前缀树实现的情形下在开展比拟,与此类办法和路径总体应的有CCFinder或者Dup等等伎俩。第三种以及第四种办法和路径依次是立足于度量的办法与立足于程序结构表示的办法,这两种办法依次对应的伎俩是CLAN与GPLAG、Duplix

4、等等。当然除了这四中比照常用的办法,还有其它的办法和路径,示例频繁项集或潜在语义索引LSI等等。1.2Aspect挖掘软件创新建立的关键意图是旨在处理好程序注意点之间关于散列还有其缠结这两层面产生的问题而提出的新程序创新建立范型。Aspect挖掘与重构是实现遗留软件工程改导致面向层面软件而需要要处理好的重要问题。原有的克隆代码检测技术因其某个注意点时不时在程序中呈现出相同或者是相近的代码段而依然作为横切注意点挖掘的切实处理好渠道。横切注意点挖掘亦就是常说的Aspect挖掘。结合假设干结合性比照强的假设干办法,示例立足于度量剖析或者是形式概念剖析等等这类总体而言具有很强结合的方法。使用如此算法而

5、得出的横切代码候选集往往情形下都有点大,所以亦能说在候选集辅导下开展面向层面的重构怎么开展是比照难的问题。现实上数据挖掘技术还能在很多层面产生不错的影响。1.3代码检索在软件创新建立办法律中提倡着复用这个重要的标准,近期来有一个软件复用这层面专业范围里的很重重要的议题,亦就是关于在本地或者是面向WEB这些代码库中检索出合乎目前项目工程的代码之类的议题,已经产生了几种比照有代代表性的办法和路径,示例类别存在和贮存并检索、立足于输入-输出映射的检索、立足于构件形式化描述、立足于代码相仿性等等办法,这些办法和路径关键会关系到到有关于聚类、类别、语义剖析等等几种比照关键的技术。因为其Web的使用范围持

6、续的扩大,亦就不再单单只有文件在其中,还有很多犹如GoogleCod以及Mica等等类型的代码检索引擎亦伴着那些Web中的可供参考的代码而产生。2关于面向程序实施记录层面的挖掘2.1程序规约层面的挖掘把程序的实施跟进开展剖析后而知晓程序代码展现出来的合同亦就是常说的程序规约挖掘。它现实上亦就是按照实施跟进信息二开展的逆向建模,不但关于程序理解的实行会产生不错的效果,同时关于其程序检验以及程序保养的实行亦有着不错的效果。此类挖掘的进程往往是先对总需剖析的软件工程做一个初步的插装,做了之后还总需把软件对API亦或是大致模块的提取和使用以及软件工程状态变量的值作出记录。其次在对这些记录下来的信息开展

7、一个必要的过滤以及聚类还有约筒,进而亦就能建立规约。从其总量的形式层面开展剖析,目前有两类规约挖掘的办法,即立足于自行机的规约挖掘办法和立足于标准的规约挖掘办法。2.2故障定位在现实测评这类型的活动中往往情形下假设是要确保其测评涵盖的完全性,都总需使用很多测评用例开展测评,如此一来就很有可能使得能让程序失效的用例数量比照可观,进而假设是总需用时较短的的情形下综合找到接下来程序诊断进程里的故障亦就显得很有困难性,单单是调试人员的人工查看是很难超过要求的,故而,这个时候与数据挖掘技术相结合,就能比照容易的适应预期的效果。往往情形下程序面临的数次生效状况亦有可能是同样一个故障而引出的。故而亦就能非简

8、洁对其开展聚类,如此一来亦就避免了对各次生效都开展调试。目前Dickinson与Podgurski已经先于其它人提出了关于程序失效这层面能用聚类到达对调试代价减少的如此具有科学性的思想。而毛澄映那局部人那么采用了相异性度量完善等类型的办法和路径让聚类的精度得以提高。在这之后,还产生了某些探究者运用对函数提取和使用对等以及返回值与程序失效之间的关联信息开展剖析而到达对故障的定位。总体而言比照以往的一个故障定位技术就有程序切片此类技术,只是还有很多的保养人员关于比照大型的复杂软件工程类型的切片成果开展理解时往往都会比照有难度软件工程。3结论因为其软件项目中产生的各种各类困难,数据挖掘技术的产生在最大限度上提升了软件项目中的假设干问题,故而只有持续加深对数据挖掘技术在软件项目中的使用探究,才有利于更加推动软件项目的进步与发展。参考文献

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论