システムアーキテクト試験 2023年 午後102


セミナー管理システムに関する次の記述を読んで、設問に答えよ。

 ソフトウェアパッケージの開発・販売を行っているC社では、全国主要都市で自社製品の説明会を開催していたが、新たに無料のオンラインセミナーを開催することになり、それをサポートするセミナー管理システム(以下、新システムという)をWebシステムとして開発することになった。  
〔セミナー管理業務の概要〕  C社のセミナー管理業務の概要は次のとおりである。  (1)セミナー登録企画担当者がセミナーを企画し、企画書を作成する。セミナーは、企画担当者のほか、講演資料を作成して講演を行う講師担当者及びセミナーの運営を行う運営担当者で担当する。企画・講師・運営の三つの担当役割について、それぞれ複数名の担当者を設定でき、一人の担当者が複数の担当役割を兼務する場合もある。一つの担当役割に複数名を設定した場合は、その中でリーダーを一人設定する。セミナーには、リソースのひっ迫を避けるために受講する人数について定員を設定している。企画書には、セミナー名、セミナー内容、定員、開催日時、終了時刻及び企画・講師・運営の各担当者の担当者IDと担当者名が記載されている。企画担当者は、作成した企画書を上長に提出し、承認を受けた後、実施予定セミナーとして登録する。  (2)募集・申込み企画担当者はセミナーの概要を募集画面に掲載して受講申込みを受け付ける。受講を希望する者は申込入力画面からセミナーを選択し、氏名、会社名、部署名、役職名、メールアドレスなどの情報を入力して申込みを行う。セミナーについて同一メールアドレスで申込みが重複しておらず、セミナーの定員に達していない場合は申込みを確定し、受講確定メールを受講申込者へ送付する。申込みはセミナー開催の3日前に締め切る。  (3)開催準備、開催案内運営担当者はセミナー開催の2日前にオンラインルームを開設し、アクセスURLとアクセスキーを決定する。運営担当者は受講申込者に開催案内メールを送信する。開催案内メールには、受講確定メールに記載した内容に加えて、アクセスURL及びアクセスキーが記載されている。企画担当者は、受講申込者に回答してもらうアンケートを作成する。  (4)受講受講申込者はセミナー開催当日にWebブラウザからアクセスURLにアクセスし、オンラインルームにログインしてセミナーを受講する。なお、受講申込者は多重ログインできない。  (5)アンケートセミナー終了後、運営担当者から受講申込者にアンケートURLが記載されたアンケートメールを送信する。受講申込者はアンケートURLにアクセスし、受講ID、氏名及び受講の有無を入力し、個別の設問に回答する。また、受講した者(以下、受講者という)はセミナーの評価点を10点満点の数字で入力し、受講しなかった者は受講しなかった理由を入力する。入力したアンケートの回答は変更できない。  (6)集計・分析企画担当者はアンケートの回答について、集計・分析を行った結果を上長に報告する。また、担当者の業務負荷確認のために、1か月ごとに担当したセミナーの数と担当役割を集計して上長に報告する。  
〔新システムの概要〕  情報システム部のD課長は、業務の概要を基に新システムの設計を行った。  (1)セミナー登録セミナーの企画書を登録する機能。企画担当者が企画書の内容を入力すると、セミナー、セミナー担当の各ファイルにレコードを作成する。この時、セミナーに一意のセミナーIDを付与する。セミナー担当に登録する担当者IDは別システムで事前に付与されている。  (2)募集・申込み受講を希望する者からの申込みを受け付け、申込みの重複及び定員超過を判定し、受講を確定させる機能。申込判定がOKのときは申込確認画面を表示し、確定ボタンが押されたら受講を確定する。申込確認画面で、取消ボタンが押されたら申込入力画面に戻る。受講確定時に受講IDを発行し、受講申込ファイルにレコードを作成する。受講IDは、英数字8桁から成る一意のIDである。受講確定後、受講ID、セミナーID、セミナー名、開催日時、終了時刻及びセミナー内容を記載した受講確定メールを受講申込者へ送付する。  (3)開催準備、開催案内開設したオンラインルームのアクセスURLとアクセスキーをオンラインルームフアイルに登録し、受講申込者に開催案内メールを送信する機能、及びセミナー終了後に回答してもらうアンケート画面を作成する機能。開催案内メールには、受講確定メールに記載した内容に加えて、アクセスURL及びアクセスキーを記載する。  (4)受講受講を受け付ける機能。受講申込者はアクセスURLにアクセスし、開催案内メールにある受講ID及びアクセスキーを転記してオンラインルームにログインし、セミナーを受講する。ログイン時に受講ID及びアクセスキーのチェックを行い、受講ファイルにレコードを作成する。この時、受講受付日時に現在日時を設定する。  (5)アンケート対象者にアンケートメールを送信する機能、及びアンケート画面から入力された回答を基にアンケートファイルにレコードを作成する機能。  (6)集計・分析アンケートの回答の集計・分析、及び担当者の担当役割とセミナー数を集計する機能。D課長は、上記の概要を基に新システムのデータ設計を行い、主要なファイルを表1のように設計した。
システムアーキテクト試験(令和5年 午後I 問2 表1)
 また、新システムにおける募集・申込みの処理について、表2のように設計した。
