APP下载

基于JAVA的软件故障自动检测系统设计

2019-01-10林丽红

现代电子技术 2019年1期
关键词:自动检测特征提取

林丽红

关键词: JAVA; 软件故障; 自动检测; 特征提取; 数据融合滤波技术; 故障特征挖掘

中图分类号: TN02?34; TP311                    文献标识码: A                      文章编号: 1004?373X(2019)01?0183?04

Abstract: The software fault automatic detection system based on JAVA is put forward to improve the fault automatic detection ability of software, and perform the optimization design of the software automatic fault detection system. The system is composed of software fault data acquisition module, fault information fusion module, feature extraction module, information integration processing module and fault expert system diagnosis module. The integrated development of fault detection system is carried out in DSP and PLC. The data fusion filtering technology is used to perform the multi?sensor acquisition for the software fault information. The adaptive power amplification is adopted to enhance the acquired fault information, which can improve the diagnostic ability of fault class attribute. The fault feature is mined in fault information fusion, and the correlation characteristic quantity reflecting the software fault category is extracted. The fault identification and intelligent diagnosis are executed in expert system. The modular development and design of the software fault automatic detection system are performed with JAVA development tool. The test results show that the designed software fault detection system has superior fault diagnosis ability, and high fault detection accuracy rate.

Keywords: JAVA; software fault; automatic detection; feature extraction; data fusion filtering technology; fault feature mining

0  引  言

隨着软件技术的快速发展,大量的智能软件出现,并有效解决了智能信息处理和算法实现问题,软件在人们的生活和工作中发挥着智能程序处理和面向对象性的应用设计功能。然而在软件运行和设计过程中,由于大量的兼容性程序以及BUG的存在,使得软件可能出现故障,故需要对软件的故障进行有效的检测和智能诊断设计,提高软件的稳定运行能力。研究软件的故障自动检测方法在软件设计和软件的程序诊断和可靠性研究中具有很好的应用价值[1]。

对软件的故障自动检测是建立在软件的故障大数据的模型构建和软件故障特征提取的基础上,结合软件的层次式开发技术进行软件故障诊断检测。传统方法中,对软件故障的检测方法主要有自相关信息融合统计分析方法、匹配检测方法、软件运行状态的谱特征分析方法等[2?4],根据提取软件运行状态的特征信息,结合关联匹配分析方法进行软件故障检测,提高软件的智能故障分析和诊断能力,取得了一定的检测效果。但上述在进行软件的故障检测中容易受到故障特征的分布式耦合性因素的影响,导致软件故障检测存在虚警和漏报,检测的准确性不高,抗干扰能力不强[5]。针对上述问题,本文提出基于JAVA的软件故障自动检测系统,采用数据融合滤波技术进行软件故障信息的多传感器采集,在故障信息融合中进行故障特征挖掘,提取反映软件故障类别的关联特征量,实现软件故障检测,最后进行仿真测试,展示了本文方法进行软件故障检测中的优越性能。

1  故障检测系统总体构架

1.1  故障检测系统功能结构组成

首先分析软件故障自动检测系统总体设计并进行功能模块分析和介绍,软件故障自动检测系统建立在通用计算机平台上,故障自动检测系统可以在不同的操作系统上进行软件故障自动检测。构建故障检测系统的模型数据库,采用模糊指向性分析方法进行软件故障自动检测的属性分类识别,提高故障检测的人工智能性,软件故障检测系统采用C/S计算模型体系[6],采用实时传输协议RTP(Real Time Protocol)进行软件故障检测的实时信息传输控制。采用分组转发控制方法进行软件故障诊断中的VoIP协议设计,提高软件故障诊断的自适应控制能力。系统由软件故障数据采集模块、故障信息融合模块、特征提取模块、信息集成处理模块和故障专家系统诊断模块组成。软件故障检测系统的功能模块构成如图1所示。

1.2  开发环境描述和系统总体结构

根据图1所示的软件故障检测系统的功能模块设计,建立关联规则知识库,结合故障特征分析方法进行软件规则的信息交互和特征提取,采用S3C2440微处理器作为软件故障检测系统的核心处理器,结合LOCAL时钟总线控制方法进行数据交互和故障信息的关联特征分析。本文设计的软件故障检测系统采用JAVA作为底层软件设计,结合程序驱动配置和分布式计算处理方法进行软件的驱动设计,采用BS构架和APP混合开发方式进行软件故障自动检测系统优化设计[7]。

