令和3年度 秋期 午前Ⅱ 問22
実装・構築
プログラム実行中の特定の時点で成立していなければならない変数間の関係や条件を記述した論理式を埋め込んで,その論理式が成立していることを確認することによって,プログラムの処理の正当性を動的に検証する手法はどれか。
- アアサーションチェック
- イコード追跡
- ウスナップショットダンプ
- エテストカバレッジ分析
答えと解説を見る
✓ これが正解アアサーションチェック
解説
成り立つべき条件を埋め込み、実行時に確かめる手法です。
アサーションチェックは、プログラムの特定の位置で成り立っていなければならない条件を論理式としてプログラムに埋め込み、実行中にその条件が成り立っているかを確かめる手法です。条件が成り立たなければその時点でエラーとして知らせるので、誤りが起きた場所を早く絞り込めます。プログラムを実際に動かして確かめるので、動的な検証に当たります。変数間の関係や条件を記述した論理式を埋め込むという設問の説明は、この手法の特徴そのものです。成り立つべき条件を書いておき、実行時に確かめる手法、と覚えると他の手法と区別できます。
ほかの選択肢はなぜ違うのか
- イコード追跡:コード追跡は、プログラムの実行経路や命令の実行順を追って記録し、どこを通ったかを調べる手法です。実行の流れを確かめるものであり、成り立つべき条件の論理式を埋め込んで成否を判定する手法ではありません。
- ウスナップショットダンプ:スナップショットダンプは、プログラムの実行中の指定した時点で、主記憶やレジスタの内容を出力する手法です。その時点の値を取り出して後から人が調べるもので、条件の成否を自動で判定する仕組みではありません。
- エテストカバレッジ分析:テストカバレッジ分析は、テストによってプログラムの命令や分岐がどれだけ実行されたかを調べる手法です。テストの網羅の度合いを測るもので、実行中に変数間の関係が成り立っているかを確かめる手法ではありません。
この問題の用語
- テスト決めたとおりに動くかを、実際に動かして確かめる作業のこと。何を確かめるかによって移行テスト、システムテストなどと呼び分けます。
- 分析集めたデータを細かく分けて、何がどう関わっているかを読み取ること。量が増えるほど、扱う道具も考え方も変わります。
出典:令和3年度 秋期 エンベデッドシステムスペシャリスト試験 午前Ⅱ 問22
同じ用語が出る問題
- 令和7年度 秋期 午前Ⅱ 問25(分析)
- 令和7年度 秋期 午前Ⅱ 問18(分析)
- 令和5年度 秋期 午前Ⅱ 問15:NOTICEに関する問題(テスト)
- 令和3年度 秋期 午前Ⅱ 問23:スプリントのルール(テスト)
- 令和2年度 10月 午前Ⅱ 問20:コデザインに関する問題(テスト)
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)