Source code change analysis with deep learning based programming model
作者:Babita Pathik, Meena Sharma
摘要
Analyzing the change in source code is a very crucial activity for object-oriented parallel programming software. This paper suggested an Impact analysis method with Attention BiLSTM (IABLSTM) for detecting the changes and their affected part in the object-oriented software system. Classical approaches based on control flow graph, program dependence analysis, latent dirichlet allocation, and data mining have been used for change impact analysis. A Path2Vec approach is presented in the paper, combining a deep learning technique with word embedding to analyze and identify the change. The paper considers two versions of a python program for experiment and generates the abstract syntax tree (AST). Then extract the path to produce a token sequence. Next, convert the token sequence into unique vectors by applying a word embedding layer. The BiLSTM network encodes the sequence into a vector representation. After that, compare the embedded output with the use of cosine distance metrics. We trained the neural network model with the embedded outcome. Then decode the resultant token sequence into a path of AST. Finally, convert the AST path back to code using the un-parsing technique. To strengthen the parallel programming based proposed model, we combined the attention mechanism to emphasize and detect the differences in the code. The model is detecting the change of code efficiently. The experimental results show that our proposed model's change detection accuracy increases significantly compared with other conventional models for change impact analysis. The proposed method can also be applied for impact analysis on object-oriented based parallel programming. The empirical evaluation shows that the model outperforms change detection with approximately 85% validation accuracy.
论文关键词:Change impact analysis, Abstract syntax tree, Path2Vec, Deep learning, Word embedding, Distance metrics, Attention, Un-parsing
论文评审过程:
论文官网地址:https://doi.org/10.1007/s10515-021-00305-x