| Literature DB >> 28278276 |
Bing Zhang1,2, Guoyan Huang1,2, Yuqian Wang1,2, Haitao He1,2, Jiadong Ren1,2.
Abstract
As the quality of crucial entities can directly affect that of software, their identification and protection become an important premise for effective software development, management, maintenance and testing, which thus contribute to improving the software quality and its attack-defending ability. Most analysis and evaluation on important entities like codes-based static structure analysis are on the destruction of the actual software running. In this paper, from the perspective of software execution process, we proposed an approach to mine dynamic noteworthy functions (DNFM)in software execution sequences. First, according to software decompiling and tracking stack changes, the execution traces composed of a series of function addresses were acquired. Then these traces were modeled as execution sequences and then simplified so as to get simplified sequences (SFS), followed by the extraction of patterns through pattern extraction (PE) algorithm from SFS. After that, evaluating indicators inner-importance and inter-importance were designed to measure the noteworthiness of functions in DNFM algorithm. Finally, these functions were sorted by their noteworthiness. Comparison and contrast were conducted on the experiment results from two traditional complex network-based node mining methods, namely PageRank and DegreeRank. The results show that the DNFM method can mine noteworthy functions in software effectively and precisely.Entities:
Mesh:
Year: 2017 PMID: 28278276 PMCID: PMC5344384 DOI: 10.1371/journal.pone.0173244
Source DB: PubMed Journal: PLoS One ISSN: 1932-6203 Impact factor: 3.240
Fig 1Modeling original Traces as function call sequence and network.
Fig 2Framework of DNFM approach.
Fig 3An example about simplifying S to SFS.
LOS, LSS and TC in each trial for different software.
| Nginx | Deadbeef | Cflow | |
|---|---|---|---|
| LOS | 6450 | 13048 | 7276 |
| LSS | 2680 | 5110 | 3914 |
| TC | 106.336s | 461.275s | 224.787s |
Fig 4Software Complex Network.
The parameters of software complex networks.
| Nginx | Deadbeef | Cflow | |
|---|---|---|---|
| Nodes | 244 | 162 | 100 |
| Edges | 517 | 436 | 144 |
Results of three algorithms performed on Nginx.
| Fname | Noteworthiness | DNFM | PageRank | DegreeRank |
|---|---|---|---|---|
| 0.185821 | No.1 | No.1 | No.9 | |
| 0.086567 | No.2 | No.2 | No.2 | |
| 0.081343 | No.3 | No.5 | No.3 | |
| 0.045522 | No.4 | No.10 | - | |
| 0.032836 | No.5 | - | No.7 | |
| 0.029104 | No.6 | No.8 | No.10 | |
| 0.026119 | No.7 | - | - | |
| 0.022388 | No.8 | - | - | |
| 0.021642 | No.9 | - | - | |
| 0.020896 | No.10 | - | No.8 | |
| 0.020149 | No.11 | - | - | |
| 0.017164 | No.12 | No.7 | - | |
| 0.013437 | No.13 | - | No.11 | |
| 0.013433 | No.14 | No.13 | - | |
| 0.010448 | No.15 | No.9 | No.14 | |
| Node similarity (Γ) | 8/15 | 8/15 | ||
| Shared-Node Rate (Ψ) | 10/15 | |||
Results of three algorithms performed on Deadbeef.
| Fname | Noteworthiness | DNFM | PageRank | DegreeRank |
|---|---|---|---|---|
| 0.168689 | No.1 | No.2 | No.6 | |
| 0.167906 | No.2 | No.1 | No.10 | |
| 0.081409 | No.3 | No.3 | No.4 | |
| 0.081409 | No.4 | No.4 | No.3 | |
| 0.060274 | No.5 | No.5 | No.12 | |
| 0.060274 | No.6 | No.6 | No.8 | |
| 0.045010 | No.7 | No.9 | No.15 | |
| 0.025832 | No.8 | - | No.7 | |
| 0.015656 | No.9 | - | - | |
| 0.015656 | No.10 | - | - | |
| 0.014873 | No.11 | - | - | |
| 0.013699 | No.12 | No.12 | - | |
| 0.009393 | No.13 | - | No.13 | |
| 0.009393 | No.14 | No.10 | - | |
| 0.009002 | No.15 | - | - | |
| Node similarity (Γ) | 9/15 | 9/15 | ||
| Shared-Node Rate (Ψ) | 13/15 | |||
Results of three algorithms performed on Cflow.
| Fname | Noteworthiness | DNFM | PageRank | DegreeRank |
|---|---|---|---|---|
| 0.139499 | No.1 | No.4 | No.2 | |
| 0.094022 | No.2 | - | - | |
| 0.094021 | No.3 | - | No.9 | |
| 0.094021 | No.4 | - | - | |
| 0.072049 | No.5 | No.10 | - | |
| 0.065406 | No.6 | No.11 | - | |
| 0.063362 | No.7 | No.12 | No.8 | |
| 0.043945 | No.8 | - | No.15 | |
| 0.037813 | No.9 | - | - | |
| 0.023505 | No.10 | - | - | |
| 0.021972 | No.11 | - | - | |
| 0.021972 | No.12 | - | - | |
| 0.017374 | No.13 | - | - | |
| 0.014308 | No.14 | - | No.12 | |
| 0.014308 | No.15 | No.14 | - | |
| Node similarity (Γ) | 5/15 | 5/15 | ||
| Shared-Node Rate (Ψ) | 9/15 | |||