采用MySQL构建软件故障自动检测数据库,在B/S结构体系下进行软件故障自动检测系统的程序驱动设计和交叉编译控制。软件故障自动检测系统设计中,软件开发是核心,主要包括平台的数据库开发、软件故障自动检测的数据处理模块开发、网络通信模块开发和输出接口的交互设计开发,基于嵌入式JAVA构架进行软件故障自动检测的底层算法设计,采用JAVA程序驱动程序进行软件故障检查的交叉编译和服务器接口设计。采用VXI总线技术进行软件故障信息数据采集,在故障检测系统的网络体系和数据库体系结构设计中,建立一个publish分支管理器进行故障检测的总线开发,在APP混合开发环境中,进行本地客户端(Client)界面设计[8],提高故障检测的信息交互能力和界面兼容性,根据上述总体设计描述,得到本文设计的软件故障自动检测系统的总体结构构架如图2所示。

2  软件故障检测系统的模块化设计与实现

2.1  软件故障检测系统的交叉编译配置

在进行了软件故障检测系统的总体设计和原理分析的基础上,进行故障检测系统的模块化设计,本文提出基于JAVA的软件故障自动检测系统开发技术,在DSP和逻辑PLC中进行故障检测系统的集成开发。本文设计的软件故障自动检测系统的交叉编译控制程序采用B/S架构设计,采用数据融合滤波技术进行软件故障信息的多传感器采集,以MySQL为数据库,进行软件故障检测过程中的进程管理、内存管理和文件系统管理。结合参考数据库模型进行程序调度,在IEEE 488.2标准协议下进行软件故障检测的上位机通信设计,采用VXI总线技术进行软件故障信息數据采集,在故障检测系统的网络体系结构模型中,通过MVVM框架建立程序驱动模块,采用多线程寻址和业务逻辑控制方法[9]实现软件故障自动编译和嵌入式Linux内核控制,根据上述设计模型,得到软件故障检测系统的交叉编译配置的结构模型如图3所示。

2.2  检测系统的主要功能模块设计

在JAVA开发工具下进行软件故障自动检测系统的模块化开发设计。主要对软件故障数据采集模块、故障信息融合模块、特征提取模块、信息集成处理模块和故障专家系统诊断模块进行设计。

软件故障数据采集模块是整个故障检测系统的底层模块,采用JAVA为底层设计语言进行软件故障的原始数据采集[10?12]。在软件故障自动检测系统的存储空间内,对信息检索的采样时间间隔为[Δw],将[W]划分为[n+1]个故障数据采集窗口,即[{w0,w1,w2,…,wn},n=WΔw],对故障数据采集的编码调制序列为16 Kb/s,24 Kb/s,在UML环境下进行软件故障自动检测特征分析。

2) 故障信息融合模块采用BFCP(Binary Floor Control Protocol)协议设计[13],采用ast_sip_config类函数实现对软件故障的信息融合和属性特征提取。对采集的故障采用自适应功率放大进行信息增强处理,提高故障的类别属性诊断能力。

特征提取模块通过ast_sip_realtime类函数从软件故障数据库中提取故障特征量,在故障信息融合中进行故障特征挖掘,提取反映软件故障类别的关联特征量,建立一个关联会话实现软件故障类别判定[14]。

在专家系统进行故障识别和智能诊断,专家系统采用SIP_INVITES状态跟踪识别方法实现软件故障的诊断[15],通过指向T.38 UDPTL会话的指针进行故障类别判定。

综上分析,实现对软件故障自动检测系统的软件优化设计,实现流程图如图4所示。

3  系统测试分析

为了测试本文设计的软件故障检测系统的应用性能,进行仿真实验。实验中软件的检测算法开发采用Matlab设计,故障检测系统的底层语言采用JAVA开发工具设计,在嵌入式ARM和Linux内核环境下进行软件故障自动检测系统的模块化开发设计,对软件故障原始特征采集的初始化频率为100 kHz,归一化频率为1 024 kHz,对故障数据样本的采样大小为2 000,训练集数据规模为100,软件故障检测的迭代步长为24,仿真时间为24 s,根据上述仿真参量设定,进行软件故障检测,得到故障特征提取结果如图5所示。

根据故障特征分布实现软件故障的自动检测,得到检测的准确率对比结果如图6所示,分析图6得知,采用本文方法进行故障检测的准确率较高。

4  结  语

本文提出基于JAVA的软件故障自动检测系统,对系统的软件故障数据采集模块、故障信息融合模块、特征提取模块、信息集成处理模块和故障专家系统诊断模块进行详细设计描述,在DSP和逻辑PLC中进行故障检测系统的集成开发。研究结果表明,采用该系统进行软件故障诊断的可靠性较高,检测准确率较好。

参考文献

