2023/05/07
アビリンピック過去問題|第19回東京(2020)データベース
本ページはプロモーションが含まれています
2020年度の東京アビリンピックは、コロナ禍の影響で本大会中止となりました。かわりに、式典を実施しない「第41回全国障害者技能競技大会出場候補選手選考会」として競技単位で選考会を実施。競技種目「データベース」の課題は、ある高校における成績管理システムの開発でした。
競技種目「データベース」とは? 使用されたOSとソフト
アビリンピック競技種目「データベース」は、MicrosoftのAccessを用いて指定されたデータベースを作成する競技。制限時間内に、提示された仕様条件を満たしつつ、いかに使いやすいシステムを開発できるかが競われます。とにかく課題数が多いことが特徴です。
どのように作業を進めるかという時間管理スキルも結果に大きな影響を与えるため、過去の問題や事前に公開される概要をもとに、効率的に作成する練習を繰り返しましょう。
2020年度東京大会での入賞者は、金賞1名、銀賞1名、銅賞1名、努力賞1名の合計4名でした。
競技で使われたOSやソフト、PCは、以下のとおりです。
<「データベース」で使われたOSとソフト>
- OS:Windows 10 Enterprise
- データベース:Microsoft Access 2019
- PC:DOS/V互換機
「データベース」の評価ポイントと注意事項
競技種目「データベース」では、作成された課題作品について以下の点から評価が行われます。
<評価ポイント>
- 登録されたデータの有無
- 使われているAccessの機能
- 可視性(画面の見やすさ)
- 操作性(操作のしやすさ
- 機能性(処理の正確さ)
可視性や操作性では、説明書を見なくても操作が分かることが重視されています。直感的に操作可能で、表示される結果も見やすくなるよう、工夫して取り組みましょう。Accessの機能に含まれるマクロやVBAも使用可能です。
なお、課題作品は、完成したものでも未完成のものであっても、指定されたフォルダに保存することで提出します。指定フォルダ以外の場所に保存しても採点対象とならないため、必ず保存場所を確認してください。
データベースの作成で使うデータは、全て競技用PCのデスクトップに保存されています。自分でデータを持ち込むことはできず、ノートやメモ、参考図書、タブレットやスマートフォンの持ち込みも禁止です。
制限時間と12個の課題
「データベース」の競技時間は意外と短いものです。それに対して、課題は大抵10個以上あり、各課題にかかる時間は一定ではありません。どの作業にどのくらい時間をかけるか、事前によく検討・練習しておきましょう。
制限時間
「データベース」の制限時間は、90分です。
この時間の中で当日に出された課題を確認し、各種設定やフォーム作成、検索や表示、情報更新の機能などを実装していきます。
ちなみに、全国アビリンピックではより長い制限時間の中で、より多い課題に取り組まなければなりません。東京大会の課題は、全国アビリンピックに向けた練習課題としても活用できるでしょう。
「データベース」12個の課題
2020年度大会は、12個の課題が出されました。各課題の概要は、以下のとおりです。
<「データベース」課題概要>
課題 | 概要 |
課題1 | – 新規データベースを作成する |
課題2 | – システムで必要なデータに関して、それぞれのテーブルを作成してインポートする
– 適切な主キー、インデックス、データサイズなどを設定する |
課題3 | – 各テーブル間にリレーションシップを作成する |
課題4 | – 生徒の情報検索、追加、更新ができるフォームを作成する |
課題5 | – 教科の情報検索、追加、更新ができるフォームを作成する |
課題6 | – 生徒の情報および生徒成績を表示するクエリを作成する |
課題7 | – 生徒情報の検索、更新ができるフォームを作成する |
課題8 | – 生徒情報フォームに、成績テーブルにレコード追加ができる機能を追加する |
課題9 | – 指定された条件でデータ抽出を行い、成績表を作成する機能を追加する |
課題10 | – 生徒情報フォームに、成績表を表示する機能を追加する |
課題11 | – システム全体を統括するフォームを作成する |
課題12 | – 課題1~課題11について、可視性・操作性などの向上のため、さらに工夫する |
「データベース」 課題1~11の内容
では、具体的に課題1から課題11について、もう少し詳しく課題内容を見ていきましょう。
課題全体の仕様条件の確認
今回作成するのは、「成績管理システム」。提供されるデータには、生徒に関する情報、成績に関する情報、教科に関する情報などがあります。これらのデータについて、各課題で指示されるとおりにテーブルやフォームを作成し、最終的に各生徒の成績の登録や成績表の印刷ができるようにしていきましょう。
当日課題には、テーブルやフォーム作成に関する仕様条件が提示されるとともに、一覧表やデータシートビューの例が画像で掲載されています。また、課題の終わりのほうに「データフロー図(DFD)」も掲載されています。まずは課題全体をざっと確認し、作るべきシステムのイメージをつかんでおくことが大切です。
課題1~課題3 テーブル作成や設定
課題1は、新規データベースを作成し、ファイル名を指定の文字列にすれば終わりです。
課題2は、システムに必要なデータについてテーブルを作成し、データをインポートします。インポートするデータは「生徒」「成績」「教科」の3つ。それぞれエクセルファイルの指定されたシートからインポートしましょう。
インポートするために作成する3つのテーブル「T生徒」「T成績」「T教科」については、フィールド名やデータ型、フィールドサイズ、その他の仕様条件(値の範囲や入力支援など)が指示されていますので、これらの仕様条件をミスなく反映してください。
課題3では、作成した各テーブル間にリレーションシップを作成します。具体的には、以下の5つの作業が求められました。
- 「T生徒」「T成績」「T教科」の各テーブル間に、適正なリレーションシップを設定し、参照整合性も設定する
- リレーションシップレポートを作成する
- レポートヘッダーに、タイトルとして「Rリレーションシップ」と選手のゼッケン番号を明記する
- レイアウトは自由だが、テーブル、リレーションがはっきり分かるように配置する
- レポート名を「Rリレーションシップ」として保存する
課題4~課題5 生徒や教科の情報検索、追加、更新機能
課題4は、生徒の情報検索、追加、更新ができるフォームの作成です。「T生徒」の内容を一覧表形式で検索、追加、更新できるようにすることや、フォームヘッダーを「F生徒一覧」とし、各フィールドの内容がはっきり分かるように配置することなどが求められました。フォーム名は、「F生徒入り欄」として保存します。
続く課題5は、教科の情報検索、追加、更新ができるフォームを作成すること。「T教科」の内容を一覧表形式で検索、追加、更新できるようにして、フォームヘッダーを「F教科一覧」としてください。フォーム名も「F教科一覧」で保存します。
課題6~課題8 生徒情報と成績に関する機能
課題6からは、成績に関する情報の表示などを行えるようにしていきましょう。
まず課題6では、生徒や生徒の成績を表示するクエリを作成します。「T生徒」からすべての項目を抽出して生徒IDで昇順になるように設定し、クエリ名を「Q生徒」として保存。次に、「T生徒」「T成績」「T教科」から、生徒成績を作成します。生徒ID、教科ID、教科名、特典、評価を抽出し、生徒IDおよび教科IDを昇順で並べ替えてください。クエリ名を「Q生徒成績」として保存したら、課題6は終了です。
課題7では、生徒情報の検索、更新ができるフォームを作成します。メインフォームは「Q生徒」で、サブフォームは「Q生徒成績」です。フォームヘッダーを「F生徒情報」としてください。サブフォームのレコードセレクタと移動ボタンは表示させません。ここまで作成したら、メインフォーム名を「F生徒情報」、サブフォーム名を「F生徒成績」として保存しましょう。
そして課題8では、生徒情報フォームに、成績テーブルへレコードを追加できる機能を追加します。この時気をつけなければならないのが、新しい生徒の情報を「T生徒」に追加したときに、そこに紐付く成績情報が「T成績」にも追加されなければならないということ。これを実現するため、以下の3つの作業を行うことが求められました。
- 「T成績」にレコード追加するクエリ「Q成績追加」を作成する
- 追加するレコードのフィールドに対応する式は仕様条件に従う
- 「F生徒情報」の右上部にコマンドボタンを配置し、そのボタンを押下すると「Q成績追加」を実行して「F生徒情報」を最新の情報に更新するようにする
課題9~課題10 成績表の作成と表示
課題9では、指定された条件でデータを抽出し、成績表を作成します。成績表は、「F生徒情報」に表示している生徒の成績表をメイン/サブレポート形式で表示するものです。
成績表の作成は以下の手順で進めましょう。
<メインレポートの作成>
- 「T生徒」から全ての項目を抽出する(抽出条件は「F生徒情報」の生徒ID)
- クエリ名を「Q成績表」として保存する
- 「Q成績表」をもとに、レポート「R成績表」を作成する
- レポート用紙サイズはA4縦で、1ページに収まるよう配置する
- レポート項目は「Q成績表」の全ての抽出項目とする
<サブレポートの作成>
- 「Q生徒成績」の抽出項目から、教科名、評価をレポート項目とする
- 「Q生徒成績」から抽出した項目をもとに、レポート「R生徒成績」を作成する
- 「R成績表」をメインレポート、「R生徒成績」をサブレポートとして配置する
- 課題に掲載されているレポートビューの例にあるような表題や情報のレイアウト等に準じる形で成績表を作成する
こうして作成した成績表を表示する機能を追加するのが、課題10です。成績表の表示機能の追加では、「F生徒情報」の右上部にコマンドボタンを設け、それを押下することで「R成績表」の印刷プレビューが表示されるようにします。
課題11 全体を統括するフォームの作成
ここまでの作業が終わったら、課題11へ進みましょう。システム全体を統括するフォームの作成です。これには以下の仕様条件があります。
- 「F生徒情報」「F生徒一覧」「F教科一覧」を集約させたフォーム「Fメインメニュー」を作成する
- フォーム上部にタイトルとして「成績管理システム」と明記する
- 「成績管理システム」起動時に、自動的に「Fメインメニュー」が表示されるようにする
- 「Fメインメニュー」上の「閉じる」ボタンを押すことで、システム全体が終了するようにする
課題11まで終わったら、
- 仕様条件に従っているか
- エラーが発生しないか
- より見やすく、操作しやすいシステムにできないか
など、システム全体のチェックをしっかり行ってください。こうしたチェックで細かなミスを修正できれば、より入賞の可能性が高まるでしょう。
