実装・構築|エンベデッドシステムスペシャリスト試験
この分野には 16問あります。くり返し出ているものから並べています。
この分野でくり返し出ている用語はテスト(6問)・テストケース(4問)・分析(4問)・スマートフォン(2問)・規約(2問)です。問題が多い回は平成30年度 春期(2問)・平成27年度 春期(2問)・平成25年度 春期(2問)です。
中を見るか仕様を見るか、どの値で誤りが表れるか
テストケースの作り方は、プログラムの中を見るかどうかで二つに分かれます。内部の命令や分岐、条件をどれだけ通すかを基準にするのがホワイトボックステストで、命令を一度ずつ実行するC0(命令網羅)、判定の真と偽の両方を通すC1(分岐網羅)、個々の条件の真偽を通す条件網羅があります。仕様の入力と出力だけから作るのがブラックボックステストで、同値分割、限界値分析、原因結果グラフが代表です。
どの値で誤りが表れるかを考えると技法を選べます。A≧aとすべき所をA>aと書いた誤りは、Aがちょうどaのときだけ結果に差が出るので、境目とその前後を試す限界値分析が有効です。挿入処理のように通り道が分かれるものは、空、先頭、末尾、途中といった場合を全て一度ずつ通すデータを選びます。
組合せを効率よく試すには、実験計画法の直交表を使います。どの二つの因子を取り出しても水準の組合せが同じ回数ずつ現れるように作るので、全ての組合せを試さずに偏りなく調べられます。2水準の因子なら、二つの因子の組合せは4通りなので最低4件が要ります。
未完成の部分は仮のプログラムで補います。テスト対象から呼ばれる下位の代わりがスタブ、テスト対象を呼ぶ上位の代わりがドライバです。未完成の周辺ハードウェアの応答をまねるデバイスドライバも、呼ばれる側の代役なのでスタブに当たります。エラー埋込み法では、埋め込んだエラーと元のエラーが同じ割合で見つかると考え、埋め込んだ分も含む総エラー数を、埋込みエラー数×検出した総エラー数÷検出した埋込みエラー数で推定します。
実装を確かめる手段も目的で選びます。成り立つべき条件を論理式で埋め込み、実行中に確かめるのがアサーションチェックです。信号の波形を見るオシロスコープはタイミングやリアルタイム性の検証に使えます。スタックの最大使用量は、呼出しツリーの経路ごとにフレームの大きさを合計して求めます。
書き方の規則としては、車載システムの品質向上のためにC言語の危うい書き方を制限するMISRA-Cがあります。組込み向けのコーディング作法には、信頼性、保守性、移植性、効率性の観点で分類したものがあり、レジスタから読んだ値で割る前に0でないことを確かめるのは、誤動作を防ぐ信頼性の作法です。
この分野で出た問題
- 令和4年度 秋期 問21プログラム言語 C で作成されたプログラム全体で使用するスタックフレームのサイズが,確保したサイズ内に収まっていることを検証したい。各関数が使用するスタックフレームのサイズ情報に加えて,必要となる情報はどれか。
- 平成25年度 春期 問21プログラムの誤りの一つに,繰返し処理の終了条件としてA≧aとすべきところをA>aとコーディングすることがある。このような誤りを見つけ出すために有効なテストケース設計技法はどれか。ここで,Aは変数,aは定数とする。
- 平成25年度 春期 問22JIS X 0180では,組込みシステムのソフトウェアコード品質を信頼性,保守性,移植性及び効率性の四つの品質特性に分類して作法を定めている。作法に基づいて作成した組込みシステム開発プロジェクトのコーディング規約のうち,信頼性を意識したものとして適切なものはどれか。ここで,信頼性とは“ソフトウェアとしての誤った動作をしない,誤動作をしてもソフトウェア全体及びシステム全体の機能動作に影響を及ぼさない,誤動作が発生しても正常動作に速やかに復帰できる性質”を指す。
- 平成27年度 春期 問22MISRA-Cの説明として,適切なものはどれか。
- 平成24年度 春期 問24MISRA-Cの説明として,適切なものはどれか。
- 平成26年度 春期 問20エラー埋込み法では,検出したエラー数を測定することによって,その時点での埋込みエラー数を除いた潜在エラー数Tを推定することができる。
- 平成27年度 春期 問23データが昇順に並ぶようにリストへデータを挿入するサブルーチンを作成した。このサブルーチンのテストに用いるデータの組合せのうち,網羅性の観点から適切なものはどれか。ここで,データは左側から順にサブルーチンへ入力する。
- 令和3年度 秋期 問22プログラム実行中の特定の時点で成立していなければならない変数間の関係や条件を記述した論理式を埋め込んで,その論理式が成立していることを確認することによって,プログラムの処理の正当性を動的に検証する手法はどれか。
- 平成30年度 春期 問22ホワイトボックステストのテストケースを設計する際に使用する技法はどれか。
- 平成30年度 春期 問23学生レコードを処理するプログラムをテストするために,実験計画法を用いてテストケースを決定する。学生レコード中のデータ項目(学生番号,科目コード,得点)はそれぞれ二つの状態をとる。テスト対象のデータ項目から任意に二つのデータ項目を選んだとき,二つのデータ項目がとる状態の全ての組合せが必ず同一回数ずつ出現するように基準を設けた場合に,次の 8 件のテストケースの候補から,最少で幾つを採択すればよいか。
- 平成22年度 春期 問24実験計画法を利用したテストデータ作成方法として,適切なものはどれか。
- 令和6年度 秋期 問18組込みソフトウェア開発のデバッグツールに関する説明のうち,適切なものはどれか。
- 平成31年度 春期 問22組込みソフトウェア開発を行うために,ターゲットシステム上で未完成の周辺ハードウェアが正しく動作しているようにエミュレーションするデバイスドライバを開発した。このデバイスドライバのソフトウェアテストにおける役割はどれか。
- 平成29年度 春期 問24自動車分野の機能安全規格 ISO 26262 においてテスト指標として用いられる C1 カバレージの説明として,適切なものはどれか。
正解と解説は、答え合わせのあとに出ます。
年度から解く
この分野の問題は 13年度ぶんの試験から出ています。いちばん新しいのは令和6年度 秋期です。年度別に解くと、回ごとにまとめて解けます。