How Do Developers Discuss Rationale?

被引:0
|
作者
Alkadhi, Rana [1 ]
Nonnenmacher, Manuel [1 ]
Guzman, Emitza [2 ]
Bruegge, Bernd [1 ]
机构
[1] Tech Univ Munich, Dept Informat, Munich, Germany
[2] Univ Zurich, Dept Informat, Zurich, Switzerland
关键词
D O I
暂无
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Developers make various decisions during software development. The rationale behind these decisions is of great importance during software evolution of long living software systems. However, current practices for documenting rationale often fall short and rationale remains hidden in the heads of developers or embedded in development artifacts. Further challenges are faced for capturing rationale in OSS projects; in which developers are geographically distributed and rely mostly on written communication channels to support and coordinate their activities. In this paper, we present an empirical study to understand how OSS developers discuss rationale in IRC channels and explore the possibility of automatic extraction of rationale elements by analyzing IRC messages of development teams. To achieve this, we manually analyzed 7,500 messages of three large OSS projects and identified all fine-grained elements of rationale. We evaluated various machine learning algorithms for automatically detecting and classifying rationale in IRC messages. Our results show that 1) rationale is discussed on average in 25% of IRC messages, 2) code committers contributed on average 54% of the discussed rationale, and 3) machine learning algorithms can detect rationale with 0.76 precision and 0.79 recall, and classify messages into finer-grained rationale elements with an average of 0.45 precision and 0.43 recall.
引用
收藏
页码:357 / 367
页数:11
相关论文
共 50 条
  • [1] What Design Topics do Developers Discuss?
    Viviani, Giovanni
    Janik-Jones, Calahan
    Famelis, Michalis
    Xia, Xin
    Murphy, Gail C.
    2018 IEEE/ACM 26TH INTERNATIONAL CONFERENCE ON PROGRAM COMPREHENSION (ICPC 2018), 2018, : 328 - 331
  • [2] What Do Developers Discuss about Biometric APIs?
    Jin, Zhe
    Chee, Kong Yik
    Xia, Xin
    2019 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE AND EVOLUTION (ICSME 2019), 2019, : 348 - 352
  • [3] What Do Developers Discuss about Code Comments?
    Rani, Pooja
    Birrer, Mathias
    Panichella, Sebastiano
    Ghafari, Mohammad
    Nierstrasz, Oscar
    IEEE 21ST INTERNATIONAL WORKING CONFERENCE ON SOURCE CODE ANALYSIS AND MANIPULATION (SCAM 2021), 2021, : 153 - 164
  • [4] How Developers Discuss Architecture Smells? An Exploratory Study on Stack Overflow
    Tian, Fangchao
    Liang, Peng
    Babar, Muhammad Ali
    2019 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE ARCHITECTURE (ICSA), 2019, : 91 - 100
  • [5] How (Much) Do Developers Test?
    Beller, Moritz
    Gousios, Georgios
    Zaidman, Andy
    2015 IEEE/ACM 37TH IEEE INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, VOL 2, 2015, : 559 - 562
  • [6] How do providers discuss brain health?
    Davis, C. H.
    Iyer, S.
    Walker, N.
    Shastri, V. G.
    Gould, C.
    JOURNAL OF THE AMERICAN GERIATRICS SOCIETY, 2024, 72 : S242 - S242
  • [7] How do I discuss faith at work?
    Rimmer, Abi
    BMJ-BRITISH MEDICAL JOURNAL, 2024, 384
  • [8] HOW DO DOCTORS DISCUSS DO-NOT-RESUSCITATE ORDERS
    MILLER, A
    LO, B
    WESTERN JOURNAL OF MEDICINE, 1985, 143 (02): : 256 - 258
  • [9] How Do Professional Developers Comprehend Software?
    Roehm, Tobias
    Tiarks, Rebecca
    Koschke, Rainer
    Maalej, Walid
    2012 34TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE), 2012, : 255 - 265
  • [10] How do Developers Test Android Applications?
    Linares-Vasquez, Mario
    Bernal-Cardenas, Carlos
    Moran, Kevin
    Poshyvanyk, Denys
    2017 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE AND EVOLUTION (ICSME), 2017, : 613 - 622