|
===================================== 〔語彙分解〕的な部分一致の検索結果は以下の通りです。 ・ 動 : [どう] 【名詞】 1. motion 2. change 3. confusion ・ 的 : [まと, てき] 【名詞】 1. mark 2. target ・ ラム : [らむ] 【名詞】 1. (1) lamb 2. (2) rump 3. (3) rum 4. (4) RAM (random access memory) 5. (P), (n) (1) lamb/(2) rump/(3) rum/(4) RAM (random access memory) ・ 解析 : [かいせき] 1. (n,vs) (1) analysis 2. (2) parsing
動的プログラム解析 (Dynamic Program Analysis) とは、ソフトウェア解析手法の一種であり、実際のあるいは仮想のプロセッサでプログラムを実行して解析を行うこと。動的解析を効率よく行うために、標的プログラムに十分な量のテストケースを入力し、興味深い動作を起こす。コードカバレッジ等のソフトウェアテスト技法を用いて、起こりうる動作を記述したソースコードの箇所を十分な量見つけ出すことができる。ただし、実行中の一時的な命令の効果を過小評価してしまうことに気をつける必要がある。 テストが不十分だと、ロケット「アリアン5」が初飛行でランタイムエラーにより機体が崩壊した〔Dowson, M. (March 1997). "The Ariane 5 Software Failure". Software Engineering Notes 22 (2): 84. doi:10.1145/251880.251992〕ように、破局的な失敗をするおそれがある。 ==静的解析と動的解析== 静的解析と動的解析は相互に補完する技術である。例えば、マルチスレッド処理にまつわるバグは静的解析では見落とすおそれがあるが、動的解析では特定することができるため、Javaアプリケーションの解析には両方の解析手法が必要である。 静的解析と動的解析を組み合わせることで、バグ検出の精度と速度が高まり、競合状態やデッドロック、リソースリークなど、実行してみないと表面化しない処理を徹底的に解析することができる〔Coverity, Inc. 〕。 静的解析、動的解析で発見できることは、モデル検査、証明系でより効率的に発見できることもある。これらの機能を動的解析の中に組み込んでいる場合もある。 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「動的プログラム解析」の詳細全文を読む スポンサード リンク
|