氏 名 ( 本 籍 ) 柏 祐太郎(和歌山県) 学 位 の 種 類 博 士(工学) 学 位 授 与 番 号 甲 第99号 学 位 授 与 日 付 令和2年3月25日 専 攻 システム工学専攻
学 位 論 文 題 目 Release-Aware and Prioritized Bug-Fixing Task Assignment Optimization
学位論文審査委員 (主査)教 授 風間 一洋 (副査)教 授 和田 俊和 准教授 大平 雅雄 学外委員 亀井 靖高
論文内容の要旨
Due to a large number of bug reports, project managers consume much time to read bug reports, prioritize bugs to determine which the bugs should be fixed by the release date, and assign developers to fix the bugs. To mitigate the workload, many bug assignment methods have been proposed with an aim to automate the assignments.
However, Park et al. report that most of the methods tend to concentrate the assignment of bugs to specific developers. The task of concentrating on specific developers, by the traditional methods, would reduce the number of bugs that they can actually fix by the next release date. This is because most projects have releases planned in advance, and the scope of the developers (even wellexperienced) is limited to the number of bugfixes by the release date.
This thesis proposes the ReleaseAware and Prioritized Taskassignment Optimization Framework (RAPTOR), which moderates the bugfixing loads for specific developers in order to increase the number of bugs fixed by the release date.
In Chapter 3, for the first study to build a strategy to prioritize bugs, we interviewed 322 developers from GitHub to identify the bugs that are impactful based on those they encountered in practice. We manually inspect and classify actual bug reports from the responses. As a result, we show that there are a wide variety of high impact bugs. Particularly, developers think security and breakage bugs are highly important for FLOSS developers.
Furthermore, we show that 66% of the high impact bugs have a higher importance in the projects (especially in the projects that strictly handle bugs). This helps us select bugs for the next release when the projects have a myriad of bugs.
Related publication: International conference (Refereed)
Yutaro Kashiwa, Akinori !hara, and Masao Ohira, "What Arc the Perception Gaps between Floss Developers and SE Researchers?" In Proceedings of the 15th International Conference on Open Source Systems, pages 4457. May 2019.
Yutaro Kashiwa. Hayato Yoshiyuki, Yusuke Kukita, and Masao Ohira, "A Pilot Study of Diversity in High Impact Bugs," In Proceedings of 30th International Conference on Software Maintenance and Evolution (ICSME2014), pages 536540, September 2014.
The prediction will play a crucial role in selecting which bugs should be fixed by the release date. Although some studies address building priority prediction models, the accuracy of the prediction is quite low. This is because they use data derived from the complete development process.
Most projects have release cycles, and the data is produced in requirements analysis, design, implementation, test, and debug phases. According to the aims, developers would switch what they focus on, such as either implementing new features or fixing defects. Furthermore, depending on what they focus on, the characteristics of the produced data would vary. Disregarding the characteristics for specific periods makes the quality of datadriven tools lower. Especially, RAPTOR is designed for testing and debugging phase, and we need a priority prediction method specialized in the periods.
Throughout a case study on the Eclipse Platform project, we show that developers' activity varies during the release cycle. Based on these findings, we build release cycleaware models which is the models of which data is derived from appropriate periods. We find that cycleaware models outperform the traditional model which uses whole data during the development.
In Chapter 5, we finally address the main problems that prior work concentrates their assignments on a small number of particular developers. We construct RAPTOR and evaluate it through a case study on Eclipse Platform, GNU compiler collection, and Mozilla Firefox and showed that (1) RAPTOR mitigates the situation where bugfixing tasks are concentrated to a small number of developers; (2) RAPTOR increases the number of high priority bugs that developers can fix by the next release date; (3) RAPTOR can reduce the time to fix bugs, compared with the manual bug triaging method and the existing methods.
Related publication: Academic journal
柏祐太郎,大平雅雄,阿萬裕久,亀井靖高."大規模 OSS 開発における不具合修正時間の短縮化を目的としたバグト リアージ手法" 情報処理学会論文誌. volume 56. number 2, pages 669681, 2015 年 2 月.
Yutaro Kashiwa and Masao Ohira, " ReleaseAware and Prioritized Bugfixing Task assignment Optimization." Transaction of The Institute of Electronics, Information and Communication Engineers, volume El 030. number 02. pp. (to appear), February.
Related publication: International conference (Refereed)
Yutaro Kashiwa, " RAPTOR: ReleaseAware and Prioritized Bugfixing Task assignment Optimization" In Proceedings of the 35th International Conference on Software Maintenance and Evolution. pp. 629633, October 2019.
論文審査の結果の要旨
本論文では,バグ修正作業を適任の開発者に割り当てるバグトリアージの際にリリースサイクルを考慇することで, 特定の開発者への負荷を軽減させると同時に,リリースまでにより多くのバグを修正できるようにする RAPTOR(Release·Aware and Prioritized Taskassignment Optimization fRamework)と呼ぶ手法を提案している. 本論文は,1.GitHubの著名開発者へのアンケートを用いたバグの種類と重要性に関する分析,2.リリースサイクルを 考慮したバグ優先度の予測モデル,3.リリースサイクルを考慮したバグ修正作業の優先度割り当て手法から構成され る.本論文では,近年のオープンソース開発で主流の規則的・周期的なリリースサイクルに注目し,リリースサイク ルの段階を考慮することで従来手法よりも性能を向上できたことが示されていることから,新規性と有効性が充分に 示されており,博士論文に値すると判定した.