システムアーキテクト試験(令和5年 午後I 問2 表2)
〔指摘及び追加要望〕  D課長が設計内容を上長に説明したところ、次のような指摘及び追加要望が出された。  ・申込確認処理について、今のままでは確定ボタンを押した際に定員を超過する可能性がある。定員超過の際は、エラーとするよう変更してほしい。  ・今のログイン方式では、通信障害などで接続が切れた場合に再接続ができなくなる。接続が切れたことを検知した場合には、当該受講IDで再ログインができるようにしてほしい。  ・アンケートURLにアクセスした際に、入力画面で受講ID及び氏名を入力させるのではなく、あらかじめ受講ID及び氏名を埋め込んだページを開いて回答させるようにしたいので、個別のアンケートURLを送してほしい。  ・開催したセミナーの申込率、受講率及び平均評価点の三つの項目を一覧表示する機能を追加してほしい。ここで、申込率は定員に対する受講申込者数の割合、受講率は受講申込者数に対する受講者数の割合、平均評価点はアンケートに回答した受講者の評価点の平均点を示す。  
〔新システムの設計変更〕  D課長は指摘及び追加要望を受け、次のような設計変更を行った。  ・申込確認画面で確定ボタンが押されたときに再度申込判定の処理を行うようにし、エラーになった場合はエラーメッセージを表示して処理を終了する。また、確定ボタンを押してもエラーとなることがある旨を申込確認画面に表示する。  ・受講ファイルに、接続フラグという属性を追加し、初期値として”1”を設定する。別途、接続が切れたことを検知した際に接続フラグに“g”を設定するようにする。その上で、再接続する際の①ログイン時の受講IDに関するチェック及び受講ファイルの更新処理を新たに追加する。  ・セミナー終了後に受講申込者に送信するアンケートURLを、受講IDごとの個別のURLに変更する。これに伴って、②表1中のある属性を別のファイルに移す。  ・セミナーファイルに、申込率、受講率及び平均評価点の属性を追加する。申込率、受講率及び平均評価点は、セミナーID及びセミナーIDから検索した受講IDを用いて表1の各ファイルを検索し、その結果を用いて、それぞれ、表3に示す計算式で求める。ただし、各計算式の除数が0のときは項目の値を0とする。   システムアーキテクト試験(令和5年 午後I 問2 表3)

設問1(1)〔新システムの概要〕について答えよ。

セミナー担当ファイルに主キーを設定する場合、主キーとするものを表1中の属性を用いて全て答えよ。
模範解答
セミナーID,担当役割,担当者ID
解説

核心となるキーワード・論点整理

  • セミナー担当ファイルの主キー設定
  • 主キー: レコードを一意に特定するためのキー
  • セミナーID、担当役割、担当者ID の関係性
  • 【問題文】にある担当役割が複数担当者を持つこと、一人の担当者が複数の役割を兼務できる点

なぜ「セミナーID,担当役割,担当者ID」が主キーとなるのか

セミナー担当ファイルの属性(問題文より)

ファイル名主な属性(下線は主キーを示す)
セミナー担当セミナーID, 担当役割, 担当者ID, リーダーフラグ
※ 主キーの下線は省略されているが、設定を問われている。

