アサーションとは?
アサーションとは、プログラム中の特定の地点で成立しているべき条件を式として埋め込み、実行時に検査して成立しなければ異常として報告する仕組み。前提条件・事後条件・不変条件の破れを早期に検出できる。
エンベデッドシステムスペシャリスト試験の過去問では3回出題されています(2019年度〜2023年度)。
あさーしょん
アサーションの意味
プログラム中の特定の地点で成立しているべき条件を式として埋め込み、実行時に検査して成立しなければ異常として報告する仕組み。前提条件・事後条件・不変条件の破れを早期に検出できる。
アサーションの具体例
関数の入口でポインタが非NULLであること、配列添字が範囲内であることを表明する。
アサーションは試験でどう引っ掛けられる?
出荷版では無効化する運用が一般的だが、無効化されると副作用が消える書き方(assert内で値を変更する)をしてはならない。
アサーションと関連する用語
アサーションが出た過去問
SAML(Security Assertion Markup Language)の説明はどれか。
正解:異なるインターネットドメイン間で利用者情報を共有してシングルサインオンに利用するための、XMLをベースにした標準規格
要点:SAMLはXMLで認証情報を交換しドメイン間SSOを実現する
SAMLは、認証や属性、認可に関する情報(アサーション)をXML形式で記述し、認証を行うIdPとサービスを提供するSPの間で安全に受け渡すためのOASIS標準である。これにより組織やドメインをまたいだシングルサインオンが実現でき、各サービスが個別に利用者を認証する必要がなくなる。認可の委譲を扱うOAuthや、URLを識別子とするOpenIDとは目的が異なる。
出典:令和1年度 春期 エンベデッドシステムスペシャリスト試験 am2 問19(IPA)プログラム実行中の特定の時点で成立していなければならない変数間の関係や条件を記述した論理式を埋め込んで、その論理式が成立していることを確認することによって、プロ…
正解:アサーションチェック
要点:アサーションチェックは埋め込んだ条件式で動的に正当性を検証
アサーションチェックは、プログラム中の特定箇所で成立しているはずの条件を論理式として埋め込み、実行時にその条件が満たされているかを確認する手法である。前提が崩れた時点で検出できるため、不具合の原因箇所を特定しやすい。実際にプログラムを動かして確かめる動的な検証手法である点が特徴である。
出典:令和3年度 秋期 エンベデッドシステムスペシャリスト試験 am2 問22(IPA)SAML(Security Assertion Markup Language)の説明はどれか。
正解:異なるインターネットドメイン間でセキュリティ情報を共有してシングルサインオンに利用するための、XMLをベースにした標準規格
要点:SAMLはXMLで認証情報を交換しSSOを実現する規格
SAMLは、認証・認可に関する情報(アサーション)をXML形式で記述し、異なるドメインのシステム間で安全にやり取りするためのOASIS標準である。認証を行うIdPと、サービスを提供するSPの間でアサーションを受け渡すことで、組織やドメインをまたぐシングルサインオンを実現できる。
出典:令和5年度 秋期 エンベデッドシステムスペシャリスト試験 am2 問14(IPA)
最終更新:2026-08-25/解説は資格暗記が独自に作成しています。 過去問の出典は各問題に記載のとおりです。