Font Size: a A A

Software Testing Complex Network Theory

Posted on:2014-08-14Degree:MasterType:Thesis
Country:ChinaCandidate:X L LiuFull Text:PDF
GTID:2268330425487649Subject:Computer application technology
Abstract/Summary:PDF Full Text Request
With the developing of software industry, complexity of software, reliability of software and quality control problems have become more prominent. The software testing is an important method to ensure the quality of software. Software testing can accurately and effectively find errors in the software. However, software testing which is currently working in the software development cycle is usually more than30%of the total workload, and sometimes under the high reliability requirements, the test cost even more than50%. Therefore, improving the effectiveness of software testing and test efficiency, reducing software development costs is an important task and hotspot in the research field of software engineering.Complex network is a new subject of system science during the20th century. The large numbers of studies have shown that the internal structure of a large software system also shares complex network characteristics such as small-world effect and scale-free. So, facing with software complexity caused by the issues of "software crisis", in order to improve software reliability and software quality, the analysis of software system characteristics and the research on efficient software testing methods based on the theory of complex network has brought a new perspective. So, based on the inherent robustness of complex networks (i.e., presence of small amounts of an important network of key nodes), this paper consists of following parts:constructs a complex network model of software systems; combines with the network characteristic parameters and test code coverage, this paper first propose an identification method of key node in software systems based on gray correlation analysis and principal component analysis algorithms. Then, design a generation method of software testing path based on the identification method. The use of the method for software testing of the system can reduce the number of test cases, improve test efficiency.Firstly, this paper describes the severity of the "software crisis", reviews the research results in the world, and points out the significance and practical value of the study on software testing. Basic theory of complex networks were systematically introduced, including complex network research history, the normally used statistical characteristics of complex networks. Subsequently it elaborates and describes the five main steps in the process of software testing; Secondly, it constructs the complex network model of software systems, briefly introduces the technical principles of gray correlation analysis and principal component analysis; considering the different influence of software system’s parameters, such as degree, clustering coefficient, betweenness and closeness, it calculates the weight of each parameter according to principal component analysis and gets gray correlation degree of each node using gray relational analysis method. Then we propose a more comprehensive algorithm of key node identification, and generate critical path and test cases based on the identified key nodes to ensure software reliability.Finally, after the conversion of network information and calculation of characteristics of software network, it was confirmed that the network topology of software systems has the small-world and scale-free features, and the proposed critical path-based test case generation method can effectively improve software testing efficiency.
Keywords/Search Tags:software network, directed complex networks, key nodes, software testing
PDF Full Text Request
Related items