佐飛, "ソースコード修正漏れ防止を目的とした同時変更箇所検索ツールの出力結果の並べ替え," , 2015年2月.
ID 388
分類 学位論文
タグ Software Development Logical Coupling Code Search Academic-industrial Collaboration
表題 (title) ソースコード修正漏れ防止を目的とした同時変更箇所検索ツールの出力結果の並べ替え
表題 (英文) Reordering Results of Keyword-Based Code Search Tools to Prevent Developers from Overlooking Code Fragments to Be Modified.
著者名 (author) 佐飛 祐介
英文著者名 (author) Yusuke Sabi
キー (key) Yusuke Sabi
刊行月 (month) 2
出版年 (year) 2015
刊行形式 (howpublished)
URL
付加情報 (note) 特別研究報告
注釈 (annote)
内容梗概 (abstract) ソフトウェア開発において,あるコード片を修正する際に他のコード片にも同様の修正を行うことがある.
そのためには開発者が同時に修正を加えるべきコード片を把握している必要がある.
もし修正を加えるべきコード片を把握していなければソースコードの修正漏れが発生する恐れがある.
そのような修正漏れを少なくするため,同時変更箇所検索ツールがよく用いられる.
現在,我々の研究グループと共同研究を行っているある企業では独自に同時変更箇所検索ツールを開発している.
このツールは文字列を入力すると入力された文字列と一致する箇所をソースコード内から見つけ,その箇所を出力する.
このツールから出力された文字列のある箇所全てに対して,開発者は目視で修正の有無の判断を行っている.
しかし,ツールの出力の順番がファイルのパスの辞書順となっている.
そのため,ツールの出力の箇所が膨大になると開発者の集中力の低下により修正漏れが発生してしまうという問題が起こっている.
そこで本研究では,修正が必要となる可能性が高い順にツールの出力の順番を並べ替える手法を提案する.
提案手法ではロジカルカップリングを用いて並べ替えを行う.
ロジカルカップリングとはプログラム要素(ファイル,メソッド等) 間に存在する依存関係を指す.
ロジカルカップリングの関係にあるプログラム要素は同時に修正が必要となる可能性が高い.
ロジカルカップリングを用いると修正が必要となる可能性が高い順にツールの出力の順番を並べ替えることができる.
本研究では,ある企業が開発している3 つのシステムに対して実験を行い,並べ替えを行わない場合との比較を行った.
実験の結果,提案手法の並べ替えによって修正されたファイルを上位に表示できた件数がそうでない件数より多いことを確認した.
特にツールの出力が50 箇所以上の場合には,提案手法を用いた並べ替えがより有効に働くことを確認した.


論文電子ファイル thesis.pdf (application/pdf) [一般閲覧可]
BiBTeXエントリ
@misc{id388,
         title = {ソースコード修正漏れ防止を目的とした同時変更箇所検索ツールの出力結果の並べ替え},
        author = {佐飛 祐介},
         month = {2},
          year = {2015},
          note = {特別研究報告},
}