• ポリテクカレッジ北海道(北海道職業能力開発短期大学校)情報処理科  澤山  力
    学務課  加藤 昭男

1.はじめに

今日の社会生活において,コンピュータは欠かすことのできない便利な道具である。コンピュータの普及で,人間は面倒な計算や多くのデータ管理などから解放されたとされている。しかし,便利な道具は,反面,不可解なものとして敬遠されたり,十分にその能力が活用されない場合が多い。

本校における成績処理も例外ではなく,必要に応じて手作業による記入やワープロソフトの利用が行われていた。このため,毎年200名近く増加する卒業生や在学生の多量の成績データを管理することは,大変な労力を必要とし,誤りも生じるおそれがあった。

本システムは,学生の成績データや各種証明書を正確に処理・管理することを目的とするものであり,ユーザからの機能要求などに応える形で,卒業研究の一テーマとして構築を試みた。

2.本システムの概要

成績管理システムは,汎用の表計算構築ツールやリレーショナルデータベースなどをそのまま使用して作られる場合がある。しかし,コンピュータにあまり興味のないユーザにとって,その操作は,難解そのものである。表計算構築ツールには,利用頻度の高い一連の動作を自動化するマクロ機能がある。これを利用することで,一般ユーザに対しては内部をブラックボックス化して,ユーザに適合した優れたユーザインタフェースを持つシステムの構築が容易になる。

本システムは,表計算システム構築のためのツールであるLotus1-2-3(以下「Lotus」という)のマクロ機能を用いて構築した。Lotusを選択した理由は,必要な機能が備わっていただけでなく,印刷や表示画面の見やすさ,操作性の良さなどユーザインタフェースに優れているためである。また,何よりも担当者であるユーザがLotusの操作に習熟していたことによる。

本システムは,段階的詳細化を行い,以下の10個のモジュールから構成する。

  1. ① 新規原簿作成:新年度の科別原簿台帳の作成と学生情報(名前,学籍番号,生年月日など)を入力する。
  2. ② 原簿の修正追加:既存の原簿台帳の学科名や単位数の修正または学生情報の追加を行う。
  3. ③ 成績の入力:科別に成績データを入力・修正する。
  4. ④ 原簿の内容確認:原簿台帳の個人別成績データを確認する。
  5. ⑤ 証明書・一覧表印刷:各種証明書や一覧表を印刷する。
  6. ⑥ 不要ファイルの削除:不要な科別ファイルをシステム上で削除する。
  7. ⑦ 留年ファイルの作成:科別ファイルより留年生のみピックアップし,留年生用のファイルとして作成する。
  8. ⑧ ファイル複写:科別ファイルをシステム上でバックアップする。
  9. ⑨ データ変換:旧版のデータファイルを新版に変換する。
  10. ⑩ 終了:処理を終える。

3.本システムのファイル構成

システムファイルは,先の10個のモジュールのほか,Lotus起動時に動作し,メニュー画面を表示する「auto123.WK4」というモジュールから構成される。

各モジュールの内部は,必要に応じて,以下の3種類のワークシートに分類される。

  1. ① ワークシートAは,各種データシートとして,個人別の原簿台帳を表示する成績原簿領域,40人分の個人情報を格納する個人情報領域,1学科分の成績を格納する科別成績データ領域,印刷時に使用する補助作業領域からなる。
  2. ② ワークシートBは,モジュールの処理を記述するマクロの格納領域である。
  3. ③ ワークシートCは,ダイアログボックスなどの表示用メッセージの格納領域である。

一方,データファイルは,科別の個人情報・学科目情報・成績データからなる。

データファイルの書式は,「科名十年度.WK4」である。

科名は,以下のように定める。

  • 産業機械科……産業
  • 電子技術科……電子
  • 生産技術科……生産
  • 情報処理科……情処
  • 制御技術科……制御
  • 情報技術科……情技
  • 建築科……建築

年度は,入学時の西暦下2桁とする。

  • 1990年度入学…90
  • 1985年度入学…85

平成7年度入学の情報処理科の場合,「情処95.WK4」となる。

