奈良先端科学技術大学院大学 > 情報科学研究科 > ソフトウェア工学講座 > 研究テーマ

ソフトウェアレビュー(インスペクション) > 計測・測定

差分情報を用いたコードレビューコスト見積り

概要

レビュアが開発者のソースコードをレビューするために必要な労力や時間(すなわちコードレビューコスト)は,レビュアが実際にレビューを開始してみなければ分からない.そこで本研究では,ソースコードの差分情報から計測・測定できる値を元に,コードレビューコストを見積る手法を提案する.

差分情報とコードレビュー



アプローチ

差分情報に関連する箇所から,様々なソースコードメトリクスを計測し,それらに対して被験者実験の結果を考慮した重み付けを行うことにより,コードレビューコスト見積りモデルを構築する.本研究では主に以下のソースコードメトリクスを利用する.

  • 変更量 (コード行数,トークン数 他)
  • 複雑度 (制御構造の複雑度,式の複雑度,データ構造の複雑度 他)
  • 影響範囲 (変更箇所の分散範囲,依存関係,継承関係 他)


研究の応用例

例えば,ソースコードレビューシステム Rietveld* にレビューコスト自動見積り機能を実装すると以下のようになる.


Rietveldにレビューコストを実装


これにより,レビュー指摘の難解度を一目で確認することが可能となり,以下の様な様々な目的に利用することができると考えている.

  • レビューを誰に依頼するかの基準となる(新人に依頼するか,ベテランに依頼するか)
  • レビューコストが高すぎた場合は,その変更内容を見直す基準となる
  • どの変更パッチから手を付けるか,レビューの優先順位を決める指標となる


Rietveldとは,Google社で利用されているソースコードレビューシステム「Mondrian」のオープンソース版である.ソースコードのリポジトリを指定して変更パッチを投稿すると,変更前後のソースコードの差分をブラウザ上で表示してくれる.(rietveld - Google CodeRecent Issues - Code Review



発表文献

只今準備中



Copyright (c) 2007 Software Engineering Laboratory, NARA INSTITUTE of SCIENCE and TECHNOLOGY. All Rights Reserved.