Font Size: a A A

Research On Active Learning Method Of Software Model

Posted on:2024-08-03Degree:MasterType:Thesis
Country:ChinaCandidate:J XiaFull Text:PDF
GTID:2568307055477914Subject:Electronic Information (Field: Software Engineering) (Professional Degree)
Abstract/Summary:PDF Full Text Request
In the process of software development,software behavior model plays a vital role.The software can be analyzed through the software behavior model to find out whether there are errors in the software.The maintenance and secondary development of software systems are usually inseparable from software behavior models,and the initial software behavior models often diverge with software development and software implementation.Black-box software systems with unknown internal work or unspecified third-party components cannot use traditional static analysis methods to obtain behavior models.Automata active learning provides solutions to the above problems.By abstracting the input and output of the software system,the software behavior model is generated automatically by querying.However,when using automata active learning technology to learn the actual system,the algorithm needs to achieve interaction with the target system.The interaction process is very time-consuming,and the algorithm needs to reset the system.The system needs to change its own state based on input characters and provide corresponding output.Low interaction efficiency is an important reason for the difficulty in obtaining models.Parallel learning is a common method to improve interaction efficiency and obtain behavior models more quickly.It is mainly to do parallel processing on the query part of active learning algorithm.However,the existing parallel learning only considers the number of query sequences in dividing the query set,resulting in some parallel instances having too long idle time and wasting resources.At present,there is no schedulable parallel learning system architecture in parallel learning research,which makes it difficult to flexibly implement parallel learning.Aiming at the problem of low efficiency in acquiring software behavior models,this paper improves the traditional parallel L* sampling algorithm and proposes the greedy based parallel L* Sampling Algorithm.First of all,analyze the member query and equivalent query of the L*sampling algorithm to determine the part that can be processed in parallel.By combining the partitioning process of the query set with greedy algorithms,the method of partitioning the query set based on the number of query sequences is changed.From the perspective of query sequence length,the query set is divided into query subsets with approximately equal total query sequence length,ensuring that the query time between instances is consistent as much as possible.Secondly,a schedulable parallel learning system architecture based on L* sampling algorithm is proposed,which makes the query set flexible and the concept of parallel learning clearer.Finally,experiments were conducted on learning random generated automata and inferring actual software system behavior models based on the architecture proposed in this article.Comparing the greedy based parallel L* Sampling Algorithm with the traditional parallel L* sampling algorithm,the results show that the algorithm in this paper is superior to the traditional parallel L* sampling algorithm,improves the overall efficiency of the inference behavior model to a certain extent,and proves the effectiveness of the greedy based parallel L*Sampling Algorithm.Based on the algorithm and system architecture proposed in this article,a parallel learning system for web application systems has been developed,which is used to infer the behavior model of web application systems,enabling users to further understand the behavior and logic of web application systems,and helping developers improve and maintain the system.
Keywords/Search Tags:Software behavior model, Automata active learning, Sampling algorithm, Greedy algorithm, Parallel learning
PDF Full Text Request
Related items