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

2016-03-16 05:35
环球市场 2016年21期
关键词:数据仓库数据挖掘神经网络

李 浩

南京城市智能交通股份有限公司

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

李 浩

南京城市智能交通股份有限公司

数据挖掘技术在软件开发过程中有着广泛的应用前景,但是国内对此技术的研究仅仅在理论研究阶段,需要通过对其深化让其发挥更大的价值。只有不断探索研究,才能够让数据挖掘技术在软件工程中的应用变得更加成熟可靠,并在更加广泛的其他领域中得到更加优异的表现。因此,探究当前数据挖掘技术在软件工程中的应用策略。鉴于此,本文主要分析数据挖掘技术在软件工程中的应用。

数据挖掘技术;软件工程;应用

1 、数据挖掘技术的简介

1.1 数据挖掘技术的含义

所谓数据挖掘,主要指的是在大量的数据信息中利用科学、有效的算法第一时间获取到有用信息的筛选过程。大量的信息存在于生产和生活领域,使得人们在处理事情是无从下手,这样大大降低了人们的工作效率,也浪费了工作人员宝贵的时间。而这一问题通过数据挖掘技术的使用得到了很好的解决。

1.2 数据挖掘技术所采用的方法

(1)遗传算法的使用。所谓遗传算法,主要是指基于生物自然选择与遗传激励的随机搜索算法,也是数据挖掘技术常用的一种操作方法。遗传算法的有点就在于表面上看似无联系的事物,却能在事物模型间建立相关的练习,实现事物之间共同发展,现在生物界越来越重视的遗传基因等的研究,所以这种方法很受人们的欢迎。

(2)采用决策树方法。这种方法主要用于对信息的分类和整合,在遇到大量的信息的时候,能够在短时间内找出关键的信息,能够使信息分类的快速化和简单化,并且保证了信息分类的准确度,但是此方法的不足之处就在于具有较差的抗噪性能,不能全面的来表述较为复杂的概念。

(3)采用统计分析法。往往会利用回归分析和主成分分析等方法来分析数据库字段之间的关系。在字段之间的关系包括相关关系,函数关系也是其中的一种,不同的是函数关系可以用公式来表示,而相关关系则不能通过公示来表示关系,系统分析法的使用为这种关系的分析提供了便利。

(4)采用可视化技术。可视化技术是采用一些图表来对数据进行表现,便于对数据的理解,比如,使用简单图形来展示存在于数据库中的多个数据,使研究者看起来一目了然,使单调的数据形象化,更容易掌握数据的相关信息。

(5)采用神经网络方法。它模拟人脑神经元结构,以MP模型和Hebb学习规则为基础,用神经网络连接的权值表示知识,其学习体现在神经网络权值的逐步计算上。前馈式网络、反馈式网络和自组织网络是常用的三种神经网络模型,分别用于预测、联想记忆和聚类等。

2 、数据挖掘技术在软件工程中的应用分析

软件工程度量过程中,其中已经从大量数据中提取部分信息,但是仍然存在大量的数据隐藏在软件工程数据库内,而数据挖掘技术的应用,能够有效支持和提高对软件度量。数据挖掘技术的应用,即从数据库中提取全新、重要且有用的信息,在软件开发时可以从大量数据中寻找所有相关信息。随着软件开发需求不断的提高,数据挖掘技术在实际应用中的优势逐渐被体现出来。并且软件与硬件基础设施已经具备处理发现驱动的数据分析所需的密集计算能力,且各种技术在持续更新,具有良好的实际应用效果,例如神经网络、模式识别、决策树等。另外,数据存储与贮藏集成可以为软件开发组织提供大量的数据,同时也进一步促使数据挖掘技术在软件开发中的应用。

3 、数据挖掘技术在软件工程中的应用技术

3.1 建立数据信息软件

(1)数据仓库系统。一是源数据阶段:此阶段主要是对历史数据、当前数据和综合数据进行收集。二是源数据预处理阶段:其主要包括关系数据库、软件数据文档和其他。三是进入仓库管理阶段:主要包括数据仓库管理工具、抽取、转换、装载、元数据库和数据建模工具。四是知识基DM分析工具:分类分析工具、聚类分析工具、关联分析工具和序列分析工具。五是可视化的软件领域知识:揭示影响软件质量的必然因素。五个方面构成整个数据仓库管理系统。

(2)数据仓库建模。首先,需要将客户所需要的信息进行汇总整理,从而做好系统功能、界面、数据等方面的确定。其次,客户评估信息主要是应用软件测试,(其中包括动态测试,也包括静态测试,形式化测试)获得相应的评估信息,将其与客户所需要的信息进行汇总,权衡软件在应用中的质量,从中寻找可能存在的错误,并对其进行修改。第三,软件系统信息是软件应用的基础,其主要包括系统的规模、范围、总体要求,以及所需要的支撑环境。第四,可行性报告主要指的是其是否具有运行的可行性,技术、经济、法律、使用是否能够达到需要的目的。

3.2 对集成软件信息数据仓库进行信息挖掘

(1)聚类分析发现。通过某些相似的需求将某一些客户分成一组成为聚类,使客户的信息更容易被开发人员了解,以便于提供更高服务水平,和满意的服务。将某些客户聚类为一组,可以专门为其要求开发出具有特别功能的软件,通过聚类分析,可以对客户的软件应用情况进行有甄别性的观察,从而让软件达到一种很好的使用效果。

(2)分类分析的发现。与聚类完全不同,分类分析是通过已经标记的特点进行数据分类。分类就是为了通过记录表现来方便的描述这一类数据所具有的特点。分类分析主要应用于决策树、神经网络和径向基础函数等软件中。分类分析的结果可让我们在数据库的设计过程中更有针对性,可以通过软件对所应对的客户进行属性划分,针对不同的客户提供不同的服务或者保护。

(3)序列分析的发现。序列分析是完全独立的一种分析算法,其区别于以上两种算法。这类算法主要是根据数据的序列或者事件进行检测。由于不同的客户要求同一软件为其提供的功能一般不同,因此,软件分析人员就可将客户按其所倾向需求的功能模式进行分类。

总之,为更好的适应网络科技发展,社会上对于软件的需求也在增加,然而随着软件规模的扩大,很多软件开发无法得到合理控制,因此,数据挖掘技术被应用到软件工程中了,主要是借助技术手段获取有价值的数据,以便及时确定故障所在,检测系统漏洞,最终完成成本评估。

[1]陈建桦.数据挖掘技术在软件工程中的应用研究[J].硅谷,2014,01:73+51.

[2]刘玉峰.数据挖掘技术在软件知识库中的应用研究[D].广西师范大学,2010.

猜你喜欢
数据仓库数据挖掘神经网络
探讨人工智能与数据挖掘发展趋势
基于数据仓库的数据倾斜解决方案研究
神经网络抑制无线通信干扰探究
基于数据仓库的住房城乡建设信息系统整合研究
基于神经网络的中小学生情感分析
基于并行计算的大数据挖掘在电网中的应用
探析电力系统调度中数据仓库技术的应用
基于神经网络的拉矫机控制模型建立
一种基于Hadoop的大数据挖掘云服务及应用
基于数据仓库的数据分析探索与实践