設計背景と論拠

  • セミナー担当ファイルは、「1つのセミナーに対して、複数の担当役割が存在し、その役割ごとに複数の担当者が割り当て可能」(問題文(1)の記述)
  • また、「一人の担当者が複数の担当役割を兼務する場合もある」(問題文(1))
  • したがって、
    • 同じセミナーIDで、異なる担当役割に同じ担当者IDが割り当てられるケースがある
    • 同じセミナーIDで、同じ担当役割に複数担当者IDが割り当てられるケースがある
  • このため、単にセミナーID、担当役割、または担当者IDのどれか一つ、または二つの組み合わせだけではレコードを一意に特定できない。
  • 3つすべてを組み合わせて初めて「1つのセミナーにおける役割別・担当者ごとの割り当て」を一意に識別できる。
つまり、
「セミナーID」+「担当役割」+「担当者ID」 の組み合わせが主キーとなる。

受験者が誤りやすいポイント・ひっかけ

  • リーダーフラグを主キーに含めるべきと誤解する:
    リーダーフラグは「リーダーか否かの属性」であり、主キーとしては不適切。なぜなら、「1」か「g」の2値をとるだけで、それ自体でレコードを特定できない。
  • 担当役割や担当者IDだけで主キーを構成しようとする誤り:
    担当者は複数の役割を兼務できるため、担当者IDだけでは一意に特定できず、担当役割も考慮する必要がある。
  • セミナーIDだけで主キーとする誤り:
    一つのセミナーに複数の担当者や役割が存在するため、セミナーID単独では不十分。
  • 「セミナーID」と「担当役割」のみでは不十分:
    複数担当者が同じ役割を担当できるため、担当者IDを含める必要がある。

試験対策として覚えておくべきポイント

  • 主キーとは何かを明確に理解すること
    → 主キーはレコードの一意性を保証するためのキー。 "一意に識別できる属性の組み合わせ" であること。
  • 複合主キー(複数属性から成る主キー)を適切に設定するケースがあること
  • 担当者や役割などの多対多の関係をモデリングするときは複合キーになることが多い
  • 不要な属性(状態やフラグなど)は主キーに含めない
  • 問題文中の役割権限や多重性の関係に注意し、それを元に主キーを考える

以上の理解を踏まえると、セミナー担当ファイルの主キーは
「セミナーID」「担当役割」「担当者ID」
の3つの組み合わせが適切であることが納得できるでしょう。

設問1(2)〔新システムの概要〕について答えよ。

表2中の(a), (b)に入れる適切な字句を答えよ
模範解答
a:受講申込 b;メールアドレス
解説

模範解答の核心となるキーワードや論点

  • (a):検索対象ファイル → 「受講申込ファイル」
  • (b):重複チェックの対象項目 → 「メールアドレス」
この2点が解答の核心です。

解答となる理由の論理的説明

問題文の【新システムにおける募集・申込みの処理】の「申込判定(重複)」の記述を見てみましょう。
  • 「当該セミナーIDで、(a)ファイルを検索し、入力された(b)と同じ(b)が存在すればエラー」
ここで、重複とは「同じセミナーで同一のメールアドレスによる申し込みが複数存在しないか」を判定することです。
なぜ「受講申込ファイル」なのか?
→ 受講申込情報は「受講申込ファイル」に記録されており、このファイルが申込者情報(氏名、会社名、メールアドレスなど)を管理しています。
なぜメールアドレスなのか?
→ メールアドレスが唯一の受講申込者の識別子として使われ、問題文の「募集・申込み」では「同一メールアドレスで申込みが重複していないかを判定」と明記しています。
したがって、
  • (a)には「受講申込」、
  • (b)には「メールアドレス」が入ることになります。

受験者が誤りやすいポイント・ひっかけ

  1. ファイル名の混同
    「セミナー担当」や「受講」ファイルなど、似た名前のファイルが複数登場するため混乱しやすいです。
    → 重複チェックは受講申込者の情報、すなわち「受講申込ファイル」を検索します。
  2. 重複チェックの対象項目の誤認
    氏名や会社名で重複判定すると誤り。
    → 問題文に「同一メールアドレスで申込みが重複していないかを判定」と明示されているため、メールアドレスが正解です。
  3. セミナーIDとの組合せチェックを忘れる
    重複は「同一セミナーID、同一メールアドレス」で判断します。
    → 「当該セミナーIDで」とあるため、セミナーごとに申込の重複をチェックする点も重要です。

