Automated classification of software change messages by semi-supervised Latent Dirichlet Allocation
Automated classification of software change messages by semi-supervised Latent Dirichlet Allocation
复制标题
DOI:
10.1016/j.infsof.2014.05.017
复制
发表时间:
2015
期刊:
影响因子:
--
通讯作者:
Ying Fu;Meng Yan;Xiaohong Zhang;Ling Xu;Dan Yang;Jeffrey D. Kymer
中科院分区:
文献类型:
--
作者:
Ying Fu;Meng Yan;Xiaohong Zhang;Ling Xu;Dan Yang;Jeffrey D. Kymer
ContextTopic models such as probabilistic Latent Semantic Analysis (pLSA) and Latent Dirichlet Allocation (LDA) have demonstrated success in mining software repository tasks. Understanding software change messages described by the unstructured nature-language text is one of the fundamental challenges in mining these messages in repositories.ObjectiveWe seek to present a novel automatic change message classification method characterized by semi-supervised topic semantic analysis.MethodIn this work, we present a semi-supervised LDA based approach to automatically classify change messages. We use domain knowledge of software changes to make labeled samples which are added to build the semi-supervised LDA model. Next, we verify the cross-project analysis application of our method on three open-source projects. Our method has two advantages over existing software change classification methods: First of all, it mitigates the issue of how to set the appropriate number of latent topics. We do not have to choose the number of latent topics in our method, because it corresponds to the number of class labels. Second, this approach utilizes the information provided by the label samples in the training set.ResultsOur method automatically classified about 85% of the change messages in our experiment and our validation survey showed that 70.56% of the time our automatic classification results were in agreement with developer opinions.ConclusionOur approach automatically classifies most of the change messages which record the cause of the software change and the method is applicable to cross-project analysis of software change messages.