令和元年度 秋期 午前Ⅱ 問8
実装・構築
プログラム実行中の特定の時点で成立すべき変数間の関係や条件を記述した論理式を埋め込んで,そのプログラムの正当性を検証する手法はどれか。
- アアサーションチェック
- イコード追跡
- ウスナップショットダンプ
- エテストカバレッジ分析
答えと解説を見る
✓ これが正解アアサーションチェック
解説
成り立つべき条件の論理式を埋め込んで確かめるのはアサーションチェックです。
設問の手掛かりは、プログラムの特定の時点で成り立つべき変数間の関係や条件を、論理式として埋め込むという点です。この論理式をアサーションと呼び、実行中にその時点へ来たときに式が成り立っているかを調べ、成り立たなければ誤りとして知らせます。プログラムの正当性を、実行しながら条件の形で確かめる手法なので、アサーションチェックが当てはまります。ほかの肢は、実行の経路をたどる、ある時点のメモリの中身を書き出す、テストでどこまで実行したかを測るといった手法で、成り立つべき条件を書き込む点がありません。条件を書いて埋め込む、という特徴でアサーションを見分けてください。
ほかの選択肢はなぜ違うのか
- イコード追跡:コード追跡は、プログラムがどの命令をどの順に実行したかをたどって、処理の流れを確かめる手法です。実行の経路は分かりますが、成り立つべき条件を論理式として埋め込んで正しさを検証するものではありません。
- ウスナップショットダンプ:スナップショットダンプは、プログラム実行中の指定した時点で、メモリやレジスタの内容を書き出す手法です。書き出した値を人が見て調べる手段で、条件の論理式を埋め込んで判定する仕組みではありません。
- エテストカバレッジ分析:テストカバレッジ分析は、テストによってプログラムの命令や分岐がどれだけ実行されたかを測る手法です。テストの網羅の度合いは分かりますが、各時点で変数の関係が正しいかを確かめるものではありません。
この問題の用語
- テスト決めたとおりに動くかを、実際に動かして確かめる作業のこと。何を確かめるかによって移行テスト、システムテストなどと呼び分けます。
- 分析集めたデータを細かく分けて、何がどう関わっているかを読み取ること。量が増えるほど、扱う道具も考え方も変わります。
出典:令和元年度 秋期 システムアーキテクト試験 午前Ⅱ 問8
同じ用語が出る問題
- 令和7年度 春期 午前Ⅱ 問11:ユースケース駆動開発の利点(テスト)
- 令和7年度 春期 午前Ⅱ 問10:カークパトリックモデルの問題(テスト)
- 令和7年度 春期 午前Ⅱ 問6(テスト)
- 令和5年度 春期 午前Ⅱ 問7(テスト)
- 令和4年度 春期 午前Ⅱ 問9:バグ管理図に関する問題(テスト)
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)