試験対策として覚えておくべきポイント

  • 申込者の重複判定は本人を特定できる項目(メールアドレス)で判定することが多い。
  • ファイルやテーブル名は設問の文脈に沿って理解し、似た名前でも役割が異なるファイルの混同に注意。
  • 重複判定の際に必ずセミナーIDなどの条件も含めて検索すること。
  • 問題文中の「~に基づき」「~が記載されている」などの記述をよく読み、条件を正確に把握すること。

参考:表2の該当部分再掲

処理名処理概要
申込判定(重複)当該セミナーIDで、(a)ファイルを検索し、入力された**(b)と同じ(b)**が存在すればエラーとし、エラーメッセージを表示して処理を終了する。

以上の理由により、(a)は「受講申込」、(b)は「メールアドレス」となります。

設問2

〔指摘及び追加要望〕について、申込確認処理で、確定ボタンを押した際に定員を超過するのはどのような場合か。40字以内で答えよ。
模範解答
申込確認画面が表示されている間に他者の申込みが確定されて定員に達した場合
解説

模範解答の核心キーワード・論点整理

  • 申込確認画面が表示されている間に起こる変化
  • 他者の申込みが確定されること
  • その結果、定員に達し、超過してしまう可能性
  • 定員超過の判定が申込確認画面表示後の再チェックで必要になる理由

解答が導かれる論理的な説明

問題文に記されている新システムの募集・申込みの処理の流れでは、以下のように設計されています。
処理名処理概要
申込判定(定員)セミナーIDで受講申込ファイル及びセミナーファイルを検索し、定員超過時はエラー処理する。
申込確認確定ボタン押下時に、受講IDを発行しレコード作成とメール送信を行う。取消ボタンで申込画面に戻る。
しかし、指摘にあるように申込確認画面が表示されている間に他者が確定操作を行い、セミナーの定員に達してしまうケースがあります。
問題文からの引用:
「D課長は指摘及び追加要望を受け、次のような設計変更を行った。
・申込確認画面で確定ボタンが押されたときに再度申込判定の処理を行うようにし、エラーになった場合はエラーメッセージを表示して処理を終了する。」
これが意味するのは、最初の申込判定では定員超過が発生しない状態であっても、申込確認画面を受験者が見ている間に処理が遅れ、他の受講希望者が同時並行で申込を確定したことで定員が満席に達ることがあるということです。
このため、確定の直前に再度定員をチェックしなければ、実際には定員超過の状態で受講を確定してしまうリスクが発生します。これを防ぐために「確定ボタンを押したタイミングでの再チェック」と、該当した場合のエラー処理が必要となりました。

受験者が誤りやすいポイント・ひっかけになりやすい箇所

  • 「申込入力~申込判定」での1回の定員チェックだけで安全と考えること
    → 実際は申込確認画面が表示されている間にも他の申込が進行する可能性があるため、その時点の情報は古い。
  • 「申込みが重複しない」のみを問われていると誤解するケース
    → 重複チェックも重要だが、今回の設問は確定時の定員超過に関するものなので、別の観点。
  • 通信遅延・ユーザインターフェイスのタイムラグの影響が理解できていないケース
    → UI表示と実際のDB状態はタイムラグがあるため、その間に状態変化が起こり得ることを押さえる必要がある。

試験対策としてのポイント・覚えておくべき知識

  • 並行処理の問題点(レースコンディション)に注意する
    → ユーザが画面に表示された情報をもとに操作している間に、別ユーザの操作で状態が変わってしまうことがある。
  • 最終処理直前にも条件チェックを設ける二重チェックの重要性
    → 申込み確定のような重要な処理は、トランザクション的に整合性を保つために確定処理直前に再確認が必要。
  • ユーザインターフェイスのタイムラグと業務処理の整合性を考慮した設計
    → システムが複数利用者で使われる場合、情報の最新化と処理同期をどう担保するか設計思想を理解しておく。

まとめ

ポイント内容
定員超過が発生するケース申込確認画面が表示されている間に他者が申し込みを確定し、定員に達してしまう場合
なぜ二重チェックが必要かユーザ操作の分断と通信遅延により、最初のチェック時と確定時のDB状態が異なるため
試験に出やすい関連知識並行処理、レースコンディション、トランザクション整合性保持、再チェックの必要性
注意点・誤りやすいポイント初回チェックだけで安心しないこと、通信障害や遅延の影響、申込みの重複とは別の問題であること
これらを押さえておくと、情報処理技術者試験の午後問題の設計・DB整合性に関する問題で適切な解答ができるようになります。

設問3(1)〔新システムの設計変更〕について答えよ。

