ユカイ、ツーカイ、カイハツ環境!
連載インデックスへ
ユカイ、ツーカイ、カイハツ環境!(8)

JUnit/FindBugs/PMDなどを総観できるQALab/Limy


岡本 隆史
2009/9/29


便利なEclipseプラグイン集「Limy」とは

 「Limy」というEclipseプラグインをご存じでしょうか。これは、コード支援機能やプロジェクトの品質管理機能、プロパティエディタやVelocityテンプレートエディタなどが含まれている便利なEclipseプラグイン集です。

今回の主な内容

便利なEclipseプラグイン集「Limy」とは
QALabで扱う7つの品質管理ツール
Limyを使って品質レポートを作成してみよう
QALabのレポート画面を見てみよう
思わぬコーディングの悪癖も発見!?

 今回は、Limy Eclipseプラグインに統合されているソフトウェアの品質レポートを生成する「QALab」の機能を利用したソフトウェア品質管理やLimy EclipseプラグインのQALab実行機能について紹介します。

さまざまな品質管理機能を一括実行/総観できる「QALab」

 Javaで品質管理を行うツールとして、さまざまなツールが提供されていますが、それらを利用するには1つずつセットアップする必要があり面倒です。

 ObjectLABにより開発されるQALabを利用すると、さまざまな品質管理ツールを一括して実行でき、また、開発中のソフトウェアのある瞬間の品質だけでなく、時系列を追った遷移も見ることができるようになります。

QALabはLimy Eclipseプラグインでもっと簡単になる

 QALabはAntのタスクやMavenのプラグインなどから利用できますが、Limy EclipseプラグインのQALab実行機能を利用すると、ボタン1つでQALabを実行でき、ソースコードの品質を管理するうえでのさまざまな統計情報を出力できます。

図1 Limy Eclipseプラグインを利用したQALabのレポート画面
図1 Limy Eclipseプラグインを利用したQALabのレポート画面

QALabで扱う7つの品質管理ツール

 QALab自身は、下記の7つのツールの実行結果を統合してレポーティングできます(アルファベット順、下記リストはインデックスになっています)

 そのほか、TODOコメントの数ステップ数の遷移などの統計も取ることができます。

 上記の個々のツールをセットアップすれば、それぞれのレポートを取得できますが、Limy EclipseプラグインのQALab実行機能を利用すると、面倒なセットアップなしにEclipse上からボタン1つで上記のツールのレポートを取得できます。それでは、1つ1つを見ていきましょう。

CheckStyle

 コーディング規約違反をチェックします。開発者によるコーディングスタイルのばらつきを防ぎ、統一感の取れたコードにすることができます。CheckStyleの詳細については下記記事をご参照ください。

Cobertura

 ユニットテストを実行した際のカバレッジを算出します。テストケースによるテストの網羅性の確認と、テストケースにより実行されていないコードを確認できます。

FindBugs

 バグ不具合が混入している可能性があるコードを検出します。ストリームクローズ漏れマルチスレッドによる実行の不具合の検出やパフォーマンスが低下する可能性があるコードなど、検出できるバグは多岐に渡ります。

 FindBugsはコンパイル済みのクラスファイルに対して検証するため、コンパイラの最適化により除去されるデッドコードやコーディング規約違反などは検出できません。FindBugsの詳細については下記記事をご参照ください。

JavaNCSS

 クラス数、メソッド数、Javadoc数、コードの複雑さ(CCN:Cyclic Complexity Number)、コメントにより説明されていないコードのステップ数(NCSS::Non-Commenting Source Statements)などのソースコードのメトリクス(統計情報)を取得できます。

 直接的なバグやコーディング規約違反などは指摘してくれませんが、複雑なメソッドをリファクタリングして分かりやすいコードに分割したり、コメント不足のコードを発見し、コメントを充実させるなど、保守しやすいコードにするのに役立ちます。

 次ページでは、引き続き残りの3ツールを紹介し、Limy Eclipseプラグインを使い始めます。

 
1-2-3

 Index
第8回 JUnit/FindBugs/PMDなどを総観できるQALab/Limy
Page1
便利なEclipseプラグイン集「Limy」とは
QALabで扱う7つの品質管理ツール
  Page2
Limyを使って品質レポートを作成してみよう
QALabのレポート画面を見てみよう
  Page3
思わぬコーディングの悪癖も発見!?

ユカイ、ツーカイ、カイハツ環境! バックナンバー 連載インデックスへ»



Java Solution全記事一覧

TechTargetジャパン

Java Solution フォーラム 新着記事

@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

RSSフィード

キャリアアップ

- PR -
@IT Sepcial

イベントカレンダー

PickUpイベント

- PR -
もっと見る
- PR -

お勧め求人情報

ホワイトペーパーTechTargetジャパン

@IT Sepcial
ソリューションFLASH