Font Size: a A A

Algorithm Research Of Sequence Mining Based On Software Execution Path

Posted on:2018-06-20Degree:MasterType:Thesis
Country:ChinaCandidate:R L ZhangFull Text:PDF
GTID:2348330533463283Subject:Engineering
Abstract/Summary:PDF Full Text Request
With the development of computer application technology and the universal application of the Internet,the software system is becoming more and more complicated.In the open network environment,the software development,maintenance and software behavior monitoring,prediction is also increasingly difficult.Therefore,how to mine execution path and analysis behavior characteristics of the software effectively,is the important protection of software security and reliability,but also help the software in various fields of extensive application and development.In this paper,we use the data mining technology to improve the algorithm of sequence mining and apply it to the software execution path,so as to mine the behavior patterns that users are interested in,and apply them to software behavior analysis,software error location and software vulnerability mining.Firstly,based on the problem of mining the users interest in the software sequence,the method of acquiring the dynamic execution sequence of the software is proposed,and the detailed acquisition steps are given.Based on the granularity of the function,the function call graph is obtained by tracking the dynamic execution trace of the software and transformed into the function call sequence one by one,that is,the software execution sequence.Secondly,in order to find the key path in the process of software implementation,a high utility sequence pattern mining algorithm based on software execution path is proposed,for subsequent software behavior analysis and software testing.The algorithm uses the Utility List structure in the HUI-Miner algorithm and adds the position attribute to store the utility information and position information for the sequence pattern.A data structure,PartitionList,is proposed to reduce the search space and the number of connections of the pattern expansion.Based on the partitioned utility information,a new utility pruning strategy is proposed to reduce the search space of the sequence pattern.In order to further improve the efficiency of the algorithm,a new pruning strategy is proposed when constructing the position utility list and the partition list.Thirdly,as most of the high utility pattern mining algorithms are based on static database,and in the later part of software maintenance often have to add new functions such as behavior,in order to solve the problem of mining high utility pattern in dynamic database,an efficient incremental high utility pattern mining algorithm based on pattern-growth is proposed.Propose a new data structure HUP-Trie is used to store sequences from the original high utility pattern database so that they can quickly update their utility to get the updated utility pattern.Finally,the algorithm proposed in this paper is programmed in Java language under Windows platform.Through the experimental results,the performance of the algorithm in the run time,the scalability of the model,memory usage and other aspects of the performance analysis.
Keywords/Search Tags:Software execution sequence, High utility pattern, Software behavior pattern, Pruning strategy
PDF Full Text Request
Related items