平成6年度入学の電子技術科の留年生の場合,年度の後ろに「留」を挿入し,「電子94留.WK4」となる。

4.卒業研究としてのシステム制作経過

本システムは過去,2回の卒業研究によって制作された。

4.1 第1版の概要

従来,ほとんど手作業で行われてきた学生の成績処理を,計算機を利用して,系統的に行った。

【基本仕様】

  1. ① メニュー画面では,カーソル移動によって処理番号を選択する。
  2. ② 成績データの作成・追加・変更ができる。
  3. ③ 科目名などの原簿データを変更できる。
  4. ④ 学生のデータは2項目から検索できる。
  5. ⑤ 卒業生の履歴などの問い合わせに答えられる。
  6. ⑥ 個人および科別ごとの成績原簿を印刷できる。
  7. ⑦ 科別成績一覧・履修一覧を印刷できる。
  8. ⑧ 各種証明書を印刷できる。

以上の仕様を持ったプロトタイプ版に対して,ユーザと繰り返し仕様の検討を行った。

結果として,追加した機能は以下の4点である。

① 個人データの入力件数を拡大する。

当初の1学科最大学生数を26人から30人分とする。

② 学科別ファイルの選択方法を容易にする。

年度とファイル名をカーソルとリターンキーで指示するだけで科別ファイルの選択を可能とする。

当初,ファイル名の一覧表から,その名前を記憶し,入力していた。

③ 連続データの入力方法を容易にする。

成績データは,複数の教科を縦に,1学科分の学籍番号を横に配置した科別成績データ領域に直接入力し,その後,変換することで簡潔な処理とする。

当初,成績原簿台帳に直接個人データを入力することになっていたが,1学科分のデータを入力する場合,約20回の入力,保存,次の人の呼び出し作業を繰り返すことになり効率が悪いことが判明した。

④ データの検索を高速にする。

個人のデータを検索する場合,該当する位置を学籍番号の下2桁から計算し,一気にジャンプすることで高速検索を可能とする。当初,個人データ領域の先頭から該当するデータまで順に移動・検索していた。

4.2 第2版の概要

Lotusのバージョンとパソコンの環境をMS-DOS版から視認性・操作性に優れたWindows版へ変更した。操作方法もキーボードからマウスを主体とするものに変更したため,マクロの記述やデータ書式に大幅な改良を試みた。

【Windows版としての仕様の変更と追加】

① マウス操作による選択方法を導入する。

メッセージやファイルの選択などをダイアログボックスで表示し,学科目や個人データの入力以外は,極力,マウスを使って選択する。

② メニュー間の移動を簡潔にする。

トップメニューはスマートアイコンから選択する。また,印刷後の選択メニューに,「続けて印刷」「サブメニュー」「トップメニュー」のほかに,「違うファイル」を追加し,一度に異なる科のファイルを選択できるようにする。また,各種証明書と一覧表を分けずに,すべてをメインメニューで表示し,直接,成績原簿や科別履修一覧表などを選択できるようにする。

従来,続けて印刷を行う場合は,同じ科ならば,他の項目を選び印刷できたが,異なる科になると,「サブメニューに戻る」を選択し,トップメニューまで戻らなければならなかった。また,各種証明書と各種一覧表をそれぞれ分けていた。そのため,メニュー間の移動に時間を要した。

③ 各科の人数増加に伴い,データ枠を拡大する。

1科当たりの入学者を30人分まで増やしたことで,余裕をみて,入力可能件数を40人分とする。結果として,メモリを多く必要とするので,個人データの保管方法を変更する。

従来,1人分のデータは9行・13列であったが,12行・1列を1人分のデータとする。これは,Lotusが,縦のブロックにメモリを割り出てるので,列より行を増やしたほうが効率的なためである。

また,これに伴う成績入力の枠や科別履修一覧・科別成績一覧などの表を変更する。

④ 在学証明書の印刷ができる。

卒業証明書や卒業見込み証明書と同様に,在学証明書も印刷できるようにする。

⑤ 出席日数の入力・計算と取得単位数の合計・表示ができる。

