練習問題の答えと理由
Practice Questions: Answers and Notes
本の各章の最後にある「答えと理由」です。
第1章:基本情報技術者試験を学ぶ地図
自己チェック
- 知識を使って計算する、条件に合わせて判断する、処理を順に追う力などです。
- 科目Aは幅広い知識を問い、科目Bはアルゴリズム・プログラミングと情報セキュリティを中心に知識・技能を問います。
- 分かることは学習する知識・技能の範囲です。次の試験の個別問題や出題頻度はシラバスだけでは分かりません。
- 掲載日や資料が出た日、確認日は自分が読んだ日です。
確認問題(選択式)
Q1 正答はBです。Aは科目A・Bの範囲を限定しすぎています。Bは両科目の範囲の違いを正しく示します。Cは各科目の範囲を取り違えています。Dは科目ごとの違いをなくしており誤りです。
Q2 正答はDです。科目Bの組合せはアルゴリズム・プログラミングと情報セキュリティです。Aはマネジメント、Bはストラテジ、Cは科目Bの中心分野を示す組合せではありません。
Q3 正答はAです。Aは現行概要の科目Aです。Bは科目Bの時間と問題数です。Cは科目Aの時間に科目Bの問数を組み合わせています。Dは科目Bの時間に科目Aの問数を組み合わせています。
Q4 正答はAです。AはIPAが示すIRTに基づく評価方法です。Bは正答数を単純に換算する方式ではありません。Cは科目ごとの評価を一つにまとめており誤りです。Dは順位だけで合否を決める方式ではありません。
Q5 正答はCです。Aは6,000円、Bは7,000円、Dは8,000円で、いずれも確認日にIPAの案内に示された額ではありません。Cの7,500円です。
Q6 正答はDです。Aは科目Bの基準を落としています。Bは合計点だけで判定する説明です。Cは片方だけでよいとしており誤りです。Dは各科目それぞれ1,000点満点中600点以上という基準です。
練習
1-1 シラバスから学習する知識・技能の範囲を知ることができます。次に出る個別問題や出題頻度は、シラバスだけでは分かりません。
1-2 例:受験する時期の試験概要、実施期間や休止の案内、申込みや会場の情報から二つです。これらは更新されることがあるので、受験前にIPAの最新案内を確認します。
1-3 試験概要は試験の構成や方式、現行シラバスVer.9.2は知識・技能の範囲、Ver.0.1は新制度の案として記録します。発行主体、版・状態、ページ上の更新表示と確認日を分けます。案は現行の確定版ではなく、変更される可能性があるためです。
1-4 2はアルゴリズム・プログラミング、3は基礎理論、4はストラテジ、5はネットワークです。処理を追う、数の表し方を変える、事業の目的を比べる、名前と接続先の対応を扱う、という理由が課題に対応していれば正解です。
1-5 補数計算は基礎理論で科目Aの知識に関わります。擬似言語の処理追跡はアルゴリズム・プログラミングで科目Bの中心分野です。CIAに基づく対策選びは情報セキュリティに関わり、科目A・Bの両方に関連します。契約文の語義はストラテジの法務分野、DNSの役割はネットワーク分野で、主に科目Aの広い知識に関わります。課題の条件や問い方により複数分野が関係すると説明しても認めます。
1-6 情報は「状態値0、1、0の3記録」。状態値の1個が貸出中を表すので、求める数は1件です。
考えよう・グループで話そう
一つだけの答えを求めません。試験概要は試験の構成や実施方法、シラバスは学習範囲を調べるために使います。最新情報の出どころと確認日を挙げ、それが必要な理由を説明できていれば十分です。
ミニ会話
現行か案か、版、掲載日や更新表示、確認日を分けて説明できていれば正解です。シラバスが学習範囲を示し、個別問題や頻度を予測するものではないことも確かめます。
ワークシート
ワークシート1-1は、資料名・発行主体・版・状態・更新表示・確認日が区別できていることを見ます。案カードの記入例は「IPA/Ver.0.1・案/2026年9月30日/確認日2026年10月28日」です。
ワークシート1-2は、1が情報セキュリティ、2がアルゴリズム・プログラミング、3が基礎理論、4がストラテジ、5がネットワークです。分類だけでなく、課題の内容に合う理由があることを確認します。
ワークシート1-3の完成例は、情報「状態値1、0、1の3件」、条件「1は貸出中」、求めるもの「貸出中の数」、答え「2件」です。別の記録は状態値1の個数を数えます。
第2章:数と論理を表す
自己チェック
1節
- 11です。
1×8 + 0×4 + 1×2 + 1×1 = 11と計算します。 0110です。4ビットの位を使って6を表します。- 255です。8個の1を並べた
11111111の値です。
2節
1111です。正の10001を反転し、1を加えます。- 0から255です。8ビットをすべて値の表現に使います。
- ビット幅を決めます。幅により、正の数の桁と表せる範囲が決まります。
3節
- ANDは0、ORは1です。ANDは両方1のときだけ1で、ORは一方でも1なら1です。
- AとBの値が異なるときです。同じなら0です。
- 1です。NOTは入力と反対の値を出します。
4節
- 24 bitです。3 byteに8 bit/byteを掛けます。
- データ量をbitにし、速度もbit/sで表します。その後、bit数をbit/sで割ります。
- 小数を限られた桁で近似して表すためです。十進数の足し算が誤りという意味ではありません。
確認問題(選択式)
Q1 正答はBです。8ビットで13は
00001101です。各ビットを反転した11110010に1を加えると11110011になります。Aは正の13を示し、負の値に変換していません。Cは反転しただけで、1を加えていません。Dは13の各ビットを反転した列ではありません。Q2 正答はCです。XORは入力が異なるときに1を出します。00では0、01では1、10では1、11では0なので、出力列は
0, 1, 1, 0です。AはAND、BはORの列です。DはNOT(A OR B)の列です。Q3 正答はAです。Aは8+4+0+1=13です。Bは2の2乗を2と誤り、8+2+1=11とした値です。Cは1の位を加えていません。Dは末尾の1を2の位と誤り、8+4+2=14とした値です。
Q4 正答はBです。Aは正の5です。Bは00000101を反転して1を足した値です。Cは反転後に1を加えていません。Dは符号ビットだけを変えた表し方で、2の補数ではありません。
Q5 正答はCです。Aはbyteからbitへの変換で8倍するのを落とした値です。Bは1 byteを8 bitでなく4 bitと誤って換算した値です。Cは3×220×8÷(6×106)=4.194304秒です。Dの6.00秒は、与えた容量と速度からは求まりません。
Q6 正答はDです。AはORの値と混同しています。Bは1と1も有効な入力です。Cは論理演算の出力値ではありません。Dは同じ入力なのでXORの出力は0です。
練習
2-1 答えは 11111111 です。8ビットの正の1は 00000001 です。反転して 11111110 にし、1を加えると 11111111 です。
2-2 答えは16.777216秒(約16.8秒)です。24 × 2^20 × 8 ÷ (12 × 10^6) = 16.777216 と計算します。MiBをbyte、byteをbitへ直し、bit/sで割ります。伝送以外の遅れは含みません。
2-3 正の9は 001001、反転は 110110、1を加えた値は 110111 です。指定された6ビット幅を途中で変えずに計算します。
2-4 ANDは0、ORは1、XORは1です。ANDは両方が1のときだけ1、ORはどちらかが1なら1、XORは二つの値が異なるとき1です。
2-5 答えは25.165824秒(約25.2秒)です。18 × 2^20 × 8 ÷ (6 × 10^6) = 25.165824 です。MiBをbitに変換し、bit/sで割ります。追加の通信時間は含めない条件です。
2-6 コンピュータが小数を有限の桁で近似して扱う場合があるため、計算結果に小さな差が生じます。十進数の計算が常に誤りという意味ではありません。
考えよう・グループで話そう
決まった一つの答えはありません。幅を変えたときは表せる範囲と桁数、単位を変えたときは式に入る係数と答えの単位を説明できているかを見ます。誤差については、必要な精度や計算で使う数の表し方を挙げていれば十分です。
ミニ会話
負数の計算前にビット幅を確認します。AND・OR・XORの条件を区別します。MiBをbitへ直し、bit/sで割ります。
ワークシート
ワークシート
2-1の答えは 110111、8 bit、25.165824秒です。式に 2^20、8 bit/byte、10^6 bit/sを入れて計算します。
2-2は、ANDの列が0、0、0、1、ORの列が0、1、1、1、XORの列が0、1、1、0です。NOTは入力0に対して1、入力1に対して0です。
第3章:データを並べ、探す
自己チェック
1節
- 19です。表3-2の添字2にある値です。添字が0から始まるため、添字2は先頭から3番目になります。
- 配列は要素番号を指定して値を扱います。連結リストは、先頭などからリンクをたどって値へ進みます。
2節
- C、Bの順です。スタックは最後に入れた値を先に取り出します。
- A、Bの順です。キューは先に入れた値を先に取り出します。
3節
- 探す値の順序で整列済みであることです。中央より大きいか小さいかで、探す側を決めるためです。
- 2回です。最初に17と比べ、次に26と比べて見つけます。
- 不成功です。残る範囲がなくなったら、配列内に値がないと判断します。
4節
- 未整列部分の最小値です。この例では2を選びます。
- 左側の整列済み部分の、値の順序に合う位置です。
- 最大値の7です。隣り合う値を左から比べて交換すると、7が一番右まで進みます。
- それぞれの部分列を整列し、その後に順序を保って併合します。
確認問題(選択式)
Q1 正答はCです。スタックは最後に入れたデータを最初に取り出すため、Bを先に取り出します。Aのキューは先に入れたAが先に出ます。Bの配列は添字を使って値を扱う並びであり、取り出し順そのものを指定しません。Dの連結リストはリンクで値をたどる構造であり、取り出し順だけでは決まりません。
Q2 正答はAです。二分探索では値の大小に応じて、中央の左か右かを選びます。そのため、探す値で整列済みである必要があります。Bのように要素数が偶数である必要はありません。Cのように値が連続している必要もありません。Dのリンク接続はデータの持ち方であり、整列の条件ではありません。
Q3 正答はAです。Aは先入れ先出しの順です。Bはスタックのような後入れ先出しです。Cは1回目の値だけです。Dは2回目の値だけで、先入れ先出しの順序になっていません。
Q4 正答はBです。Aは32個を半分にする段数だけを数え、最後の比較を落としています。Bは最大6回です。Cの16回は要素数の半分で、二分探索の最大比較回数ではありません。Dの32回は全要素を順に比べる線形探索の回数です。
Q5 正答はCです。Aは交換前のままです。Bは残りまで整列した結果で、最初の操作だけではありません。Cは最小値2と先頭の7を交換した状態です。Dは最大値を先頭に移しています。
Q6 正答はCです。Aは交換前です。Bは全体を整列した結果です。Cは2を4の前へ入れた状態です。Dは値を正しい位置へ移していません。
練習
表記カード:←は右側の値を左側へ入れる代入、whileからendwhileまでは条件が真の間くり返す処理、outputは値の出力です。≠は「等しくない」を表します。
科目B形式の練習
B1 正答はCです。3+8+2=13です。Aの10は先頭の3を加えず、8+2とした値です。Bの11は8を誤って6と足しています。Dの15は最後の2を二度加えた値です。
B2 正答はBです。A[1]=4、A[2]=7はx=9と異なるためiを増やし、A[3]=9で条件が偽になり、i=3です。Aの2は一つ早く止めています。Cの4は一致後も一つ増やしています。Dの9は要素番号ではなく探す値です。
練習
3-1 [2, 3, 5, 7]です。未整列部分[7, 3, 5, 2]から最小値2を選び、先頭の7と交換します。
3-2 4回です。線形探索は先頭から一つずつ比較するため、4番目で見つかった場合は4つの値を調べています。
3-3 スタックはC、B、キューはA、Bです。スタックはLIFO、キューはFIFOなので、入れた順と取り出す順が異なります。
3-4 26は17、26の順に比べ、2回目で見つかります。20は17、26、21の順に比べ、3回目に21を見て範囲が空になるため不成功です。各回で、添字0〜7から4〜7、さらに4〜4へ範囲が狭まります。中央の選び方は問題文の指定に従います。
3-5 移動後は[3, 7, 5, 2]です。整列済み部分の7を右へずらし、3を空いた先頭の位置へ入れます。次は5を整列済み部分[3, 7]へ入れます。
3-6 バブル整列は[3, 5, 2, 7]です。7と3、7と5、7と2を順に比べ、隣り合う値の順が逆のとき交換します。マージ整列は[7, 3]を[3, 7]へ、[5, 2]を[2, 5]へ整列し、併合して[2, 3, 5, 7]です。隣接比較の一巡と、整列済み部分列の併合が区別できていれば正解です。
考えよう・グループで話そう
答えは一つに決めません。二分探索については、整列済みなので中央より小さいか大きいかを使い、候補範囲の半分を除けると説明できていれば十分です。構造や整列方法の選択では、追加・参照・取り出しの順序、または比較・移動の途中状態を具体的に示し、理由を添えていることを確認します。
ミニ会話
LIFOとFIFOの説明、26を17→26の順に比べる手順、範囲が空になったときの不成功、整列で比較と移動を分ける考えを述べられていれば正解です。
成果物の完成例
備品IDを昇順にした結果は[5, 8, 12, 14, 19]です。ID 14は添字2の12、次に添字3の14と比較して見つかります。記録にない値を調べ、候補範囲が空になれば不成功です。
ワークシート
3-3 配列の添字は0、1、2、3で、値は12、5、19、8です。連結リストは12→5→19→8→終端です。出力欄はスタックがC、B、キューがA、Bです。
3-4 26の比較値は17、26で2回。20の比較値は17、26、21で3回です。20より大きい21を見て範囲が空になったら不成功です。整列の途中状態は表3-5の通りです。
第4章:擬似言語を行ごとに追う
自己チェック
1節
- アルゴリズムの手順を、特定のプログラム言語に依存しない形で記す表現です。
- 右側の式を計算し、その結果を左側のnへ入れます。
- 変数の型名を書きます。
2節
- xに1を加え、その結果をxに入れ直します。
- 8です。8を2で割った余りは0で、9の余りは1です。
- 実行しません。偽の枝か分岐の後へ進みます。
3節
- 3です。1始まりでは3番目の要素番号が3です。
- 0回です。最初の条件が偽なら本体へ進みません。
- i=5、s=18です。while条件は偽で、A[i]は評価しません。
4節
- 引数です。
- 戻り値です。
- 2です。104と110が偶数です。
- 0回、戻り値は0です。最初の条件1≦0が偽です。
確認問題(選択式)
Q1 正答はDです。
←は代入を表し、右側のx+1を計算して、その値を左側のxに入れます。Aは大小比較、Bは加算せず1を入れる処理、Cは値の交換を述べているため異なります。Q2 正答はBです。Aは先頭の2を加えず、5+9とした値です。Bは2+5+9=16です。Cは最後の9を10と読み違えた値です。Dは本文の別の配列の合計と混同しています。
Q3 正答はDです。mは先頭の7から始まり、A[2]=3は7より小さいので変わらず、A[3]=9は7より大きいのでmが9になります。Aは比べる向きを逆にして小さい方を残した値です。Bはmを一度も更新しなかった値です。Cは比べずに全要素を足した7+3+9=19です。
Q4 正答はCです。Aは一件も数えていません。Bは4だけを数えた値です。Cは4と3の二つが2より大きいため正解です。Dは要素数を数えただけで条件を適用していません。
Q5 正答はAです。Aは5が奇数なので5+1です。Bは5÷2を計算し、小数部分も切り捨てた値です。Cは入力値をそのまま返しています。Dは5を2倍しています。
Q6 正答はCです。Aは2だけを加えています。Bは4だけを加えています。Cは偶数の2+4=6です。Dは偶数の個数2を最大の偶数4に掛けた値です。
科目B形式の練習
B1 正答はAです。偶数の6と10を加え、合計は16です。Cの10は6を落としています。Bの13は奇数の3を加え、偶数の6を落としています。Dの26は奇数も含め全要素を加えています。
B2 正答はDです。1+2+3+4=10です。Aの6は4を加えていません。Bの8は2を落としています。Cの12は正しい和10に2をもう一度加えた値です。
B3 正答はBです。iが3、4、5のときに加算し、3+4+5=12です。Aは3だけを加えて4と5を落としています。Cは3と4だけで、5を落としています。Dは1と2も加えています。
練習
4-1 答えは6です。sは0から始まり、i=1の後に1、i=2の後に3、i=3の後に6です。
4-2 答えは2、3、4です。iが2、3、4のとき条件は真です。4を出力した後にiは5となり、5<5は偽なので終わります。
4-3 加算後のsは4、11、13、18です。終了時のiは5です。4回目の更新後に5≦4が偽になるためです。
4-4 本体は4回動きます。iが1から4の間は条件が真で、最後の更新後はi=5となり、5≦4は偽です。
4-5 sは1、3、6と変わります。最後の更新後にi=4です。
4-6 2、3、4の順です。i=5になったとき条件が偽になります。
考えよう・グループで話そう
配列の起点、条件の真偽、更新後の値を根拠にして説明できていればよいです。最後の条件が偽になった後は、本体にある配列参照へ進まないことを確認します。空の入力では最初の条件判定と初期値を説明できていれば認めます。
ミニ会話
矢印が代入、等号が条件の比較を表すこと、終了条件が偽なら配列を読まないこと、空の入力では初期値が戻ることを説明できていればよいです。
ワークシート
ワークシート4-1のsは0、3、4、8、10の順です。最後はi=5、条件は偽で、出力は10です。ワークシート4-2は入力 {102, 105, 108} の偶数が2件なので戻り値2、空の入力は0です。行ごとの条件と値を正しく記録していれば、途中表現の違いは認めます。
第5章:コンピュータの中で処理する
自己チェック
1節
- CPUが処理している命令やデータを、一時的に置きます。
- 補助記憶装置です。SSDなどは通常、電源を切っても内容を保ちます。
- CPUです。命令を読み、演算や制御を行います。
2節
- CPU、主記憶、補助記憶、入出力装置などです。このうち二つを挙げればよいです。
- アプリケーションです。OSはアプリケーションが動くための基本機能を提供し、資源を管理します。
- いいえ。実行に必要な命令などが読み込まれ、CPUで処理されて初めて実行中といえます。
3節
- 4件/秒です。80件÷20秒=4件/秒です。
- 応答時間です。
- いいえ。測定範囲や保存・入出力・ネットワークなど、ほかの条件も調べる必要があります。
4節
- 両方が動いている必要があります。一方が故障すると全体を使えない構成です。
- 0.81です。0.9×0.9=0.81です。
- (1−A)×(1−B)です。AとBはそれぞれの機器の稼働率です。
- 少なくとも故障が独立して起こると仮定します。切替装置が働き、共通原因故障がないことも、この章の計算条件です。
確認問題(選択式)
Q1 正答はAです。補助記憶のSSDは、通常、電源を切っても内容を保つ保存先です。Bの主記憶は実行中のデータを一時的に置きます。CのCPUは命令の実行や演算を担います。DのOSは資源を管理するソフトウェアで、データを長く保存する装置ではありません。
Q2 正答はCです。Aは利用者の目的に応じた処理、Bは周辺装置とのやり取り、Dは機器の基本動作の制御に関係します。CPUなどの資源を管理するのは、CのOSです。
Q3 正答はCです。Aは一回分です。Bは二回分です。Cは100×4=400ミリ秒です。Dは回数を誤って5回としています。
Q4 正答はBです。Aは10÷100です。Bは25÷100×100=25%です。Cは50÷100で、処理時間を実際より長くしています。Dは75÷100で、25ミリ秒の処理量に合いません。
Q5 正答はAです。設問では故障が独立しているため、直列は0.9×0.8=0.72です。BとCはそれぞれ一方の装置だけの稼働率です。Dは並列構成で少なくとも一方が動く確率です。
Q6 正答はDです。Aは直列の積です。Bは0.8だけ、Cは0.9だけで、一方の装置の稼働率です。Dは並列の式1−(1−0.9)(1−0.8)=0.98です。
練習
5-1 式は0.9×0.9です。全体の稼働率は0.81です。直列では二つとも動く必要があります。故障が独立しているという条件のもとで、両方が動く割合を掛け合わせます。
5-2 各部品の故障率は1−0.9=0.1です。全体が使えないのは二つとも故障したときなので、稼働率は1−(0.1×0.1)=0.99です。故障が独立し、共通原因故障がなく、切替装置が働くという条件での教材計算です。
練習
- 主記憶です。CPUが処理している命令やデータを一時的に置くからです。
- 直列は0.98×0.97=0.9506。並列は故障率0.02・0.03を使い、1−(0.02×0.03)=0.9994です。独立故障などの仮定を書きます。
- 80件÷20秒=4件/秒です。処理件数を処理時間で割ります。
考えよう・グループで話そう
唯一の答えはありません。例:「保存の4秒に通信時間を含むか分からないので、保存と通信を分けて測る。」観測値と追加確認の理由が結びついていればよいです。グループ活動では、入力装置、主記憶、CPU、出力・補助記憶を順に説明し、OSが資源を管理することを加えます。装置の設定変更や実機調査を答えに求めません。
ミニ会話
例:「この数値は、どの処理を測ったものですか。」「画面表示と保存の時間を分けて測ります。」測定範囲を確認し、値だけで原因を決めつけない答えを認めます。
ワークシート
5-1の記入例
- 入力装置。利用者の指示を受け取ります。
- 主記憶。実行中のプログラムや値を置きます。
- CPU。命令に従って処理します。
- 画面に表示し、保存する場合は補助記憶へ書き込みます。OSはCPU・主記憶・入出力装置などを管理します。
観測メモは、画面1秒、保存4秒、CPU使用率35%、主記憶使用率70%を正しく分け、原因を断定しなければよいです。追加確認の例は、測定の開始・終了点、通信時間を含むか、同じ操作中の使用率か、同じ処理を複数回行った時間です。
5-2の記入例
| 構成 | Aの故障率 | Bの故障率 | 式 | 全体の稼働率 |
|---|---|---|---|---|
| 直列 | 0.02 | 0.03 | 0.98×0.97 | 0.9506 |
| 並列 | 0.02 | 0.03 | 1−(0.02×0.03) | 0.9994 |
故障率、式、結果が一致し、独立故障などの仮定があればよいです。
第6章:通信とデータベースを読む
自己チェック
自己チェック:1節
- LANはせまい範囲のネットワーク、WANは離れた場所をつなぐ広い範囲のネットワークです。
- データを順序立てて届ける、接続を確立する、必要に応じて再送する、のいずれかです。
- 接続の確立と再送です。UDPはこの二つを提供しません。
自己チェック:2節
- ドメイン名などの名前と、IPアドレス等です。
- IPネットワークで通信相手を識別し、データを届ける宛先に使います。
- HTTPです。
自己チェック:3節
- 表の各行を一意に識別することです。
- 外部キーです。
- 同じ備品名が複数ある場合があり、備品名だけでは行を一意に決められないことがあるためです。
自己チェック:4節
- 一部の行だけ更新し、古い値が残る更新時の不整合が起きることがあります。
- 分類IDです。
- 同じデータの重複や、更新時の矛盾を減らします。
確認問題(選択式)
Q1 正答はBです。DNSは名前に対応するIPアドレス等を調べます。AのHTTPはWebの要求と応答を扱い、CのTCPは接続や順序、再送に関係します。DのUDPはデータグラムを送ります。いずれも通信で使いますが、名前の調査はDNSの役割です。
Q2 正答はDです。備品表の分類IDは、分類表の分類IDを参照して二つの表の行を関連づけます。Aは備品表で行を識別する備品IDの役割です。Bは分類名であり、示された分類IDとは別の値です。Cは表示順の列ですが、分類IDは表の順番を決める値ではありません。
Q3 正答はAです。DNSの問い合わせはIP上でUDPまたはTCPにより運ばれます。BのHTTPはWebの要求・応答、CのTCPだけ、DのIPだけでは、問題の組合せを示しません。
Q4 正答はBです。Aは備品表の各行を識別するIDの役割です。Bは別表の主キーを参照する外部キーです。Cは分類名を各行に繰り返して記録した値です。Dは表示順を決める値で、どちらも別表の主キーを参照する役割ではありません。
Q5 正答はDです。Aはすべての行が自動で更新されるとしていますが、複製した値は自動では同期しないため誤りです。Bは重複していても検索自体はできます。Cは重複があっても備品登録はできます。Dは一部の行だけ更新される不整合です。
Q6 正答はDです。AはDNSの機能です。Bはブラウザーなどの働きです。Cはデータ設計の処理です。DはTCPが通信で扱う機能です。
練習
6-1 主キーの値または値の組合せは重複せず、主キーの値はNULL(未設定)になりません。この二つは別の性質です。空欄は表の説明上の言い方で、空文字とNULLを同じ意味にしません。
6-2 答えは更新時の不整合、または更新漏れです。担当部署を変えるときに複数の行を直す必要があり、一部だけが古いまま残る可能性があります。
6-3 答えはDNSです。DNSはドメイン名などの名前に対応するIPアドレス等を調べます。
6-4 答えの例は、分類ID・分類名・担当部署を分類表に置き、備品ID・備品名・分類IDを備品表に置く方法です。備品表の分類IDを外部キーとして分類表の分類IDを参照します。同じ分類情報を一か所で直せるため、更新漏れを減らせます。
6-5 答えは「周辺機器」です。備品ID 101の行で分類ID K1を確認し、表6-2のK1の行から分類名を読みます。分類IDがどちらの表でも一致することを確かめます。
考えよう・グループで話そう
考えようは、複数の行のうち対象となる行をすべて見つけ、変更後も同じ値になっているか確認する、と説明できればよいでしょう。グループ活動では、DNSが名前を調べ、IPが宛先を扱い、TCPまたはUDPがデータを運び、HTTPがWebの要求と応答を扱う説明になっているかを確かめます。TCPを使うかUDPを使うかは、設問の条件に沿っていることを見ます。
ミニ会話
「DNSで名前を調べる」「HTTPでWebの要求と応答を扱う」「備品表の分類IDは外部キー」と、名称と役割を対応させて説明できればよいでしょう。別の説明でも、主キーと外部キーを混同していなければ認めます。
ワークシート
ワークシート:WS6-1 穴埋めは順に「IPアドレス」「宛先」「再送」「要求」です。自分で書く欄は、UDPが宛先などを付けた一まとまりのデータを送ること、UDP自身は接続の確立や再送を提供しないことが説明できていればよいでしょう。
ワークシート:WS6-2 穴埋めは順に「分類ID」「備品ID」「分類ID」です。自分で書く表には、分類IDを主キーとする分類表、備品IDを主キーとする備品表、備品表から分類表を参照する分類IDがあれば合っています。分類名と担当部署を一か所にまとめる理由も記してください。
第7章:情報を守る仕組みを考える
自己チェック
| 問 | 答えの例 | 理由 |
|---|---|---|
| 1節-1 | 機密性。 | 許可されていない人が読めているためです。 |
| 1節-2 | 完全性。 | 記録の分類が正確でなくなっています。 |
| 1節-3 | 可用性。 | 必要なとき端末を使える状態かに関わります。 |
| 2節-1 | 脅威は損害を与える可能性のある出来事や原因で、脆弱性は問題を起こす弱点です。 | 出来事と仕組みの弱点を区別します。 |
| 2節-2 | 脆弱性。 | 入力の確認がない仕組みが弱点になっています。 |
| 2節-3 | 復旧を助けます。 | バックアップは元の記録へ戻す助けですが、誤入力自体を防ぐものではありません。 |
| 3節-1 | 誰か、何か。 | 認証は利用者や機器を確かめます。 |
| 3節-2 | 認証された利用者や機器が行える操作。 | 認可は操作の権限を決めます。 |
| 3節-3 | 誰が変更したか。 | 共有IDでは同じIDを使う人を区別しにくくなります。 |
| 4節-1 | 同じ鍵。 | 共通鍵暗号では暗号化と復号に同じ鍵を使います。 |
| 4節-2 | 受信者の公開鍵で暗号化し、受信者の秘密鍵で復号します。 | 対応する秘密鍵を持つ受信者が読めるようにします。 |
| 4節-3 | 作成者。 | ハッシュ値はデータから計算でき、作成者との結び付きは示しません。 |
| 4節-4 | 署名者の秘密鍵で署名し、対応する公開鍵で検証します。 | 署名を作る鍵と検証する鍵の役割は異なります。公開鍵と署名者の対応も確認します。 |
確認問題(選択式)
Q1 正答はCです。機密性は、情報を許可された人や仕組みだけが見られる状態を保つ性質です。Aの可用性は必要時に使えること、Bの完全性は情報の正しさ、Dの保守性は保守のしやすさに関する語です。
Q2 正答はAです。個別IDで操作した人を識別し、操作と変更の記録を残すと、誰が何をしたかを確かめられます。Bは共有IDのため、変更時刻だけでは利用者を区別できません。Cは変更後の値だけで変更者や変更前の値が分かりません。Dは暗号化しても共有IDの利用者を区別できません。
Q3 正答はAです。保存時の暗号化は、許可されていない人に読まれる危険を減らし、機密性を守る助けになります。Bは情報の正しさ、Cは必要時に使えること、Dは修正や管理のしやすさです。
Q4 正答はAです。Aは署名者の秘密鍵で署名し、対応する公開鍵で検証する手順です。Bは鍵の役割が逆です。Cは受信者の鍵を署名に使っています。Dは公開鍵だけでは秘密鍵による署名を作れません。
Q5 正答はAです。署名者の秘密鍵で作成し、対応する公開鍵で検証するディジタル署名は、作成者の確認と変更の検出を助けます。Bは受信者だけが読むための暗号化、Cはデータの照合、Dは復旧の助けです。
Q6 正答はDです。Aは不審なファイルを実行する危険があります。Bは拡張子変更だけでは安全確認になりません。Cは実行の危険を解決しません。Dは不審な添付を開かず、確認できる担当者へ相談します。
科目B形式の練習
B1 正答はAです。Aは状況を記録し、担当窓口の手順につなげます。Bは連絡を遅らせ、Cは窓口への報告を欠きます。Dは状況の記録や連絡をしません。
B2 正答はBです。共有端末の利用を終えて交代するときは、自分のIDからログアウトし、次の人が自分のIDで使える状態にします。Aの認証付き画面ロックは一時離席には役立ちますが、利用終了後の交代時にはログアウトが必要です。Cは認証情報を端末に残し、Dは自分のIDで操作できるため不適切です。
練習
| 問 | 答えの例 | 採点の目安 |
|---|---|---|
| 7-1 | 機密性です。許可のない人に内容が見えているからです。 | 性質名と、許可のない閲覧に触れていればよい。 |
| 7-2 | 対応する署名がその公開鍵で検証でき、署名者確認と改ざん検出を助けます。ただし公開鍵が署名者のものかを確かめる必要があります。 | 検証の意味と鍵の対応という前提がある。本人や内容を完全に保証すると書かない。 |
| 7-3 | 「入力値を保存前に確かめる」と「変更した人と値の履歴を残す」です。前者は誤った値の保存を見つけやすくし、後者は変更の経緯を確かめる助けになります。 | 二つの候補を選び、入力確認と履歴記録の目的を区別する。閲覧権限だけでは誤入力を防げず、共有IDでは変更者を特定できません。バックアップは復旧には役立ちますが、予防策ではありません。 |
7-4 署名者であるラジャンの秘密鍵で署名し、対応する公開鍵で検証します。署名の検証は作成者の確認と改ざんの検出を助けます。ただし、その公開鍵が本当にラジャンのものかという対応関係を別に確かめる必要があります。
7-5 ハッシュ値は、同じデータを照合するための値です。誰でもデータから計算できるため、値だけでは作成者とデータの結び付きを確かめられません。作成者確認を助けるには、署名と、署名者に対応する公開鍵を確かめる必要があります。
考えよう・グループで話そう
保存時の暗号化は、保存データを直接読まれる危険を減らす助けになります。ただし、利用者が誤った分類IDを入力する問題には、入力値の検査や変更履歴など別の対策が必要です。暗号化だけで完全性を保てると説明しないことが採点の目安です。
停電では、復旧手順とバックアップの日時・内容を確認します。代替端末の利用条件も見ます。回復策と再発予防を分け、理由を述べていれば認めます。
ミニ会話
認証と認可の違い、暗号化と署名で使う鍵の向きを説明できていれば正解です。公開鍵と人の対応を確かめる必要にも触れます。使える表現の空欄には、文脈に合う性質名・操作・鍵を入れます。
ワークシート
ワークシート7-1の①では、資産は貸出記録です。脅威は権限のない閲覧です。脆弱性は閲覧設定の未確認です。影響は許可のない人に内容が見えることです。CIAは機密性で、対策は閲覧権限の確認です。②は完全性に関わり、入力値の確認と変更履歴が対策候補です。③は可用性に関わり、復旧手順とバックアップの確認が対策候補です。提案が弱点に対応するかも見ます。
ワークシート7-2は、受信者だけが読む場合、受信者の公開鍵で暗号化し受信者の秘密鍵で復号します。署名の場合、送信者の秘密鍵で署名し、送信者に対応する公開鍵で検証します。鍵の対応関係が信頼できることが前提です。用途と鍵の向きを正しく記入しているかを採点します。
第8章:システムを作り、確かめる
自己チェック
| 問 | 答えの例 | 理由 |
|---|---|---|
| 1節-1 | 要件定義です。 | 利用者や関係者が必要とする機能や条件を整理します。 |
| 1節-2 | 設計です。 | 画面に状態欄を置くという具体的な構成を決めています。 |
| 1節-3 | 誰にとって、どの操作が簡単なのかを質問し、必要な条件や確認方法を決めます。 | あいまいな語だけでは、作る側と利用者が同じ意味に理解するとは限りません。 |
| 2節-1 | 入力、事前条件、操作、期待結果を記録します。 | 実際の動きを期待結果と比べるためです。 |
| 2節-2 | 結合テストです。 | 複数部品の間でデータが正しく受け渡されるかを見ます。 |
| 2節-3 | いいえ。別の条件として扱います。 | 在庫数は個数、貸出状態はその備品が貸出中かどうかを表します。 |
| 3節-1 | 要件定義、設計、実装、テストなどを段階的に進めます。 | 前工程で決めた内容を次工程へ渡す進め方だからです。 |
| 3節-2 | 変更が要件、設計、実装、テストに与える影響を確かめます。 | 変更の影響が及ぶ部分を調べてから、次工程の内容を決めるためです。 |
| 4節-1 | 確認や意見を次の反復の要件や改善に反映します。 | 短い開発期間をくり返し、動くものを確かめながら改善する方式です。 |
| 4節-2 | 要件の変化、途中で利用者が確認できるか、必要な成果物や手順などを見ます。 | 開発方式は一律に優劣を付けず、場面の条件に合わせます。 |
確認問題(選択式)
Q1 正答はDです。単体テストは個々のプログラム部品を確かめます。Aの受入れテストは利用者や発注側の視点、Bのシステムテストは完成した全体、Cの結合テストは部品間の受け渡しや連携を確かめます。
Q2 正答はBです。要件定義では、利用者が必要とする機能や条件を明確にします。Aは画面などを具体化する設計、Cはプログラムを作る実装、Dは運用中の障害と対応の記録に当たり、要件定義の作業ではありません。
Q3 正答はAです。結合テストは画面と登録処理など、部品間のデータ受け渡しを確かめます。Bは一つの部品、Cはシステム全体、Dは利用者側の受入れ条件を確かめます。
Q4 正答はBです。設計工程では、要件を画面や処理の構成に具体化します。Aはプログラムを作る実装、Cは稼働中のサービスを扱う運用、Dは必要な機能や条件を定める要件定義です。
Q5 正答はDです。Aは各工程で確認する方法ですが、短い周期の反復を使いません。Bは最後に一度だけの確認です。Cは意見を次の要件へ反映しません。Dは短い反復で成果を示し、意見を次へ反映します。
Q6 正答はDです。Aは大量処理時の負荷、Bは部品間のデータ受け渡し、Cは処理時間や処理量を調べます。Dは件数0のような境界値を確かめます。
練習
8-1 0件は、入力が空の最小条件です。通常の件数では見つからない誤りがないかを確かめます。在庫数0も数の境界ですが、貸出中かどうかは別の状態条件として記録します。
8-2 短い開発期間で動くものを作り、利用者に確認してもらい、意見を次の改善に反映する進め方を検討します。問題文では希望が短い周期で変わり、毎回確認できるため、この条件がアジャイル開発の反復に合っています。
練習
| 問 | 答えの例 | 採点の目安 |
|---|---|---|
| 1 | 単体は判定部品、結合は画面と登録処理、システムは貸出全体、受入れは利用者の場面で必要条件を確かめます。 | テスト範囲と確認内容の対応を示す。 |
| 2 | 要件は二重登録を防ぐ条件、設計は判定方法、実装は処理作成、テストは条件確認、運用は利用中の状態や障害への対応です。 | 各工程の役割を貸出例に結び付ける。 |
| 3 | アジャイル開発の反復を検討します。利用者が短い周期で成果を確かめ、意見を次へ反映できるためです。 | 進め方と、問題文の確認頻度・変更の条件に合う理由を書く。 |
考えよう・グループで話そう
入力件数0件は、空の入力で処理が正しく終わるかを確かめる条件です。在庫数0は貸出可能な個数の境界です。貸出中は備品の状態なので、在庫数とは別に入力・事前条件へ書きます。
予約を受け付ける要件へ変える場合は、備品管理者や利用者に、予約の対象・順番・取消しなど必要な条件を確認します。要件記録、設計、登録処理、画面表示への影響を調べます。例として「貸出中の備品に予約を一件入れると、予約待ちとして表示され、貸出記録は増えない」というテストケースを追加できます。条件と期待結果に理由があれば、別の具体例も認めます。
ミニ会話
要件を作り方と区別し、在庫数と貸出状態、条件と期待結果、利用者の意見を反映する方法を説明できていればよいものとします。使える表現の空欄は、会話やケースの条件に合う言葉で完成させます。
ワークシート・ケースカード
ワークシート8-1の例では、在庫数0の行は境界・在庫なし、在庫数1の行は最後の一個、貸出中の行は状態・二重要求を見ています。存在しない備品番号の穴埋め例は、対象を貸出登録全体、レベルをシステム、観点を異常な番号とし、拒否して記録を作らない結果にします。自分で書く欄は、在庫数2・返却済みなら受付け、貸出中なら拒否することを期待結果へ記します。
ワークシート8-2では、規則が安定している場面は、工程ごとに確認する進め方が候補です。希望が変わり、動く画面をその都度見られる場面では、短い反復が候補です。方式名だけでなく、変化や確認の条件を理由に含めます。
第9章:プロジェクトとサービスを管理する
自己チェック
1節-1 スコープです。プロジェクトで行う作業や成果物の範囲を示します。
1節-2 WBSです。作業を成果や作業単位に分けて整理します。
1節-3 別の観点です。工程は順序や期間、コストはお金や資源、品質は成果物が条件を満たすかを見ます。
2節-1 依存する作業経路のうち最も長く、最短完了期間を決める経路です。
2節-2 2+3+1=6日です。
2節-3 始められません。Dの前にBとCの両方が終わる条件です。
3節-1 起きる可能性と、起きた場合の影響です。別々に見ると、優先して備える内容を考えられます。
3節-2 同じではありません。前者は未発生の不確実なこと、後者はすでに起きている状況です。
3節-3 後続作業の開始条件と、全体の完了時点への影響を見直します。
4節-1 対象サービス、測定期間、予定稼働時間、停止時間の数え方、目標値などです。少なくとも比べる値どうしで同じ条件を確かめます。
4節-2 (720−3.6)÷720×100=99.5%です。停止以外の遅れは含めない教材用計算です。
4節-3 同じではありません。復旧は利用者への影響を抑えてサービスを戻す対応、原因調査は理由を調べて再発を減らす活動です。
確認問題(選択式)
Q1 正答はCです。Aは9日で最長ではありません。Bは8日です。CのA-E-Dは10日で最長となり、全体期間を決めます。Dは図の経路として示されていません。
Q2 正答はCです。使える時間は720−3.6=716.4時間で、716.4÷720×100=99.5%です。Aは目標値を計算結果と取り違えています。Bは停止時間3.6時間を先に4時間へ丸めると、716÷720×100=約99.4%となる誤計算です。停止時間を途中で丸めずに計算します。Dは停止時間があるのに100%としており、与件に合いません。目標との比較は、測定条件が同じ場合に限ります。
Q3 正答はCです。AはA-C-Dの期間、BはA-B-Dの期間です。Cは最長経路A-E-Dの10日で、全体期間を決めます。Dは三つの経路の長さを合計した値で、並行する作業を直列に扱っています。
Q4 正答はBです。Bは6−4=2日です。Aは余裕がない場合の値、CはC自身の日数4を余裕と取り違えた値、DはBの日数6を余裕と取り違えた値です。
Q5 正答はDです。設問では故障が独立しているため、直列は0.95×0.90=0.855です。Aは並列の式、BとCは単独の構成要素の値です。
Q6 正答はBです。AはC経路の一部を落としています。Bは2+max(4,5)+3=10日です。Cの11日はA+B+Cで、BとCを並行する条件とDの作業日を正しく表しません。DはBとCもDもすべて直列に足した値です。
練習
9-1 A-B-Dは7日、A-C-Dは6日です。C側の余裕は7−6=1日です。
9-2 まず代替受付などを案内して影響を抑え、サービスを回復します。原因の特定と再発防止策の検討は、問題管理として別に進めます。
練習
1 最短完了期間は7日です。A-B-Dは2+4+1=7日、A-C-Dは2+3+1=6日なので、長い方のA-B-Dが全体期間を決めます。
2 まず利用者への影響を小さくし、代替手段を案内するなどしてサービスを回復します。別に、原因を調べて再発を減らす活動を進めます。原因が分かるまで復旧を待つ必要はありません。
3 変更後のA-B-Dは2+5+1=8日、A-C-Dは2+3+1=6日です。全体は8日です。C側の余裕は8−6=2日です。
4 目標を満たします。99.5%は99.0%以上です。同じ期間・停止時間の定義で測った値という条件を添えます。
考えよう・グループで話そう
起きる可能性と影響を分けて書けていればよいでしょう。異なる項目を比べる基準にも触れます。
状況の説明、代替受付などの復旧、原因の確認を分けていればよいものとします。
ワークシート
ワークシート9-1 Bの最も早い終了は2+4=6、Dの最も早い開始はBとCの終了の遅い方で6、最も早い終了は6+1=7です。最長経路はA-B-Dの7日です。Bが5日なら全体は8日、C側の余裕は8−6=2日です。
ワークシート9-2 結果は99.5%、目標を満たします。別の値と比べるときは測定期間、予定稼働時間、停止時間の数え方を確認します。
ワークシート9-3 利用者への影響は、貸出記録を確認できず、貸出や返却の手続きが止まることです。まず代替手段を案内してサービスを戻します。別欄に原因と再発防止策を記します。
第10章:知識をつないで提案する
自己チェック
1節
- どの利用者が、何をするとき、どのような困りごとがあるかを整理します。目的と必要な範囲も確認します。
- 「貸出中か返却済みかを表示する」はシステムの機能なので、手段に当たります。
- 利用者、権限、利用条件、必要なデータなどがあります。
2節
- 評価する期間、件数、金額の範囲などをそろえます。費用に含む項目も確認します。
- 1件当たりの売上から、1件当たりの変動費を引きます。
- 計算は置いた前提に基づくため、必要な機能、安全、運用、実際の効果を別に確認するからです。
3節
- 著作権は作品、特許権は発明、商標権は商品やサービスを見分ける名前・マークに関係します。
- いいえ。見つけた場所だけでは利用条件が分かりません。出どころと利用条件を調べ、必要なら担当者や権利者に確認します。
- 名前、顔写真、住所、メールアドレスなどから二つを答えます。
4節
- 案Bが低く、差は44,000円です。Aは228,000円、Bは184,000円です。
- 権限管理、バックアップ、利用者への説明、サポート範囲などから二つを挙げます。
- 表や文章で、与えられた金額・期間・件数と、まだ確認していない条件を別に記します。
確認問題(選択式)
Q1 正答はBです。名前やマークは商品・サービスを見分ける標識として扱われ、商標権に関係します。Aの著作権は作品、Cの特許権は発明に関係します。Dの営業秘密は、会社が秘密として管理する情報に関係し、表示の権利を示すものではありません。
Q2 正答はDです。1件当たりの限界利益は500−200=300円です。60,000÷300=200件です。Aは固定費を販売価格だけで割った値です。Bは変動費だけで割った値です。Cは限界利益を500+200=700円と誤って足し、60,000÷700を切り上げた86件です。
Q3 正答はAです。Aは500−200=300円です。Bは変動費です。Cは売上価格です。Dは売上と変動費を足した値です。
Q4 正答はBです。Aは計算式にない値です。Bは60,000÷300=200件です。Cは限界利益の額を件数と取り違えています。Dは販売価格を件数にした値です。
Q5 正答はCです。Aは固定費増加と逆です。Bは固定費の影響を無視しています。Cは限界利益が同じなら、固定費を回収する件数が増えるため正しいです。Dは条件から導けません。
Q6 正答はDです。Aは初期費用と件数ごとの費用を組み合わせています。Bは月額費用と件数ごとの費用を組み合わせています。Cは件数ごとの費用だけです。Dは同じ契約条件なら初期費用と月額費用が比較期間内で一定です。
練習
10-1 答えは案Bです。Aは120,000+12×5,000+12×400×10=228,000円です。Bは40,000+12×12,000=184,000円で、44,000円低くなります。権限管理やバックアップなどを同じ条件で確認します。費用だけで採用を決めない点も含めます。
10-2 初期費用と月額費用は、同じ契約条件なら比較期間内で一定の部分です。1件ごとの費用は件数に応じて変わる部分です。件数が400件から増減しても、初期費と月額費は変わらない一方、従量費は件数に比例するためです。
練習
1 答えは200件です。式は60,000÷(500−200)=60,000÷300=200です。1件の売上から変動費を引き、固定費をその差で割ります。
2 答えの例は、案Bを費用面の候補とすることです。表10-1の年間費用は、案Aが228,000円、案Bが184,000円です。差は44,000円です。追加確認は、権限管理とバックアップです。サポート範囲や利用者への説明を選んでもよいでしょう。費用が低いことだけで最終決定しない点を評価します。
3 答えの例は、素材の出どころと利用条件を確認し、学校の担当窓口または権利者へ問い合わせることです。素材の種類や使い方によって確認点が異なるため、本文だけで利用可否を決めません。
考えよう
答えの例は、名前が貸出状態の確認に必要か、誰が閲覧できるか、どの範囲で保存するかを担当者と確認することです。使わなくても目的が達成できる情報は集めず、法律上の個別判断は学校の窓口や専門家に確認します。目的と確認事項の両方が書けていれば適切です。
グループで話そう
答えの例は、必要な機能、権限管理、バックアップ、サポート、利用者への説明です。費用の比較に使った期間と件数を共通にし、費用以外の評価軸を一つ以上示していればよいでしょう。役割を分けて話し合い、最後に候補と未確認事項をまとめます。
ワークシート
ワークシート
- ワークシート10-1:表10-2のBの年間費用は184,000円です。Aとの差は44,000円です。式は40,000+144,000+0=184,000円、228,000−184,000=44,000円です。
- ワークシート10-2:完成例の提案を参照します。目的、データ、処理、費用、リスク・確認事項を分け、候補と数値根拠を書きます。結論を保留する場合も、必要な追加情報が具体的なら評価できます。
- 成果物:Aが228,000円、Bが184,000円、差が44,000円と書きます。Bは費用面の候補とし、権限・バックアップ・サポートを確認します。