仕様変更の偏り

平田です。

弊社では最長で8年くらいメンテしているシステムがあります。このようなシステムでは、特定箇所に変更が集中するのだろうな、と思い調べてみました。

手っ取り早くSubversionでのファイルごとの変更回数をグラフにしたところ、想像以上に特定箇所に変更が集中していました。縦軸は変更回数、横軸はファイルです(ロングテールのグラフと同じ)。

メンテ8年

メンテ5年

 

リポジトリへのコミット回数をカウントしているだけなので厳密なデータとは言えませんが、興味深いです。

ちなみに上のグラフは、以下の出力結果をExcelに貼り付けてズギャンとやったものです。

svn log REPOSITORY_URL_HERE |\
  grep "   M" |\
    egrep -o "src.+\.java" |\
      sort | uniq -c | sort -r > changes.tsv

予めホットスポットが分かっていれば、コストのかけかた(テストコードを書いたり、とか)に工夫できるんじゃないかと思い調べてみましたが、ここまで極端とは思いませんでした。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です