ISPY: Automatic Issue-Solution Pair Extraction from Community Live Chats

by   Lin Shi, et al.

Collaborative live chats are gaining popularity as a development communication tool. In community live chatting, developers are likely to post issues they encountered (e.g., setup issues and compile issues), and other developers respond with possible solutions. Therefore, community live chats contain rich sets of information for reported issues and their corresponding solutions, which can be quite useful for knowledge sharing and future reuse if extracted and restored in time. However, it remains challenging to accurately mine such knowledge due to the noisy nature of interleaved dialogs in live chat data. In this paper, we first formulate the problem of issue-solution pair extraction from developer live chat data, and propose an automated approach, named ISPY, based on natural language processing and deep learning techniques with customized enhancements, to address the problem. Specifically, ISPY automates three tasks: 1) Disentangle live chat logs, employing a feedforward neural network to disentangle a conversation history into separate dialogs automatically; 2) Detect dialogs discussing issues, using a novel convolutional neural network (CNN), which consists of a BERT-based utterance embedding layer, a context-aware dialog embedding layer, and an output layer; 3) Extract appropriate utterances and combine them as corresponding solutions, based on the same CNN structure but with different feeding inputs. To evaluate ISPY, we compare it with six baselines, utilizing a dataset with 750 dialogs including 171 issue-solution pairs and evaluate ISPY from eight open source communities. The results show that, for issue-detection, our approach achieves the F1 of 76 for solution-extraction and outperforms the baselines by 20


BugListener: Identifying and Synthesizing Bug Reports from Collaborative Live Chats

In community-based software development, developers frequently rely on l...

A First Look at Developers' Live Chat on Gitter

Modern communication platforms such as Gitter and Slack play an increasi...

An Exploratory Study of Live-Streamed Programming

In live-streamed programming, developers broadcast their development wor...

Short Text Conversation Based on Deep Neural Network and Analysis on Evaluation Measures

With the development of Natural Language Processing, Automatic question-...

A Graph-Based Context-Aware Model to Understand Online Conversations

Online forums that allow for participatory engagement between users have...

Identifying Emergent Leadership in OSS Projects Based on Communication Styles

In open source software (OSS) communities, existing leadership indicator...

Automated Assignment and Classification of Software Issues

Software issues contain units of work to fix, improve or create new thre...

Please sign up or login with your details

Forgot password? Click here to reset