Font Size: a A A

Research Of Software Behavior Pattern From Software Execution Traces

Posted on:2016-09-14Degree:MasterType:Thesis
Country:ChinaCandidate:T T YinFull Text:PDF
GTID:2308330503955021Subject:Computer Science and Technology
Abstract/Summary:PDF Full Text Request
As the scale of software is becoming more and more huge, a large number of software data are produced. In order to mine the interesting knowledge from these data, to help software developers better understand and maintain software, data mining is being widely applied to software behavior analysis. The interesting behavior patterns for users can be mined from a large number of dynamic execution traces. These behavior patterns can provide quantitative basis and reliable guarantee in many software engineering appilications, such as analyzing system behavior, locating system failure, optimizing critical path and finding system bottleneck.This article mainly from the dynamic point of view, apply the sequence pattern mining to software execution trace mining for finding software behavior patterns. These patterns can help the software people to better understand and analyze the software. The main work is as follows.Firstly, an approach called WFTPMiner is proposed to mine weighted frequent traversal patterns from software execution graph. Software execution trace is translated into software execution graph and the weighted software execution graph is defined. Then, depth first strategy is adopted for transforming weighted software execution graph into software path traversals. To improve the efficiency of the algorithm WFTPMiner, a potential frequent suffix sequence tree named PFSS-Tree and a minimum count pruning strategy named MPS are designed.Secondly, a top-k high utility path pattern mining algorithm TUPP based on software execution graph is proposed. The formula is defined for the utility of the nodes in software execution graph. A table structure PUAList is designed to store the utility and index information of a pattern. In order to mine the top-k high utility pattens as soon as possible, an insertting in advance strategy and an item extension strategy to enhance the threshold are proposed to improve the efficiency of the TUPP algorithm.Thirdly, a high utility behavior pattern mining algorithm called HUPPMiner directly from the software execution traces is put forward. As a result of the loops in software, a continuous repetitive patterns eliminating algorithm CRPE is proposed to simplify the software execution traces. A novel structure called PL-Index-List storing both the location index and utility information of a pattern, and a HUPP-PL Tree storing the promising utility path patterns are put forward. Exploiting the PL-Index-List structure, a novel adjacency path pattern extension strategy is designed. The strategy can be used to find high utility path patterns more efficientlyFinally, the experiments are conducted on the platform of Windows, using Java language. The running time, scalability and the number of patterns are considered to prove the better aspects of the proposed algorithms.
Keywords/Search Tags:software execution trace, software execution graph, behavior pattern, path pattern, pruning strategy
PDF Full Text Request
Related items