kirancodes.me
To Proof Maintenance & Beyond!

How to formulate specific how-to questions in software development?

Mingwei Liu, Xin Peng, Andrian Marcus, Christoph Treude, Jiazhan Xie, Huanjun Xu, Yanjun Yang

Abstract

Developers often ask how-to questions using search engines, technical Q&A communities, and interactive Q&A systems to seek help for specific programming tasks. However, they often do not formulate the questions in a specific way, making it hard for the systems to return the best answers. We propose an approach (TaskKG4Q) that interactively helps developers formulate a programming related how-to question. TaskKG4Q is using a programming task knowledge graph (task KG in short) mined from Stack Overflow questions, which provides a hierarchical conceptual structure for tasks in terms of [actions], [objects], and [constraints]. An empirical evaluation of the intrinsic quality of the task KG revealed that 75.0% of the annotated questions in the task KG are correct. The comparison between TaskKG4Q and two baselines revealed that TaskKG4Q can help developers formulate more specific how-to questions. More so, an empirical study with novice programmers revealed that they write more effective questions for finding answers to their programming tasks on Stack Overflow.

BibTeX
@inproceedings{Liu-al:FSE22,
  author    = {Mingwei Liu and
               Xin Peng and
               Andrian Marcus and
               Christoph Treude and
               Jiazhan Xie and
               Huanjun Xu and
               Yanjun Yang},
  title     = {How to formulate specific how-to questions in software development?},
  booktitle = {{ESEC/SIGSOFT} {FSE}},
  pages     = {306--318},
  publisher = {{ACM}},
  year      = {2022},
}

Related papers