Identifying Textual Features of High-Quality Questions: An Empirical Study on Stack Overflow.
Abstract
Background: Stack Overflow (SO) is a programming-specific Q&A website that serves as a valuable repository of software engineering knowledge. For SO members, formulating a good question is the first step towards eliciting satisfactory responses. Aims: To guide SO members on how to make a good question, we conduct an empirical study using the publicly available Stack Overflow Data Dump for the period of 2008-2016. Method: We first choose 25 features along 5 dimensions to represent the textual characteristics that we are interested in. Making use of the Boruta algorithm, we then capture all features that are either strongly or weakly relevant to the question quality. Results: The results show that the number of tags and code snippets are the most discriminative features, whereas there is only a weak correlation between the question quality and the sentiment-related factors. Based on the empirical evidence, we provide useful and usable suggestions to SO members on how to optimize their questions. Conclusions: We consider that our findings will provide SO members with a better understanding of the patterns behind high-quality questions, this is to support effective and efficient utilization of Q&A websites as the ultimate goal. Index Terms-Stack Overflow, Q&A website, textual feature, Boruta algorithm, empirical software engineering II. R ESEARCH D ESIGN We begin by constructing the two comparison groups (i.e., High-Quality and Low-Quality questions) according to the Voting Score of the user posts. After that, 25 features along 5 dimensions are chosen in aspects ranging from text length to sentiment strength. Making use of the Boruta algorithm, we capture all features that are in some circumstances relevant to the question quality. I. I NTRODUCTION Stack Overflow (SO) is one of the most popular question and answer (Q&A) websites, an important community for novices and experienced software developers to share their knowledge and advance their careers. Recently, an increasing amount of software engineering research has been dedicated to the study of SO data. Barua et al. [1] applied Latent Dirichlet Allocation (LDA) to discover the main discussion topics and trends from the