静的解析とは?
LDRA Testbed’s の静的解析により、一様なプログラミングスタンダードの適応、適正な構造化、複雑度や品質特性を管理可能な品質モデルの採用ができるようになります。静的テストでは、ソフトウエアの欠陥を相当数検出することもできます。
その利点?
- システムに対する、より良い理解
- 品質標準への準拠
- 不要、あるいは使用されないコードを検出し排除
- システムの複雑度を判断し、レポート
- 完全に自動化される解析により工数を削減.
いつ用いるか?
静的解析は、ソフトウエアに対する自動ドキュメント化に対する情報の源となります。極めて重要となる、各プロシジャーのコントロールフロー、プロシジャー内のリンクの情報全てを生成。インターフェイスは正確に描写され、ループ構造は明らかにされ、複雑度のメトリクスが生成されます。
LDRA Testbed’s は、静的解析のみを要件とする認証機関から、高安全性のコードを解析するツールであると認められています。さらに他の機関では、完全な動的解析のための強力な付属機能ともなっています。
生成される解析結果?
LDRA Testbed は、以下の静的解析機能を持っています:
プログラミングスタンダード検証. ユーザ設定可能な、プログラミングスタンダードへの準拠を評価.
構造化解析. 正しく構造化されているかの評価.
複雑度解析. サイクロマチック、ノット、エッセンシャル・サイクロマチック、エッセンシャル・ノット、など多数の複雑度のメトリクスをレポート.
完全な変数のクロスリファレンス. ファイルの境界、関数間、関数内のグローバル、ローカル変数の解析とレポート.
未到達コードをレポート. 到達され得ない余計なコード領域をレポート.
静的なデータフロー解析. 変数をソースコード内に渡って解析し、使用上の異常をレポート.
インフォメーションフロー解析. コード内の全パスに対する、変数の相互依存性を解析.
ループ解析. コード内のループの構造、ネストの深さをレポート.
再帰的手続きによる解析. 上記全てのレポートは、個別に、かつ相互に再帰的な解析が行われる.
プロシジャ・インターフェイス解析. 欠陥、欠損を検出するため各プロシジャのインターフェイスは解析され、コールグラフによりインテグレーションの欠陥が解析される.
|