ツール
静的解析による品質向上支援ツール PGRelief

ソースコードを静的に解析し、
欠陥部分を指摘することで品質向上を実現

こんな方にお勧めします
  • C/C++で開発を行っている開発チーム
  • 組み込みシステム開発事業者
こんな悩みを解決します
  • プログラムの基本的な品質向上が課題となっている
  • コーディング規約が浸透していない
  • 保守性や移植性の向上を図りたいが、なにから手を付けていいか分からない

PGReliefとは

ソースコードを静的に解析し、プログラムの欠陥部分を指摘。スキルの高い開発者がコードレビューで発見するようなプログラムの問題点を自動的に検出します。

開発規模の巨大化・複雑化が進み、ソフトウェア開発における品質向上とコスト削減への要求は年々厳しさを増しています。コーディング規約を徹底的に順守し、記述ミスやセキュリティ上の問題がないソースコードに徹することで、プログラムの根本的な品質を向上し、高度な要求に応える製品開発が可能になります。PGReliefはコーディング規約に従ってソースコードを静的に解析。問題点を指摘し、解決策を提示することでソースコードの品質向上を実現します。

導入効果

  1. コーディングミスから論理的な誤りまで幅広い問題点を検出
  2. 対処が必要な箇所のみを提示することで作業者の負担を軽減
  3. オプション利用で検出範囲を関数内から関数間まで拡大可能

特 色

POINT 1

PGReliefの豊富な指摘機能

PGReliefは C/C++のソースコードを解析し、単純なコーディングミス、論理的な誤りなどの基本的な問題から、不当なメモリアクセス、メモリリーク、誤ったメモリ解放などパフォーマンス悪化の要因まで、幅広い不良箇所を自動的に検出する強力な静的解析ツールです。障害の要因とならない箇所を独自のフィルタリングで除外し、対処が必要な箇所のみを指摘するため、開発者の負担を軽減し、効率的な不具合修正が可能になります。それぞれの指摘について対処方法を解説したドキュメントを提供。指摘箇所の修正をサポートします。

POINT 2

3つの観点から不具合を指摘

PGReliefは3つの観点から問題点を検出する「指摘の多重化」を実現。高い精度で不具合を洗い出し、ソフトウェアのさらなる品質向上に貢献します。

  • 指摘観点1- PGRelief独自のアルゴリズムでチェック
    多くのバグ事例から開発者が陥りがちなパターンをデータベース化。豊富な事例に基づきソースコードの問題点を検出します。
  • 指摘観点2- IPA/SECコーディング作法ガイドへの適合性をチェック
    ソースコードがIPA/SECコーディング作法に沿って記述されているか検査し、違反箇所を指摘します。規約に準拠したコーディングを行うことで、信頼性、移植性、保守性の向上を図ることができます。
  • 指摘観点3- MISRAガイドラインへの適合性をチェック(オプション)
    ソースコードが、MISRA-C、MISRA-C++プログラミングガイドラインに沿って記述されているかを検査し、違反箇所を指摘します。安全性と移植性、信頼性を確保し、基本的なプログラム品質の底上げを図ることができます。

POINT 3

レビュー支援機能

分かりやすいユーザーインターフェースで、コードレビューを効率化 信頼性・保守性・移植性・効率性といった指摘種別ごとにフィルタリングを行い、着目したい指摘メッセージのみを表示することができます。検査指摘設定機能により、あらかじめ設定したグループや番号の指摘メッセージのみを出力することも可能です。該当する記述箇所や指摘の意味、対処方法までを簡単な操作で表示できるため、効率的なレビューが可能です。

デスクトップ解析(Visual Studioプラグイン)のソースコード表示では、検出された指摘をソースコード単位や指摘の重要度毎にグループ化して見やすく表示できます。 また、デスクトップ解析のトレースバック情報には不具合が発生するときのパスが表示されます。 このトレースバックは、不具合の解析に役立ちます。

POINT 4

豊富な機能で多角的な品質チェックが可能

複雑さ計測機能、コマンド解析機能、命名規約検査など、豊富な検査機能で様々な角度からソースコードの品質を検証することができます。

  • 複雑さ計測
    プログラム記述の問題だけでなく、プログラムの制御構造の経路をカウントし、複雑度を定量的に評価することができます。計測結果から循環的複雑度(McCabeの複雑度)を算出します。ソースコードの可読性を測る基準として活用することで、品質に対する認識向上を促し、クオリティの向上につながります。
  • コマンド解析機能
    コンパイラコマンドのパラメーターから、解析に必要なオプションを自動抽出し、解析を実行します。一連のコンパイル作業を定義している環境で使用した場合、解析の設定が不要になり、作業者の負担を軽減することができます。
  • 命名規約検査
    変数や関数の名前付けに関して、任意の規約に応じて検査することができます。命名ルールを統一することで、だれでも「機能」から「関数名/変数名」を、「関数名/変数名」から「機能」を類推できるようになり、開発効率の向上につながります。

