ソースコード中の識別子情報にもとづくコミット分類の提案と評価
卒業論文, 大阪大学
特別研究報告
概要: ソフトウェアの開発において、これまでに記述されたソースコードの内容や、それにより実現されたソフトウェアの挙動について整理や検討が必要な場面がある。
このような整理や検討は、バージョン管理システムやタスク管理システムを利用し、
各コミットにおけるソースコードへの変更内容を、タスクという開発作業の単位で把握することで実現できる。
このとき、コミットをタスク単位で分類するためには、タスクとコミットの対応関係の特定が必要となる。
この特定を行うための手段として、コミットコメントやコミットを行った開発者の名前を利用することが考えられるが、
コミットコメントの内容不備などから、対応関係の特定が困難な場合がある。
そこで、本論文では,各コミットにおけるソースコードの差分に出現する識別子情報を利用してタスク単位でのコミット分類を行い、
タスク単位での変更内容の把握を支援する手法を提案する。
識別子情報を用いることで,抽象構文木などの構文情報からは得ることのできない,そのソースコードが書かれた目的などの情報を得ることができる.
それぞれのソースコードが書かれた目的は実装内容と強く関連するため,識別子情報を用いてコミットの分類を行うことで,
タスク単位でのコミット分類を実現することができると期待できる.
また、提案手法の評価として、いくつかのオープンソース・ソフトウェアに対して、提案手法によるコミットの分類を行い、
その結果,コミットコメントや開発者名を用いた場合は適切にコミットの分類ができない事例に対し,適切にコミットの分類を行えたことを確認した.
タグ: Version, Control, System, Task, Tracking, System, Commit, Clustering
@mastersthesis{山内健二2014,
author = {山内 健二},
title = {ソースコード中の識別子情報にもとづくコミット分類の提案と評価},
school = {大阪大学},
type = {Bachelor's Thesis},
year = {2014},
month = {feb}
}