本文中の下線①について、受講IDに関するチェックの内容を40字以内で、受講ファイルの更新処理の内容を30字以内で答えよ。
模範解答
チェック:当該受講IDの受講ファイルの接続フラグが “0” のときはエラーとしない。 更新処理:受講ファイルの接続フラグに “1” を設定して更新する。
解説

模範解答の核心キーワード・論点整理

  • チェック内容(40字以内):
    「当該受講IDの受講ファイルの接続フラグが '0' のときはエラーとしない」
    → 接続フラグの値に応じてエラー判定を行わない例外的なフローを記述。
  • 受講ファイルの更新処理(30字以内):
    「受講ファイルの接続フラグに ‘1’ を設定して更新する」
    → 再ログイン時の接続フラグの再設定。
  • ポイント:
    ・接続フラグ属性の役割
    ・切断検知時の値変更(“0”→“g”で切断検知、模範解答では説明の“0”は設問に合わせた例示)
    ・再ログイン時のフラグ更新(再接続許可)

解答の論理的説明

問題文の【設計変更】には以下の記述があります。
  • 「受講ファイルに、接続フラグという属性を追加し、初期値として”1”を設定する。別途、接続が切れたことを検知した際に接続フラグに“g”を設定するようにする。」
  • 「その上で、再接続する際の①ログイン時の受講IDに関するチェック及び受講ファイルの更新処理を新たに追加する。
ここから再接続の仕組みは以下のように理解できます。
  1. 受講IDチェックの内容:
    再ログイン時に入力された受講IDについて受講ファイルを参照する。もし「接続フラグが“0”(あるいは “g”と読み換えられる可能性あり)」であれば、通信障害等で接続が切れた状態と判断し、エラーとせず再ログインを許可する。
    → つまり「接続フラグが ‘0’ のときはエラーとしない」という表現は切断中の受講IDを許可する旨の意図を表しています。
  2. 接続フラグの更新処理:
    再ログインで正常接続が確立したため、それに対応して受講ファイルの接続フラグを ‘1’ に設定し、接続中の状態に戻す。
以上のように、それぞれの処理は接続状態を管理するために用意された処理であり、再ログインを可能にするための必須の振る舞いです。

受験者が誤りやすいポイントの解説

  • 接続フラグの値の理解が曖昧になる:
    問題文中では「初期値として ‘1’」「接続が切れた時 ‘g’」となっているため、「 ‘0’」という値が模範解答に含まれていることに違和感を感じるかもしれません。
    → 模範解答の ‘0’ は例示として、「切断検知状態の値( ‘g’ )を含め接続断時はエラーとしない」という意味合いと捉えるのが正しい。
    受験時には、問題文の指示に忠実かつ意味合いで理解することが重要です。
  • 「接続フラグの更新」を単純に「ログイン履歴の記録」などと誤解する:
    実際は接続の状態管理をしており、‘1’は「接続中」、‘g’は「切断中」の意味です。
    更新処理は単なるフラグの切り替えであり、物理的なログイン動作とは切り離して理解しましょう。
  • 「再接続」や「ログイン時のチェック」と合わせて記述する際の文字数制限:
    40字・30字以内で明確かつ簡潔に説明する必要があるため、冗長にならず適切なキーワードを使うことが求められます。

試験対策のための覚えておくべきポイント・知識

ポイント内容
再ログイン許容の設計通信断や切断を検知し、切断状態の受講者IDであればログインを許可する仕組みが重要。
接続フラグの役割フラグの値で接続状態を管理し、 ‘1’:接続中、 ‘g’(または’0’):切断状態などで判定。
エラー判定の例外条件切断状態ならエラー(登録されていない受講ID)とせず再ログインを可能にする。
更新処理は「状態の切り替え」であること再ログイン時は接続フラグを再接続中(‘1’)に更新し、状態管理をする。
設問文の制約文字数に合わせた表現短く簡潔に、本質を的確に説明できる用語選択を常に意識する。
設問文にある属性名・用語を正確に使う「接続フラグ」、「受講ID」など、問題文の用語と矛盾しない言葉遣いを心掛ける。

これらのポイントを理解し、問題文のハードルとなる設計変更の意図や状態管理のロジックを把握しながら解答を組み立てることが合格への近道です。

設問3(2)〔新システムの設計変更〕について答えよ。

