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

2019-02-14 16:20栗元龙
数字通信世界 2019年9期
关键词:程序开发开源数据挖掘

栗元龙

(天津市河东区职工大学,天津 300000)

21世纪以来,计算机技术开始逐步渗透到人们的生活和学习中,不断改变着人们的生活方式,尤其在近几年,计算机技术和网络技术更是得到了前所未有的普及与发展。为了满足社会发展对计算机软件的需求,利用数据挖掘技术在海量数据中提取有价值的信息,并将其应用到软件开发与设计中非常重要,这不仅可以大幅度降低软件开发成本,而且还有助于提高软件的开发效率和整体质量。

1 数据挖掘技术概述

所谓数据挖掘技术,简单的说就是在海量数据中提取目标信息的一种计算方式。在大数据时代,软件工程需要处理的信息量很大,如果仍然采用传统的数据处理方法,那么不仅工作量大,而且处理效果也不尽人意。所以,迫切需要一种新型的数据处理方式,由此数据挖掘技术应运而生,能够快速、准确的在海量数据中提取所需信息,给数据整理和分析工作带来的很大方便。

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

2.1 数据挖掘技术在软件项目管理中的应用

软件项目管理所采用的方法是否科学,将直接影响到软件工程的整体质量,将数据挖掘技术应用在此项工作中,可以从两个方面分析其优势所在。首先是对项目组织关系的有效梳理和协调。随着软件工程规模的不断扩大,工程管理越来越复杂。在这种情况下,若想切实提高项目管理目标,首要任务就是做好人力资源的高效分配及利用。数据挖掘技术的应用可以实现对人员组织关系的深入分析,然后以项目管理需求为依据,实现人力资源的重新梳理和优化,确保项目的高效运转。其次是对系统漏洞进行修复,保证项目管理水平。这一点主要体现在版本控制信息的管理上,将数据挖掘技术应用到版本控制信息管理中,可以帮助设计者及时发现系统中的漏洞并进行处理,不仅节约了后期维护成本,而且还有助于提高项目管理水平。

2.2 数据挖掘技术在开源软件设计中的应用

开放性是开源软件的一个主要特点,正因为如此,致使源数据的管理和控制难度较大,从而降低了管理效果。数据挖掘技术在此项工作中的应用主要以分布式数据挖掘系统为主,通过对大规模系统和多个开源软件的挖掘,并对系统开发人员和使用人员进行跟踪管理,在提高开源软件使用率的同时,为开源软件质量提供保障。

2.3 数据挖掘技术在软件程序开发中的应用

在软件工程中,软件程序开发占据着重要地位,直接决定了软件的性能和开发效率。近年来,为了切实提高软件开发速度,采用的技术主要以克隆代码技术为主,数据挖掘技术在软件程度开发中的应用主要就是对该技术进行检测,检测方法主要以度量比对法、文本比对法和标识符比对法为主。此外,数据挖掘技术还可以在软件程序开发过程中用于挖掘数据库的有用代码。具体方法包括对输入输出关系记录进行检索、利用关键词进行索引、根据代码源和语义的相似性进行检索、利用构建交互关系图进行索引以及采用形式化描述方法进行数据挖等。其原理与百度、谷歌等搜索引擎的功能原理类似。

2.4 数据挖掘技术在软件故障检测中的应用

在软件工程项目开发过程中,程序设计不可避免地会出现一些漏洞,或因编程人员的操作失误,使软件功能受到影响。为了保证软件能够快速恢复应用,技术人员就需要对软件故障问题进行快速定位和检测,并根据实际情况尽快对程序代码加以优化和完善,确保各项功能的正常发挥。采用数据挖掘技术进行故障检测主要是通过对信息进行跟踪检测,或采用逆向建模方法,及时发现软件故障问题,提高程序的可维护性。

数据挖掘技术在软件故障检测中的应用主要包括两种方式,一是基于规则的挖掘方式,二是基于自动化的挖掘方式。基于规则的挖掘方式是根据程序行为总结运行规则,并采用时态逻辑进行表达。基于自动化的挖掘方式具体是指基于自动机抽象表示的API 规则挖掘方法。两种方法都能够有效发现软件故障问题。传统的软件故障监测主要采用程序切片定位技术,不仅过程较为复杂、定位准确性低且耗时较长。采用数据挖掘技术代替传统软件故障监测方法,可以有效提高故障检测效率,同时对故障点进行精确定位,为软件检测和调试提供方便。

3 结束语

综上所述,将数据挖掘技术应用到软件工程行业中,不仅可以有效解决软件开发和设计过程中出现的各类问题,提高软件开发效率和质量,而且还可以大幅度降低开发成本,为企业发展创造更高的经济效益和社会效益。因此,在未来的时间里,企业应提高对数据挖掘技术的重视度,并将其有效渗透到软件开发和设计中,以此来更好的促进行业的长足发展。

猜你喜欢
程序开发开源数据挖掘
浅析大学生在兼职小程序开发中遇到的问题
探讨人工智能与数据挖掘发展趋势
数据挖掘技术在打击倒卖OBU逃费中的应用浅析
APP应用程序开发模式探究
五毛钱能买多少头牛
2019开源杰出贡献奖
基于嵌入式系统Windows CE的应用程序开发
基于App inventor 2手机程序开发过程的学习与实——以“喵喵定时器”APP开发为例
大家说:开源、人工智能及创新
开源中国开源世界高峰论坛圆桌会议纵论开源与互联网+创新2.0