CodeZine(コードジン)

特集ページ一覧

「FindBugs」「Jenkins」をサポートし、不具合検出の幅が大きく広がった静的解析ツール「Coverity Static Analysis 5.5」

開発者によるソースコード解析をサポートし、バグの未検出リスクを軽減

  • LINEで送る
  • このエントリーをはてなブックマークに追加
2011/10/05 11:00

目次

解析速度はより高速に、検出対象はより広範囲になった最新バージョン

 Coverity Static Analysis最新バージョンの5.5では、さまざまな改善が施されています。まずは、主にC++の開発においてメリットを発揮する、解析時間の短縮です。解析をマルチコアCPUでの並列処理に対応することで、従来の50%~80%もの短縮を実現しています。シングルプロセスでも従来の20%~30%短縮した上で、同社による、あるソースの実測値では、シングルプロセスで2分25秒かかったものがが、4コアCPUでは1分13秒とおよそ半分になったとしています。

 次の改善点は、Java環境での不具合検出率をアップさせるための、オープンソースのJavaプログラム解析ツール「FindBugs」との統合です。Coverityの解析結果と、FindBugsの結果は、それぞれ異なるものが検出され、重複するものは少ないため、より多くの不具合を検出します。FindBugsはインストールベースで統合を行っており、FindBugsの追加インストールおよび設定は不要です。解析の実行も従来と同じコマンド「cov-analyze-java」でできます。

 続いての改善点は、デスクトッププラグインです。従来は、主に、ソースをチェックイン後にビルド用サーバ側で解析していましたが、より早期に不具合を発見できるよう、ローカル環境での解析がサポートされるようになりました。開発者個人がEclipseやエディタなどを使いながら、自分の裁量で自由に解析できます。

 最新バージョンのもうひとつの目玉は、CI(継続的インテグレーション)ツールである「Jenkins」の統合です。コベリティが提供するJenkinsプラグインにより、開発者がリポジトリにソースコードをチェックイン後、Jenkinsが自動的にCoverity Static Analysisによるビルド、解析、および解析結果の送信を行います。これにより、これまでのユニットテストでは発見されなかったより多くの不具合の検出が可能になり、アジャイル開発におけるソフトウェアの品質をより強化します。

無料トライアルで、Coverityの実力を試してみよう

 Coverity Static Analysisを使えば、これまで気がつかなかった不具合を早期に検出し、開発効率を向上させることができます。「今すぐ使ってみたい」という開発者のために、コベリティでは、無料トライアルのプログラムを用意しています。

 上記のページからオンラインで申し込むと、コベリティの担当者が訪問の上、製品紹介とデモンストレーションを行います。その後はユーザー側で、今回の記事で紹介した「コンパイラの設定」「ビルド」「解析」を行います。不具合の解析結果が出たら、再びコベリティのエンジニアが訪問し、結果の説明やフォローアップが行われます。

 なお、無料トライアルの対象は、高品質性が特に求められる複雑なコードで、通常は20万行以上(行数は応相談)の開発プロジェクトに制限させていただいています。

実際に使用しているユーザーの声

 最後に、Coverity Static Analysisを既に利用し、成果を上げているユーザー企業の声をいくつか紹介しましょう。

 「メモリの取り扱いに関するバグの発生率は限りなくゼロに……」

 ―――― 株式会社外為どっとコム

 「解析の精度で選びました」

 ―――― 株式会社コナミデジタルエンタテインメント

 「開発者が頼れる開発者のためのツールです」

 ―――― 株式会社シンプレクス・テクノロジー

 「バグ解析の精度は、“目からうろこ”でした」

 ―――― 株式会社セガ

 「見つけにくいバグを発見できる特効薬でした」

 ―――― 三菱電機株式会社

 「解析制度とレポーティングの判りやすさで、試用期間を含め1週間ほどで購入を決定しました」

 ―――― 株式会社シンプレクス・コンサルティング

 「導入したことで、これまでバグの発見に費やしていたコストを品質向上に仕向けられ、ソフトウェアの完成度をより高められました」

 ―――― 株式会社東芝

 「これまでは再現性が必要で、修正するのに多大な時間と労力がかかっていた不具合を開発の早期段階で検出できるようになりました。開発者のツールへの評価も高く、品質を保持しながら、劇的に生産性が上がりました」

 ―――― 日本電気株式会社

 「コベリティ製品の導入により、潜在的な不具合を突き止めることができました。異常系やタイミング依存部に潜む、テストでは検出が難しい不具合を、効率よく検出し、高品質ソフトの開発に貢献しています」

 ―――― 住友電工ネットワークス株式会社

 興味をもたれた方は、ぜひ一度、無料トライアル版を実際のプロジェクトに適用し、この開発生産性の効果を実感してください。

  • LINEで送る
  • このエントリーをはてなブックマークに追加

著者プロフィール

  • 森 英信(モリ ヒデノブ)

    就職情報誌やMac雑誌の編集業務、モバイルコンテンツ制作会社勤務を経て、2005年に編集プロダクション業務やWebシステム開発事業を展開する会社・アンジーを創業。編集プロダクション業務においては、IT・HR関連の事例取材に加え、英語での海外スタートアップ取材などを手がける。独自開発のAI文字起こし・...

あなたにオススメ

All contents copyright © 2005-2022 Shoeisha Co., Ltd. All rights reserved. ver.1.5