静的解析 【static code analysis】 静的コード解析

概要

静的解析(static code analysis)とは、コンピュータプログラムに欠陥が無いか検証する手法の一つで、主にソフトウェアを用いてプログラムコードを解析し、誤りがないか確かめること。静的テストの一種。

静的解析ツール」と総称されるツール群を用いて、人間の記述したプログラムソースコードを解析し、プログラミング言語の文法や仕様を満たしているか、定められたコーディング規約に則っているかなどを調べる。

個々の命令文などの単位では形式的な問題がなくても、実行の流れを解析して、初期化前の変数の内容を参照していたり、確保したメモリ領域の境界を越えてアクセスしようとしているなど、実行時に問題となり得る箇所を指摘してくれるツールもある。

高い安全性や信頼性が求められる航空機や原子炉、人工衛星などの制御システムセキュリティ分野などでは、定理証明支援系などのツールを用いてプログラムの正しさや安全性を数学的に証明する「形式手法」(formal methods)が用いられることもある。

静的テストの手法としては他に、主に人間(開発者以外の第三者)がソースコードを読んで問題がないか調べる「レビュー」(review)がある。一方、実際にプログラム実行してみて問題が発生しないか確かめることは「動的解析」(dynamic analysis)と呼ばれ、一般に単にソフトウェアのテストと言えばこちら(のみ)を指すことが多い。

(2022.8.9更新)

他の辞典による解説 (外部サイト)

この記事の著者 : (株)インセプト IT用語辞典 e-Words 編集部
1997年8月より「IT用語辞典 e-Words」を執筆・編集しています。累計公開記事数は1万ページ以上、累計サイト訪問者数は1億人以上です。学術論文や官公庁の資料などへも多数の記事が引用・参照されています。
ホーム画面への追加方法
1.ブラウザの 共有ボタンのアイコン 共有ボタンをタップ
2.メニューの「ホーム画面に追加」をタップ
閉じる