これは,短大の卒業要件の変更に伴うもので,科別履修一覧表,科別成績一覧表に,学科・実習別出席率を表示する。さらに,取得単位数の合計が表示できるようにする。

従来,成績データを入力する場合,成績と修得年度を入力していたが,修得年度の入力をやめ,出席回数を入力するようにした。

⑥ 留年生用ファイルを作成する。

科別ファイルから留年生以外のデータを削除し,新たなファイルとすることで,留年生用ファイルを作る。

⑦ 科別データをバックアップする。

本システム起動中に,科別ファイルをフロッピーディスクにバックアップする。バックアップは,ファイル削除と同様に,Visual Basicで制作したプログラムをLotusから実行する。

⑧ 各種一覧表の印刷書式を変更する。

これも,短大の卒業要件の変更に伴う。

⑨ 科別ファイルの削除ができる。

本システム起動中に,不要になった科別ファイルを削除することで,ハードディスクを整理する。

一般的には,ファイルマネージャを起動し,削除する方法があるが,使いなれていないと間違って他のファイルを削除する危険があるためである。

⑩ 前データ形式を変換する。

DOS版の成績管理システムで作られた科別ファイルをWindows版のシステム上でも使用できるように,データ書式に互換性を持たせる。

これは,メモリを効率的に使うために,個人データの格納形式を変更することに伴う。

⑪ マクロやメッセージのワークシートを非表示とする。

これは,マクロやメッセージ内容を不用意に変更される危険性を防ぐためである。

Windows版へ移植した結果,次に何を操作すべきかが視覚的にわかりやすくなった。また,マルチワークシートの利用でデータとマクロ部を明確に分離することができた。一方で,システムが大きくなったため,操作が遅くなるなどの問題も発生した。

5.本年度の機能追加予定

システムは生き物のように新たなバグ,機能の改良要求などの問題を提起し続けるものである。本年度もより完成度の高いシステムを構築すべく,以下の機能を追加する予定である。

  1. ① 印刷モジュールのユーザインタフェースを変更する。
  2. ② モジュール単位で保守することにより,デバック作業を容易にする。
  3. ③ 情報の有効活用として,入試用のデータベースとリンクする。
  4. ④ 留年生用ファイルの書式を変更する。
  5. ⑤ 原簿や証明書などの定型的内容を容易に変更するため,ワープロとリンクする。
  6. ⑥ 卒業・中途退学者の区別を明記する。
  7. ⑦ 複数のファイルをまとめてバックアップ,削除できる。
  8. ⑧ システム上で,バックアップファイルを再利用できる。
  9. ⑨ 印刷処理を高速化するためのアルゴリズムを検討する。
  10. ⑩ ダイアログボックスを統一して,ユーザインタフェースを簡潔にする。

①を例に説明するならば,従来の印刷の操作は,科別ファイルをオープンし,印刷の種類と全員分か個人分かの指示を行う。個人の場合,対象者を選択するなど3つのステップから成り立っている。これを1個のダイアログボックスにコンパクト化することを試みる。さらに,ユーザからの機能追加要求として,印刷枚数や複数の種類の証明書・複数の科・複数の対象者の指定などがある。

6.おわりに

本システムは,成績データの入力から各種証明書の発行,卒業判定のための面倒な処理を正確かつ迅速に行うソフトウェアとして,現在,実用化されている。

本システムは,卒業研究としては業務用情報処理システムの構築であり,目的がはっきりしているので完成度が問われる。しかし,システムが最も活用される時期が卒業試験の後であり,かつ,卒業研究という限られた時間内ということもあり,必ずしもデバックが十分にできなかった。そのバグを補いつつ改良を重ねてきた。また,学科の改編,1学科の学生数の増加,履修規定・卒業要件の変更も単年度のシステム作りを長引かせる要因となった。しかし,それも,本年をもって一応の完成とする。この間,卒業研究に携わった学生は,担当者であるユーザからの要求を正確に理解・分析し,かつ,議論を重ねることで,ユーザの立場で考えたシステム作りの難しさを体得できたものと考える。

本システムの構築に協力してくれた坂野正一郎,小野寺敦,中西陽子,萩原太さんに感謝する。

ページのトップに戻る