「Limy」というEclipseプラグインをご存じでしょうか。これは、コード支援機能やプロジェクトの品質管理機能、プロパティエディタやVelocityテンプレートエディタなどが含まれている便利なEclipseプラグイン集です。
今回は、Limy Eclipseプラグインに統合されているソフトウェアの品質レポートを生成する「QALab」の機能を利用したソフトウェア品質管理やLimy EclipseプラグインのQALab実行機能について紹介します。
■さまざまな品質管理機能を一括実行/総観できる「QALab」
Javaで品質管理を行うツールとして、さまざまなツールが提供されていますが、それらを利用するには1つずつセットアップする必要があり面倒です。
ObjectLABにより開発されるQALabを利用すると、さまざまな品質管理ツールを一括して実行でき、また、開発中のソフトウェアのある瞬間の品質だけでなく、時系列を追った遷移も見ることができるようになります。
■QALabはLimy Eclipseプラグインでもっと簡単になる
QALabはAntのタスクやMavenのプラグインなどから利用できますが、Limy EclipseプラグインのQALab実行機能を利用すると、ボタン1つでQALabを実行でき、ソースコードの品質を管理するうえでのさまざまな統計情報を出力できます。
QALab自身は、下記の7つのツールの実行結果を統合してレポーティングできます(アルファベット順、下記リストはインデックスになっています)。
そのほか、TODOコメントの数やステップ数の遷移などの統計も取ることができます。
上記の個々のツールをセットアップすれば、それぞれのレポートを取得できますが、Limy EclipseプラグインのQALab実行機能を利用すると、面倒なセットアップなしにEclipse上からボタン1つで上記のツールのレポートを取得できます。それでは、1つ1つを見ていきましょう。
コーディング規約違反をチェックします。開発者によるコーディングスタイルのばらつきを防ぎ、統一感の取れたコードにすることができます。CheckStyleの詳細については下記記事をご参照ください。
ユニットテストを実行した際のカバレッジを算出します。テストケースによるテストの網羅性の確認と、テストケースにより実行されていないコードを確認できます。
バグや不具合が混入している可能性があるコードを検出します。ストリームのクローズ漏れやマルチスレッドによる実行の不具合の検出やパフォーマンスが低下する可能性があるコードなど、検出できるバグは多岐に渡ります。
FindBugsはコンパイル済みのクラスファイルに対して検証するため、コンパイラの最適化により除去されるデッドコードやコーディング規約違反などは検出できません。FindBugsの詳細については下記記事をご参照ください。
クラス数、メソッド数、Javadoc数、コードの複雑さ(CCN:Cyclic Complexity Number)、コメントにより説明されていないコードのステップ数(NCSS::Non-Commenting Source Statements)などのソースコードのメトリクス(統計情報)を取得できます。
直接的なバグやコーディング規約違反などは指摘してくれませんが、複雑なメソッドをリファクタリングして分かりやすいコードに分割したり、コメント不足のコードを発見し、コメントを充実させるなど、保守しやすいコードにするのに役立ちます。
次ページでは、引き続き残りの3ツールを紹介し、Limy Eclipseプラグインを使い始めます。
Copyright © ITmedia, Inc. All Rights Reserved.