Font Size: a A A

Research On Software Evolution Process Based On Dynamic Topic Model

Posted on:2019-07-17Degree:MasterType:Thesis
Country:ChinaCandidate:Z Y YouFull Text:PDF
GTID:2438330545456862Subject:Software engineering
Abstract/Summary:PDF Full Text Request
Software evolution is a process in which software systems adjust and change to meet development requirements,and the evolution process occurs throughout the whole software lifecycle.The change of software requirement,the use of algorithm,the change of operation environment,the enhancement or deletion of function will cause the change of software system,these changes need the strong evolution characteristic of software system,and the description and understanding of software evolution is becoming more and more difficult and complicated.This makes the analysis of software evolution is of great significance.The research on software evolution in the software source code layer through a series of preprocessing of source code and using the topic model algorithm to extract the hidden topic of the code and analyze it,get the change information of the software subject evolving with the version.The method of software evolution based on LDA currently used at the code level does not take into account the time attribute of the software version.Each version of the code is evolving over time,and the LDA itself is a static topic model,which does not contain time attributes,so it is flawed to analyze the software evolution without considering the time factor.Based on the characteristics of software code,in this thesis,the Software Evolution analysis method based on dynamic topic model is proposed,and the software evolution is analyzed by using dynamic topic model with time attribute,the dynamic topic model is used to deal with the unnatural language,and it is applied to the subject extraction of software source code,and the application of the cross domain is realized.At the same time,the dynamic topic model has been improved for longer running.In this thesis,the source code of each version of the software is preprocessed,the software source codes corpus is constructed,then the dynamic topic model is improved,the dynamic topic model is established by the variational EM algorithm,and the improved dynamic topic model is compared with the LDA topic model and the dynamic topic model without improvement.Verify the effectiveness of the improved dynamic topic model in software source code analysis,at the same time,the improved dynamic topic model is compared with the original model in running time to verify the improvement effect,finally,the topic evolution of each version of software is analyzed and compared with the software description and the development document,the feasibility of this method is validated.We evaluate the validity of the evolutionary analysis method by PostgreSQL the source code of multiple versions of the database and the JHotdraw drawing framework as reference objects.This thesis uses the 46 versions of PostgreSQL and the 12 versions of JHotdraw's source code for analysis,through the experimental analysis,this article uses the dynamic topic model software Evolution analysis method,in the topic clustering accuracy is better than the LDA topic model,at the same time,The dynamic subject model improved in running time is better than the original dynamic topic model,in the analysis of software evolution,the results of the experiment are in agreement with the software description and the development document,which shows that the software evolution process can be effectively analyzed and described.
Keywords/Search Tags:Topic Mining, Software evolution, Dynamic topic model, Code corpus, Programming language
PDF Full Text Request
Related items