平成22年度秋期 応用情報技術者試験 午前 問44

分野:システム開発技術(要件定義・設計・実装・テスト・レビュー・UML・オブジェクト指向・モジュール分割)|実際に出題されたIPA過去問題

プログラム実行中の特定の時点で成立する変数間の関係や条件を記述した論理式を埋め込んで,そのプログラムの正当性を検証する手法はどれか。

  1.  アサーションチェック
  2.  コード追跡
  3.  スナップショットダンプ
  4.  テストカバレッジ分析
解答・解説を見る

正解:ア

AI解説

アサーションチェックは、プログラムの特定時点で成立すべき変数間の関係や条件(不変条件・事前条件・事後条件など)を論理式として記述・埋め込み、実行時にその式が真であるかを検証することでプログラムの正当性を確認する手法である。 ア: 正しい。アサーションチェックは、プログラム中の特定時点で成立すべき条件を論理式(アサーション)として記述し、実行時にその条件を検証することでプログラムの正当性を確認する手法である。 イ: コード追跡(コードインスペクション/トレース)は、プログラムの実行経路や処理内容を人手または机上で追跡・確認する手法であり、論理式を埋め込んで自動検証する手法ではない。 ウ: スナップショットダンプは、プログラム実行中の指定時点でメモリやレジスタの内容を出力・記録する手法であり、論理式による正当性検証とは異なる。 エ: テストカバレッジ分析は、テストによってプログラムのどの部分(命令・分岐・条件など)が実行されたかの網羅率を測定する手法であり、論理式を埋め込んで検証する手法ではない。 💡 アサーション=「ここで成り立つべき条件」をコードに書き込んでおき、実行時に自動チェックする仕組み。形式手法(契約プログラミング)の考え方ともつながるキーワードなので押さえておく。

出典:平成22年度 秋期 応用情報技術者試験 午前 問44 / 独立行政法人情報処理推進機構(IPA)
※Web掲載用に表記を一部変更しています。著作権はIPAに帰属します。
📱 演習アプリで解く(無料・登録不要・2,640問収録)

「システム開発技術」分野の攻略ポイント

要件定義・設計・実装・テスト・レビュー・UML・オブジェクト指向・モジュール分割を扱います。テスト技法とモジュール結合度・凝集度は、定義を正確に押さえていれば計算も暗記も不要で確実に得点できます。

システム開発技術の攻略ポイントをすべて見る(要点6項目・ひっかけ3項目)→

同じ分野(システム開発技術(要件定義・設計・実装・テスト・レビュー・UML・オブジェクト指向・モジュール分割))の過去問