本文中の下線②について、どの属性をどのファイルに移すか。属性と移す先のファイルを表1中のファイル名と属性で答えよ。
模範解答
属性:アンケートURL ファイル:受講申込
解説

1. 模範解答の核心となるキーワードや論点の整理

  • 移動対象の属性:アンケートURL
  • 移動先のファイル:受講申込ファイル
  • 理由の鍵:
    • 指摘・追加要望で「アンケートURLを受講IDごとの個別URLに変更」するため、
    • それに伴い、一意の個別URL(すなわち受講IDに紐づく情報)を管理しやすくするために属性の移動が必要。

2. なぜその解答になるのか(問題文の記述からの論理的説明)

問題文でのポイントを引用し整理します。
  • 現状の「アンケートURL」の属性は表1の「セミナー」ファイルにあります。
    ファイル名主な属性(下線は主キー)
    セミナーセミナーID, セミナー名, セミナー内容, 開催日時, 終了時刻, 定員, アンケートURL
  • 改善要望として、
    「アンケートURLにアクセスした際に、入力画面で受講ID及び氏名を入力させるのではなく、あらかじめ受講ID及び氏名を埋め込んだページを開いて回答させるようにしたいので、個別のアンケートURLを送してほしい
    つまり、これまでの「セミナー単位」のURLから、申込者毎(受講IDごと)の**「個別のURL」**にする必要があります。
  • ここで「個別のURL」は受講IDごとの情報であるため、「アンケートURL」は「受講IDを持つ受講申込」ファイルに移すのが自然です。
  • 受講申込ファイルの属性(表1より)
    ファイル名主な属性(下線は主キー)
    受講申込受講ID, セミナーID, 氏名, 会社名, 部署名, 役職名, メールアドレス, 申込日時
  • 受講申込ファイルは受講IDを主キーに持つので、個別URLを管理するのに適しています。
  • よって、「アンケートURL」属性を「セミナー」ファイルから「受講申込」ファイルに移すことが合理的です。

3. 受験者が誤りやすいポイント・ひっかけの解説

  • 誤りやすい点1:「アンケートURL」はセミナー単位の情報だからセミナーファイルに残すべきと考えること
    → 旧仕様ではそうでしたが、個別URLの送信は「受講者(受講ID)個別」の対応なので、「受講申込」ファイルに移動する必要がある点が肝です。
  • 誤りやすい点2:「アンケートURL」をアンケートファイルに移動する選択
    → アンケートファイルは回答結果を管理するファイルであり、URLそのものを参照・管理するファイルではありません。URLは申込時に管理されるべきなので適切ではありません。
  • 誤りやすい点3:「オンラインルーム」ファイルや「受講」ファイルに移す選択
    → これらのファイルはセミナーの開催や受講受付を管理するためのものであり、URL管理とは対象が異なります。

4. 試験対策として覚えておくべきポイントや知識

  • 属性の移動や正規化の考え方
    属性は「その属性の意味が属する対象に応じて管理ファイルを決める」べき。今回のようにURLが個別参加者(受講ID)に対応する場合、そのキーを主キーとするファイルに移す必要があります。
  • 受講IDや申込者個別情報と紐づく属性は「受講申込」ファイルに管理されることが多い
    申込み情報・個別URL・メールアドレス等は受講IDを主キーとする「受講申込」ファイルにまとめます。
  • 設問では具体的なファイル名と属性名の正確な表記が求められる
    「受講申込ファイル」や「アンケートURL」は正しい名称で記述しましょう。
  • 設計変更の意図を正しく読み取ることが重要
    ・個別URL→個別の受講IDに対して紐づくこと
    ・その管理は受講申込ファイルが適当であることを理解すること

以上のポイントを押さえていれば、この設問の正解を自信を持って選べます。

設問3(3)〔新システムの設計変更〕について答えよ。

表3中の(c)~(f)に入れる適切な字句を、表1中のファイル名と属性を用いて20字以内で答えよ。ここで、レコード件数が該当する場合は、表3の記載にならい,“のレコード件数”という形式で答えよ。
模範解答
c:セミナーファイルの定員 d:受講ファイルのレコード件数 e:受講申込ファイルのレコード件数 f:アンケートファイルの評価点の合計
解説

1. 模範解答の核心キーワード・論点整理