POINT 5

品質監視オプション

構成管理ツールと連携することで、ソースファイルを集約しているサーバー上のプログラムソースコードを自動的に取得。「PGRelief」がサーバー上で一括解析を行います。解析結果をHTML形式で出力して蓄積するため、プロジェクト関係者全体に公開することができます。開発担当者は従来と同様、コーディングが完了したプログラムを構成管理ツールに登録するだけ。自動的に静的解析を実施し、結果を共有することが可能になります。作業者の負担を軽減しながら、品質管理者やプロジェクトマネージャーも一目で全体の品質状況を把握できる環境を実現することができます。

POINT 6

広域探索オプション

メモリリークやバッファオーバーランなどの重大な問題は、関数間に潜んでいることが少なくありません。広域探索オプションを利用することで、問題箇所の検出範囲を関数内から関数間まで拡大し、重大な問題個所を検出することができます。

検出可能な指摘

  • メモリリーク
    領域の獲得/解放を別々の関数で実施している場合、解放漏れの危険性を指摘します。
  • バッファオーバーラン
    別の関数で用意された領域に対し、そのサイズを超えて処理する危険性を指摘します。
  • 0番地参照
    パラメーターで渡されたアドレスが「0でない」と信じてアクセスする危険性を指摘します。

システム要件

動作環境

項目 必要条件
CPU Intel® Pentium® 4 2.4GHz以上 (推奨)
メモリ 512MB以上 (1GB以上を推奨。 広域探索オプションを使用する場合は2GB以上を推奨)
ハードディスク インストールに必要な容量 100MB
解析に必要な容量
  • Cプログラム
  • 1ファイルあたり3MB(目安値) 、オプション製品使用時はプラス1MB(目安値)
  • C++プログラム
  • 1ファイルあたり15MB(目安値)、オプション製品使用時はプラス1MB(目安値)
動作OS ノードロック版
  • ・Microsoft® Windows® XP
  • ・Microsoft® Windows Vista®
  • ・Windows® 7
  • ・Windows® 8(注1)
  • ・Windows® 8.1(注1)
  • ・Windows® 10(注1)
フローティング版 ライセンスサーバ
  • ・Microsoft® Windows® XP
  • ・Microsoft® Windows Vista®
  • ・Windows® 7(注1)
  • ・Windows® 8(注1)
  • ・Microsoft® Windows Server® 2003
  • ・Microsoft® Windows Server® 2008 R2(注1)
  • ・Microsoft® Windows Server® 2012(注1)
  • ・Red Hat® Enterprise Linux® 5
  • ・Red Hat® Enterprise Linux® 6
クライアント
  • ・Microsoft® Windows® XP
  • ・Microsoft® Windows Vista®
  • ・Windows® 7 (注1)
  • ・Windows® 8(注1)
  • ・Microsoft® Windows Server® 2003 (注2)
  • ・Microsoft® Windows Server® 2008 R2 (注1)(注2)
  • ・Microsoft® Windows Server® 2012(注1)(注2)
  • ・Red Hat® Enterprise Linux® 5 (x86) (注2)
  • ・Red Hat® Enterprise Linux® 6 (x86) (注2)
解析対象 ANSI規格(ISO/IEC 9899:1990)/(ISO/IEC 9899:1999)に準拠したCプログラム ANSI規格(ISO/IEC 14882:1998)/(ISO/IEC 14882:2003)に準拠したC++プログラム ただし、広域探索オプションの解析対象は、Cプログラムのみとなります。
Webブラウザ Microsoft® Internet Explorer® 7.0以降(品質監視オプション利用時)
必須ソフトウェア Microsoft® Excel® 2010 / Microsoft® Excel® 2013 (注3)

※英語環境でも利用できます。また各種説明書の英文ドキュメントもご用意しております。

  • (注1):64ビット版のWindows 7、Windows 8、Windows Server 2008 R2 およびWindows Server 2012上では、32ビットアプリケーションとして動作します。また、オプション製品の動作OSは、標準パッケージに準じます。
  • (注2):コマンドラインでの解析のみご利用できます。
  • (注3):32ビット版のMicrosoft Excelが必要です。診断レポート生成ツールの利用時に必要となります。

さらに詳しい製品情報、サポート情報はPGReliefメーカー詳細ページをご覧ください。

お電話でのお問い合わせ(受付時間:平日9:00-17:45)

0120-057-232
携帯電話の場合:03-5789-2587

Webからのお問い合わせ

page top