脆弱性や不具合を含むソースコードの混入は、ソフトウェア開発において避けられない問題だ。このリスクの最小化に有効なのが静的テストであり、専用のツールを活用して開発ライフサイクルの早い段階で不具合・脆弱性を除去すれば、無駄なコストの発生を回避できる。
静的解析は大きく2種類に分けられる。1つはバグ自体を検出する「ランタイムエラー検出系」で、従来、実行時でないと確認できなかったメモリリークやデータ破壊、データ競合などを静的に検出する点が特徴だ。もう1つの「パターンマッチング系」は脆弱性の問題やバグに陥りやすい書き方を指摘する手法で、あらかじめ定義したコーディングルールに対し違反がないかを確認する。
本資料では、この2つの機能を併せ持つ静的解析ツールを紹介する。高精度な解析技術と誤検知の少なさ、迅速な問題の把握・修正、セキュリティ・信頼性に関する標準規格対応など、その特徴を詳しく解説している。導入によって得られる効果や導入支援サービスも紹介しているので、参考にしてほしい。