記号正解解説用キーワード
(c)セミナーファイルの定員定員(セミナーの受講可能最大人数)
(d)受講ファイルのレコード件数受講者数(実際にセミナーを受講した人数)
(e)受講申込ファイルのレコード件数申込者数(セミナーに申し込んだ人数)
(f)アンケートファイルの評価点の合計アンケート評価点(受講者が入力したポイント合計)
これら四つのキーワードが、表3に示された各計算式に入るべき適切な語句です。

2. 解答の理由と問題文の引用を用いた論理的説明

(c) 申込率の分母

計算式:申込率 (%) = 受講申込ファイルのレコード件数 ÷ (c) × 100
この(c)は、セミナーの受講可能人数、すなわち「定員」を指します。
  • 問題文(セミナー管理業務の概要(1))にて「セミナーには…受講する人数について定員を設定している」と明記。
  • 表1「セミナーファイル」の属性に「定員」が含まれていることから、「セミナーファイルの定員」が該当。
つまり、申込率は「申し込み人数 ÷ 定員 ×100」で計算されます。

(d) 受講率の分子

計算式:受講率 (%) = (d) ÷ e × 100
ここで(d)は、実際に参加し受講した人数、つまり「受講者数」です。
  • 「受講率は受講申込者数に対する受講者数の割合」とあるため、
  • 受講者は「受講ファイルのレコード件数」で表されます(表1参照)。
  • 「受講ファイル」には受講IDが主キーとなっており、実際にセミナーでログインし受講した記録を表す。
したがって(d)には「受講ファイルのレコード件数」が入ります。

(e) 受講率の分母

計算式:受講率 (%) = d ÷ e × 100
(e)は、「受講申込者数」を示し、「受講申込ファイルのレコード件数」となります。
  • 問題文中「受講率は受講申込者数に対する受講者数の割合」と記載。
  • 受講申込数は「受講申込ファイル」に記録されているレコードの数で表現可能。

(f) 平均評価点の分子

計算式:平均評価点 = (f) ÷ アンケートファイルで受講有無が“有”のレコード件数
(f)は、「アンケートファイルの評価点の合計」です。
  • アンケートに関する記述で、「受講した者は10点満点で評価点を入力する」とあります。
  • 「平均評価点はアンケートに回答した受講者の評価点の平均点」との定義に合致。
  • したがって(f)は、アンケートファイルに登録されている各受講者の評価点を合算したものになります。

3. 誤りやすいポイント・ひっかけ対策

(c) 定員と関連する項目の混同

  • 誤って「受講申込ファイルのレコード件数」や「受講ファイルのレコード件数」を入れてしまうことがある。
  • 「申込率」は定員に対する申込数の割合と定義されているため、必ず「定員」を分母にする点を間違えないよう注意。

(d) 受講者数の混乱

  • 「申込者数」と「受講者数」の違いを理解しておくこと。
  • 受講者数は実際にセミナーを受講した人数であり「受講ファイル」に格納。
  • 申込者数ではないので混同しない。

(f) 評価点の合計

  • 「アンケートファイルの評価点の合計」と言う表現が適切で、単純に平均点を計算するだけでなく評価点の総和を分子に置く。
  • また「受講しなかった者の評価点は空白(、日を設定)」であり、計算対象は「受講有無が“有”」に限定される点に注意。

4. 試験対策として覚えておくべきポイント

  • ファイルと属性の関係性を正確に把握すること
    問題文の表や説明にあるファイル名・属性をしっかり把握し、「誰の情報がどのファイルに格納されているか」を理解する。
  • 計算式中の分子・分母の意味に注意を払うこと
    例えば、申込率は「申し込んだ人数 ÷ 定員」、受講率は「実際受講した人数 ÷ 申し込み人数」など、比率は必ず分母・分子の意味を確認。
  • 「受講」「申込」「アンケート」の違いをしっかり区別すること
    申込みをしたが受講しない人もいるため、申込と受講は異なる概念であることを意識。
  • 問題文中の注記や用語の定義は必ず参照する
    例:受講有無が「有」は受講した者、アンケート評価点の取り扱いなど、設計の制約やルールを理解する。
  • データベース設計の基本を理解し、主キーやリレーションを押さえること
    どのファイルが主キーでレコード件数がどう計算されるかを意識できると有利。

以上のポイントを踏まえ、問題文の内容と表を正確に読み取った上で各計算式に適したファイル・属性を選ぶことが合格への鍵となります。
← 前の問題へ次の問題へ →

©︎2025 情報処理技術者試験対策アプリ