令和4年度 春期 応用情報技術者試験 午後 問8 情報システム開発

テーマ:システム間のデータ連携方式

問8 システム間のデータ連携方式に関する次の記述を読んで、設問1~5に答えよ。

バスターミナルを運営するC社は、再開発に伴い、これまで散在していた小規模なバスターミナルを統合した、新たなバスターミナル(以下、新バスターミナルという)を運営することになった。

C社が運営する新バスターミナルには、複数のバス運行事業者(以下、運行事業者という)の高速バス、観光バス、路線バスが発着する。このうち高速バスと観光バスは指定席制又は定員制であり、空席がない場合は乗車できない。乗車券の販売は、各運行事業者が用意する販売端末やホームページで行う。

新バスターミナルでは、新バスターミナルシステムとして、バスの発着を管理する運行管理システム、及びバスの発車時刻、発車番線、空席の有無などを利用者に案内する案内表示システムを導入することになり、C社の情報システム部に所属するD君が、運行事業者から空席の情報を取得するデータ連携方式の設計を行うことになった。

〔新バスターミナルシステムの概要〕

新バスターミナルシステムの概要を図1に示す。

運行管理システムがもつ案内表示に関連する機能を表1に、案内表示システムがもつ機能を表2に、表示器の表示項目の例を表3に示す。

〔運行事業者の概要と連携機能の有無〕

運行事業者データ連携機能の空席情報を取得する処理について、運行事業者が空席情報を含むデータの連携機能をもつ場合には、それを活用する方針とした。そこで、D君は、高速バス、観光バスの運行事業者であるE社、F社、G社、H社について、運行している全てのバスの種別と連携機能の有無を調査した。調査結果を表4に示す。

なお、高速バス、観光バスの運行事業者は上記の4社だけであるが、路線バスだけを運行する運行事業者であるS社、T社が存在する。

E社、F社、G社の空席情報の連携機能が提供しているデータ項目の書式と例を表5に示す。

〔データ項目の検討〕

D君は、表5の情報を基に、運行管理システムが運行事業者から取得する空席情報ファイルのレコード構成、データ項目を検討した。

  • 空席情報ファイルは、ヘッダレコード1件と必要な数のデータレコードから成り、ヘッダレコードには、作成日、作成時刻に加え、データレコード件数を含めることにした。
  • 路線コード、便コードが運行事業者間で重複しないよう、二つのコードを結合し、
    運行事業者ごとのコードを付加した一つのコード(以下、統合便コードという)として取り扱うことにした。この統合便コードは、新バスターミナルシステム全体で使用する。この検討において、①表5の運行事業者以外の情報も調査し、問題がないことを確認した
  • ②ファイル形式はCSV形式、文字コードはUTF-8とし、各項目の書式を揃えた。

空席情報ファイルのデータレコードの内容を表6に示す。

〔連携方法の検討〕

D君は、連携方法について、それぞれの運行事業者と調整を行った。H社については運行する便数が少ないこともあり、開発費用が比較的安価である③Webページから情報を抽出する方法を用いることにした。連携方法に関する調整結果を表7に示す。

〔空席情報取得機能と空席情報設定機能の処理について〕

D君が検討した空席情報取得機能と空席情報設定機能を用いた空席情報ファイルの取得から設定の処理について、図2に示す。

表7及び図2で検討した処理について、情報システム部内でレビューを実施したところ、次のような指摘があった。

(i) 運行事業者とのデータ連携においてFTPによるファイル転送を用いる場合は、ファイル全体が正しく転送されたことを確認する必要がある。
(ii) 特定の運行事業者から空席情報が取得できなかった場合、その運行事業者のバスについて表示器に古い空席記号が表示され続けてしまう。

D君は、(i)の指摘に対して運行事業者データ連携機能に空席情報ファイルのabが一致することを確認する処理を追加する対策案及び(ii)の指摘に対して④図2の処理(3)の最初に新たな処理を追加する対策案の検討を行い、再度レビューを実施した。

D君は対策案が承認された後、後続の開発作業に着手した。

設問1 〔データ項目の検討〕について(1)、(2)に答えよ。

(1) 本文中の下線①について、表5以外に調査した運行事業者を全て答えよ。

解答

H社、S社、T社

解説

統合便コードは、新バスターミナルシステム全体で使用するので、空席情報に限らず使用されます。なので、全社で重複しないようにしなければいけない。

(2) 表5のG社の例について、発車日、発車時刻、統合便コード、空席数を表6に合わせて変換した場合の変換後の値を答えよ。

解答

発車日:20220510
発車時刻:1800
統合便コード:G0030110
空席数:8

解説

なし。

設問2 本文中の下線②について、CSVファイルの特徴として適切なものを解答群の中から全て選び、記号で答えよ。

解答群
ア XMLファイルと比較して、1レコード当たりのデータサイズが小さい。
イ XMLファイルと比較して、処理速度が遅い。
ウ 固定長ファイルと比較して、項目の桁数や文字数に関する自由度が低い。
エ 固定長ファイルと比較して、処理速度が遅い。

解答

ア、エ

解説

XMLファイルと比較すると、CSVファイルは各項目にタグが付かないので1レコード当たりのデータサイズは小さくなる。ファイル構造がXMLファイルに比べて簡単なので、処理速度は速い。

固定長ファイルと比較すると、CSVファイルは項目の桁数は可変長なので、自由度は高い。桁数を計算する必要があるので、処理速度は固定長ファイルより遅くなる。

設問3 本文中の下線③の名称として適切な字句を解答群の中から選び、記号で答えよ。

解答群
ア WAI
イ WebAPI
ウ Webコンテンツ
エ Webスクレイピング

解答

解説

表7に「Webページ上から空席情報を取得」とあるので、Webページを参照してデータを収集するWebスクレイピングとなる。

設問4 本文中のabに入れる適切な字句を、20字以内で答えよ。

解答

ヘッダレコードのデータレコード件数
処理したデータレコードの件数

解説

正しく受信できているか確認する方法は色々あるけど、ここではヘッダレコードにデータレコード件数があるので、実際にデータを読み込んで処理した件数と一致したかを確認できれば良い。

設問5 本文中の下線④で追加した処理の内容を35字以内で述べよ。

解答

ターミナルの運行計画に設定された空席数をnullにする

解説

表1の運行計画作成機能に記載がある。
月1回の運行計画作成時に空席数に初期値としてnullをセットしている。
空席情報を取得する際も同じように空席数を初期化してあげれば、前回情報が残ることもない。