プログラミング初学者のバグ修正履歴を用いたデバッグ問題自動生成の事例研究
説明
<p>プログラミング初学者のためのデバッグ支援に関する研究は近年盛んに行われている.しかし,初学者のバグの傾向を捉えたデバッグの 演習問題を提供することによる学習支援は研究されていない.そこで,本研究では,そのような演習問題の生成を目指す.その方法として,実際に開発者が作成したバグ修正前後のソースコードから埋め込まれているバグを機械翻訳技術の応用により学習し,バグを生成する Learning-Mutation という手法に着目した.九州大学のプログラミング初学者らのデータに対して Learning-Mutation を適用し,生成されたバグと実際のバグを比較することで,デバッグ演習問題の作成に繋げられるかを評価した.その結果,トークン数が少ないとき,生成されるバグは実際のバグに類似しており,セミコロン忘れや変数・関数の未宣言が 36%以上を占めていた.一方, トークン数が多くなると実際とは異なるバグを埋め込む可能性が高まることがわかった.また,初学者が作成するバグのうち Learning-Mutation では生成が困難なバグは存在するが,そのバグの分布はビームサーチによってプログラミング初学者のバグの分布に近づけることができ,デバッグの学習支援に繋げられる可能性を示した.</p>
収録刊行物
-
- ソフトウェア工学の基礎ワークショップ論文集
-
ソフトウェア工学の基礎ワークショップ論文集 28 (0), 13-22, 2021-11-11
一般社団法人 日本ソフトウェア科学会 ソフトウェア工学の基礎研究会
- Tweet
詳細情報 詳細情報について
-
- CRID
- 1390010543976936320
-
- ISSN
- 2436634X
-
- 本文言語コード
- ja
-
- データソース種別
-
- JaLC
- KAKEN
-
- 抄録ライセンスフラグ
- 使用可