[1] 刘聪,李颖晖,吴辰,等.基于鲁棒自适应滑模观测器的多故障重构[J].控制与决策,2016,31(7):1219?1224.

LIU Cong, LI Yinghui, WU Chen, et al. Design of the robust adaptive sliding mode observer for multiple fault reconstruction [J]. Control and decision, 2016, 31(7): 1219?1224.

[2] 何倩,胡启伟,王勇,等.基于软件定义网络的反饱和分组云负载均衡[J].计算机应用,2016,36(6):1520?1525.

HE Qian, HU Qiwei, WANG Yong, et al. Software defined network based anti?saturated grouping cloud load balance [J]. Journal of computer applications, 2016, 36(6): 1520?1525.

[3] ZHANG Q, ZHU Q Y, ZHANI M F, et al. Dynamic service placement in geographically distributed clouds [J]. IEEE journal on selected areas in communications, 2013, 31(12): 762?772.

[4] 刘逻,郭立红,肖辉,等.基于参数动态调整的动态模糊神经网络的软件可靠性增长模型[J].计算机科学,2013,40(2):186?190.

LIU Luo, GUO Lihong, XIAO Hui, et al. Software reliability growth model based on dynamic fuzzy neural network with parameters dynamic adjustment [J]. Computer science, 2013, 40(2): 186?190.

[5] FERCOQ O, RICHT?RIK P. Accelerated, parallel and proximal coordinate descent [J]. SIAM journal on optimization, 2014, 25(4): 1997?2023.

[6] LOW Y, BICKSON D, GONZALEZ J, et al. Distributed GraphLab: a framework for machine learning and data mining in the cloud [J]. Proceedings of the VLDB endowment, 2012, 5(8): 716?727.

[7] 林永峰,陈亮.面向安全性分析的嵌入式软件测试方法研究[J].现代电子技术,2016,39(13):80?83.

LIN Yongfeng, CHEN Liang. Research on embedded software testing method for security analysis [J]. Modern electronics technique, 2016, 39(13): 80?83.

[8] 魏祥麟,陈鸣,范建华,等.数据中心网络的体系结构[J].软件学报,2013,24(2):295?316.

WEI X L, CHEN M, FAN J H, et al. Architecture of the data center network [J]. Journal of software, 2013, 24(2): 295?316.

[9] 杨磊磊,陈松灿.最坏分离的联合分辨率判别分析[J].软件学报,2015,26(6):1386?1394.

YANG Leilei, CHEN Songcan. Worst?separated couple?resolution discriminant analysis [J]. Journal of software, 2015, 26(6): 1386?1394.

[10] LI N, YU Y, ZHOU Z H. Diversity regularized ensemble pruning [C]// Proceedings of 2012 Joint European Conference on Machine Learning and Knowledge Discovery in Databases. Berlin: Springer, 2012: 330?345.

[11] PARVIN H, MIRNABIBABOLI M, ALINEJAD?ROKNY H. Proposing a classifier ensemble framework based on classifier selection and decision tree [J]. Engineering applications of artificial intelligence, 2015, 37: 34?42.

[12] CHANDRASEKHAR R, KAMARAJU M, SAIRAM M V S, et al. PAPR reduction using combination of precoding with Mu?law companding technique for MIMO?OFDM systems [C]// 2015 IEEE International Conference on Communications and Signal Processing. Melmaruvathur, India: IEEE, 2015: 479?483.

[13] 刘聪,李颖晖,刘勇智,等.采用高阶终端滑模观测器的执行器未知故障重构[J].西安交通大学学报,2015,49(9):135?142.

LIU Cong, LI Yinghui, LIU Yongzhi, et al. Unknown actuator fault reconstruction based on the high order terminal sli?ding mode observer [J]. Journal of Xian Jiaotong University, 2015, 49(9): 135?142.

[14] KHABBAZIBASMENJ A, HASSANIEN A, VOROBYOV S, et al. Efficient transmit beamspace design for search?free based DOA estimation in MIMO radar [J]. IEEE transactions on signal processing, 2014, 62(6): 1490?1500.

[15] SAMMARTINO P F, BAKER C J, GRIFFITHS H D. Frequency diverse MIMO techniques for radar [J]. IEEE transactions on aerospace and electronic systems, 2013, 49(1): 201?222.

猜你喜欢

自动检测特征提取
基于Daubechies(dbN)的飞行器音频特征提取
基于STM32的室内有害气体自动检测与排风系统
光电传感器在自动检测和分拣中的应用
基于TestStand的自动检测程序开发
Bagging RCSP脑电特征提取算法
K-F环自动检测系统设计
基于MED和循环域解调的多故障特征提取
Walsh变换在滚动轴承早期故障特征提取中的应用