2013年06月03日

データをわかりやすい形に

こんにちは。毎週末美味しいランチを探している店長です。

最近、自宅でのプログラムに静的コード解析ツールの「SourceMonitor」を利用しております。
今回はそのSourceMonitorから出力されるデータに関してがテーマです。

SourceMonitorを使うと以下の様なXMLが出力されます。
横にファイル毎のデータがいっぱい出力されています。
20130603_0.png
(上記のファイル名、関数名は便宜上のものです。実際は命名規則に従います)

さて、私は複雑度の変化に注目したいのですが、このデータ見やすいでしょうか・・・?
必要な情報は即座にわかるでしょうか・・・?
私は難しいと思いました・・・ふらふら


そこで、欲しいデータだけを出力してみようとおもいましたexclamation


まず、全ファイルの複雑度よりも、
・編集したファイルの複雑度と前回からの変化量
・新しく追加されたファイルの複雑度
だけに絞りたいと思います。

Pythonでこんなツールを作ってみました。
・SourceMonitorから出力されるXMLファイルを2つ比較する。
・その中で複雑度が変化したファイルと新しく追加されたファイルだけ出力する。

PythonファイルはDiffComplexity.pyとしておきます。
実行画面は以下のようになりました。
20130603_1.jpg

上記からわかることは、
・test01.csの複雑度が5から6に上がって1増えてます。
・プロジェクト全体の複雑度の変化量は1です。
・新しいファイルtest02.csの複雑度は6です。

これで私が欲しかったデータが見やすくなりましたるんるん
あとはJenkinsに解析とログの保存を登録しておけば、
SourceMonitorをより有効に使うことができそうです。

このように既存のデータをそのまま使うのではなく、
必要なデータを抽出したり、より良い形に整形することも大事なプログラムです。

品質管理、効率アップのためのツール、自動テストなど、
色々な部分でできることはあるはずなので、今後も機会をみつけて改善していきます手(グー)


posted by 管理人 at 16:36 | いいモノづくり道