出席確認端末の更新に伴う IC カード読み取りアプリの開発
齊藤 智也 1) , 爲末 隆弘 1) , 久長 穣 1) , 王 躍 1) , 西村 世志人 1) , 末長 宏康 1) ,金山 知余 1) , 大平 康旦 1) , 江口 毅 1) , 今岡 啓治 1) , 多田村 克己 1)
1) 山口大学 メディア基盤センター
t-saito@yamaguchi-u.ac.jp

Development of IC Card Scanning Application for Updating
Attendance Registration Terminals
Tomoya Saito1) , Takahiro Tamesue1) , Yutaka Hisanaga1) , Yue Wang1) ,Yoshito Nishimura1) , Hiromichi Suenaga1) , Chiyo Kaneyama1) , Yasuaki Ohira1) ,Tsuyoshi Eguchi1) , Keiji Imaoka1) , Katsumi Tadamura1)
1) Media and Information Technology Center, Yamaguchi Univ.

概要
山口大学のいくつかの部局では，講義室に IC カードリーダを内蔵した出席確認端末が設置され，授業における学生の出席確認に活用されている．教職員・学生が出席状況を確認・修正するための Web システムは部局ごとに独自であるが，出席確認端末については同一の機種が採用されている．メディア基盤センターでは出席確認端末の機種選定，標準的な IC カード読み取りプログラムの開発，及び出席情報を蓄積する出席記録サーバの構築・運用を担当している．しかしながら，現行の端末は既に生産が終了しており，既設の端末も経年劣化に伴う故障が増加している．そこで我々は，大学の情報セキュリティ基準，及び授業等におけるネットワーク利用の規則に合致する新たな出席確認端末を選定した．従来の端末では OS として Linux が採用されているが，新たな端末では Android OS が採用されている．そのため，IC カードを読み取るための Android アプリを開発した．本稿では，山口大学における出席管理システムの概要，出席確認端末と出席記録サーバの連携，並びに開発した Android アプリについて述べる．

取りプログラムの開発，及び出席情報を蓄積する出席

1 はじめに記録サーバの構築・運用を担当している．しかしなが近年，多くの大学において IC チップ内蔵の学生証・ら，現在利用している端末は既に入手不可能になって職員証が導入され，入退館システムや証明書発行機，おり，大学内に予備品も残っていない．既設の端末で印刷システムにおける個人識別の手段として活用されは経年劣化に伴う故障が増加しており，後継機種の選ている．また，いくつかの大学では IC カードリーダ定・調達が急務である．とサーバを連携させた出席管理システムが導入されてそこで我々は，大学のセキュリティ基準及び授業等いる．これらのシステムでは，各講義室に IC カードにおけるネットワーク利用の規則に合致する新たなリーダが設置されており，学生が IC カードリーダに出席確認端末を選定した．従来の端末では OS として学生証をかざすと，出席情報がサーバに記録される．

Linux が採用されているが，新たな端末では Android

山口大学では FCF キャンパスカードフォーマットが採用されている．そのため，IC カードを読み取るた（FeliCa を応用した規格）に準拠した学生証及び職員めの Android アプリを新たに開発した．

名札が導入されている．学生証を授業の出席確認に活以降，本稿では，2 節において，山口大学における用するため，いくつかの部局では，講義室に IC カー

出席管理システムの概要及び既存の出席確認端末につドリーダを内蔵した出席確認端末が設置されている．

いて述べる．3 節及び 4 節ではそれぞれ，新たに選定教職員・学生が出席状況を確認・修正するための Webした出席確認端末，及び開発した Android アプリにつシステムは部局ごとに独自であるが，出席確認端末いて説明する．5 節では Android 端末を活用する先行については共通の機種が採用されている．メディア基事例について整理し，6 節でまとめと今後の課題につ盤センターでは端末の選定，標準的な IC カード読みいて述べる．

182

図 1: 山口大学における出席管理システムの概要

ステムは部局ごとに異なる．現行の端末を使用する出2 出席管理システム
2.1

席管理システムは，2009 年 4 月から医学部，工学部，システムの概要及び共通教育において運用が開始された．メディア基山口大学では出席管理システムの導入は一部の部局

盤センターは端末の機種選定，IC カード読み取りプロにとどまっているため，システムの導入・維持費用はグラムの開発，並びに出席記録サーバの構築を担当しそれぞれの部局が負担しなければならない．個々の部

た．このとき，医学科では学科独自の教務システムに局の予算では，商用のシステムの長期的な運用は困難出席管理のユーザ・インターフェースが追加された．

である．そこで本学では以前より，IC カードリーダを共通教育も同一の端末を採用したが，IC カード読み内蔵したプログラマブル端末を出席確認端末として活取りプログラムを含め，システム全体が業者により開用し，独自の出席管理システムを構築・運用している．

発された．なお，導入当初は教務システムとは別に出

図 1 に，出席管理システムの概要を示す．現在は共席管理用の Web システムが構築・運用されていた．

通教育のほぼすべての講義室，並びに医学部・工学部

工学部は共通教育の Web システムを利用することの一部の講義室に出席確認端末が設置されている．出になったが，保守契約等の事情により，工学部から共席確認端末は学生証に内蔵された IC チップから ID

通教育の出席記録サーバを直接利用することはできな情報を読み取り，出席記録サーバに送信する．ID 情報かった．そのため，工学部の出席情報はメディア基盤を受信した出席記録サーバは，ID 情報に対応する氏センターの出席記録サーバに蓄積し，1 日 1 回，共通名を送信元の端末に返信すると共に，現在時刻，学籍教育のサーバにコピーすることとした．

番号，及び送信元 IP アドレスをログとして記録する．

その後，共通教育の出席確認用の Web システムは氏名を受信した端末は，その氏名を画面に表示する．

教務システムに統合され，図 1 に示す構成になった．

学生は，端末の画面に自身の氏名が表示されることに医学科と他部局では教務システム・出席管理システ

より，出席情報が正常に記録されたことを確認する．

ムに求められる機能が異なるほか，遅刻・欠席と判断

出席確認端末はすべての部局において共通している

される基準も異なる．また，医学科では学生証を使用が，教職員・学生が出席記録を閲覧するための Web シ

しない独自の出席管理システムも導入されており，片183

方のシステムを使用する授業や，両方を使用する授業がある．そのため，現在も複数の教務システムがそれぞれ独自に運用されている．

2.2

従来の出席確認端末

出席確認端末は，学生証の仕様，大学の情報セキュリティ基準，及び授業等におけるネットワーク利用の規則により，以下の条件を満たさなければならない．
図 2: 既設の SMRT-43N の外観• 大学側で開発したプログラムが動作すること．
• NFC に対応していること（FeliCa 対応でも可）．
• OS は非 Windows 系 OS であること．
• 有線 LAN 及び PoE に対応していること．
• PoE 対応であること．
• 講義室に据え置きで設置できること．
また，大学の情報セキュリティ基準により，設置工事に際してはモニターやケーブルの保護，誤操作・悪戯・盗難の防止に関する措置が必要である．メディア

図 3: MWU-4000（Android 版）の外観

基盤センターは，設置工事の計画段階及び施工後にそれを確認しなければならない．
メディア基盤センターでは，前述の要件を満たすプ
ログラマブル端末としてマイクロテクノ株式会社の望が高まっている．

「SMRT-43N」を採用した．図 2 に，講義室に設置さそこで我々は，SMRT-43N の後継となる出席確認端れた SMRT-43N の外観を示す．この端末は 4.3 イン末を選定することとした．後継機種の調査にあたり，チの液晶モニタを具備しており，モニタの中央付近に2.2 節で述べた要件を満たすことに加え，外形寸法がIC カードリーダが内蔵されている．OS には Linux がSMRT-43N に近いこと，及び同じ仕様の製品が継続採用され，有線 LAN 及び PoE に対応している．当的に調達可能であることを考慮した．

時の販売業者は，端末の前面・側面を覆うアクリルカ

国内外の製品を調査した結果，株式会社マースウィ

バー，端末上部の端子及びケーブル類を隠す金属製カンテックが製造している「MWU-4000（Android 版）」

バー，壁掛け用金具もセットで販売していた．これらを候補として選定した [1]．MWU-4000 は Linux 版を活用し，誤操作及び盗難の防止措置が取られている．

も製造されているが，Linux 版は数十個以上を 1 ロッ

SMRT-43N 向けの IC カード読み取りプログラム

トとして生産され，納期も長いことから，故障品の交は，C 言語を用いて開発された．通常時には，端末の換等のために少数を購入することは困難である．その画面には現在時刻が表示されている．学生が端末の前ため，我々は Android 版を候補とした．マースウィン

面に学生証をかざすと，IC チップの ID 情報が読み取テック社のグループ企業である株式会社マーストーケられる．ID 情報が正常に読み取られたときは，端末かンソリューションを通じて検証用の端末を調達した．

らビープ音が鳴らされると共に，ID 情報が出席記録

図 3 に，MWU-4000（Android 版）の外観を示す．

サーバに送信される．その後，出席記録サーバから学この端末は 5 インチの液晶モニタを具備しており，IC生の氏名が返信され，端末の液晶モニタに表示される．

カードを読み取り可能な位置は右側半分（縦置きの場合は下側半分）である．OS には Android 4.4 が採用

3 出席確認端末の更新されている．また，この端末は 2.4GHz 帯の無線 LAN

製造元企業の解散により，SMRT-43N は新規調達（IEEE 802.11b/g/n）には対応しているものの，有線ができない．講義室に設置済みの端末では経年劣化にLAN 及び PoE には対応していない．そのため，端伴う故障が増加しているが，各部局にもメディア基盤

末の USB ポートに USB 接続型の有線 LAN アダプセンターにも予備品が残っていない．また，端末が未タ [2] を接続し，PoE スプリッタを介して PoE スイッ設置の講義室や新設の講義室への端末の新規設置の要チと接続することとした．

184

図 4: 開発した Android アプリの概要

なされる時間帯は数十分程度に限定されているため，

4 IC カード読み取りアプリの開発
4.1

学生が正確な現在時刻を把握できることが望ましい．

アプリの概要そのため，IC カード読み取りアプリには時計機能を実IC カード読み取りアプリの開発にあたり，統合開発装しており，画面上部に現在時刻が表示される．

環境には Android Studio を使用した．Android アプ

出席管理システムではインターネットや携帯電話回リのプログラムは，Java を用いて記述した．MWU-線への接続が不要であることも考慮し，出席確認端末

4000 では，内部のワンボード・コンピュータと IC カー

は大学内の NTP サーバを参照してシステム時刻を調ドリーダがシリアルポートを介して接続されており，節することとした．

製造元企業から C 言語で記述された制御用ライブラ

Android OS は Linux を ベ ー ス と し て い る が ，リが提供されている．Android Studio との連携が容MWU-4000 にインストールされている OS は cron，易であることから，C コンパイラには Android NDK

ntpdate を備えていない．Android OS を対象とした（Native Development Kit）を使用した．

サードパーティ製の cron 及び crontab のパッケージ

図 4 に，開発した Android アプリの概要を示す．本

も開発・配布されている．しかし，これらのパッケージ

アプリは OS の起動後に自動的に起動される．画面レ

では，crontab を配置するディレクトリが「/var/spool」

イアウトは縦置きモードで固定されており，通常画面配下の特定のディレクトリに固定されている．これでは現在時刻，及び「読み取り準備 OK」のメッセーに対し，MWU-4000 ではルートディレクトリ及びジが表示されている．IC カードを読み取り可能な場「/var/spool」ディレクトリが ROM ディスクから読所は液晶モニタの下側半分であるため，学生証をかざみ込まれるため，crontab を配置することができない．

すべき位置にイラストと説明文を表示している．

また，OS の起動時には特定のシェルスクリプトが管Android アプリ及び Android OS は長期間の連続運理者権限で実行されるものの，それらのシェルスクリ用により不具合が生じることがある．そのため，本アプトから実行されるコマンドは一般ユーザの権限とな

プリは毎日 23 時 30 分頃に端末を再起動する．

る．従って，OS 側で起動時もしくは定期的に時刻を4.2

時刻の同期処理調節する手法を採用することはできない．

学生の出席情報が出席記録サーバに記録されると一方，MWU-4000 にはルート化アプリが同梱されき，サーバのシステム時刻が現在時刻として使用されているため，Android アプリから端末のシステム時刻る．しかし，学生証を端末にかざした時に「出席」とみを修正することは可能である．そこで我々は，読み取185

図 5: Android アプリの画面遷移

りアプリに NTP クライアントの機能を追加した．

による遷移を示している．

本アプリでは，Java の TimerTask クラスを使用し本アプリでは，通常時は画面上部に時刻を表示し，て時計機能を実装している．アプリのメイン・スレッ

画面中央付近に「読み取り準備 OK」と表示している．

ドが現在時刻を表示する子スレッドを 1 秒間隔で生成

学生が端末に学生証をかざすと，本アプリは ICすることにより，時計としての機能を果たしている．

カードリーダを介して IC チップの ID 情報を取得す

NTP クライアントの機能によりシステム時刻が変更

る．ID 情報を取得できなかった場合，画面に「読み取されると，TimerTask の動作に不具合が生じ，時計機りエラー」と表示し，2 秒後に通常画面に戻る．

能が異常停止してしまう．また，「/dev/alarm」は普ID 情報を正常に取得した場合，画面中央付近に「ID段は書き込み不可に設定されているが，システム時刻を確認中...」と表示すると共に，HTTP/HTTPS をを更新する際には書き込み権限が必要になる．

利用して ID 情報を出席記録サーバに送信する．出席

そこで，NTP サーバから時刻情報を受信した後，以下の手順により端末のシステム時刻を更新する．

確認サーバから氏名が返信されると，画面中央付近に氏名を表示する．氏名が表示されるとき，氏名の長さに応じてフォントサイズが調節される．ただし，文字(1) 時計機能のための TimerTask を停止する．

が大きすぎたり小さすぎると氏名を確認しづらくなる(2)「/dev/alarm」を書き込み可に設定する．

ため，フォントサイズには最小値及び最大値が設けら(3) システム時刻を更新する．

れている．そのため，文字数が多い場合には氏名が複(4)「/dev/alarm」を書き込み禁止に設定する．
(5) 時計機能のための TimerTask を新たに開始する．

数行にわたって表示される．画面に氏名が表示された
後，1.5 秒経過すると再び通常時の画面に戻る．

以上の操作に 1∼2 秒程度かかるため，アプリの起動

また，学生が紛失したはずの古い学生証を見つけて時以外では授業時間（8 時 30 分 ∼19 時 30 分）を避使用した場合等，無効な ID を持つ学生証がかざされ

け，毎日 6 時及び 20 時にシステム時刻を調節する．

ることがある．出席記録サーバは，無効な ID に対し4.3 IC カードの読み取りては氏名を返信しない．出席確認サーバから氏名が返

図 5 に，本アプリの画面遷移の例を示す．図中の破線は時間経過による遷移を示し，実線は各種イベント

186

信されなかった場合，画面には「無効なカード」と表示され，2 秒後に通常画面に戻る．

一方，IC カードの ID 取得後に出席確認サーバに接続できなかった場合，画面には「通信エラー」と表示され，2 秒後に通常画面に戻る．

5 先行事例との比較
学生証を活用した出席管理システムは，以前から大学内で最大の講義室では，300 名を超える学生が複数の大学において導入・運用されている．スマート3 台の端末の前に並んで順番に学生証をかざす．出席フォン／タブレット向けのアプリを活用した先行事情報が正常に記録された場合は，画面に氏名を表示し例としては，講義室の IC カードリーダにかかる費用つつも，早期に次の学生証を読み取り可能な状態に復を削減することを目的として，教員が Android のス帰することが望ましい．反対に，エラーが発生した場マートフォン／タブレットを講義室に持参するシステ

合には教職員がエラーの種別を把握しやすいことが望ム [3, 4] が挙げられる．このシステムをさらに改善し，ましい．そのため，エラーメッセージの表示時間は氏出席記録を Moodle 等の授業支援システム（LMS）に名のそれよりも長く設定している．

反映させるシステムも開発されている [5]．

4.4

ネットワーク障害への対処

講義室に IC タグを設置し，学生が専用のアプリを端末のネットワーク機能もしくは隣接機器（PoE ス

インストールしたスマートフォンを IC タグにかざすイッチ等）が停止している場合，端末と隣接機器の間ことにより，IC タグに出席情報を記録するシステムにのネットワーク・リンクを確立することができない．

ついても開発・検証が行われている [6]．教職員は教師

このような場合，端末がネットワークから切断されて用のアプリを使用することにより，IC タグに授業情報いることは明らかであるため，図 5 の左端のように，を設定しておき，授業後に出席記録を IC タグからス画面に「ネットワーク障害」と表示される．加えて，マートフォン等に取り出すことができる．

時計機能，及び IC カードの読み取り機能が停止する．

また，学生のスマートフォン／タブレットの位置をその後，ネットワークリンクが確立された時には自動推定することにより，読み取り機器も IC タグも不要的に通常画面に復帰する．

なシステムに関する研究・開発も進められている [7]．

既知の問題点への対処

先行事例に比べ，山口大学の出席管理システムは，4.5

従来の端末で使用されている IC カード読み取りプ旧来からのシステム形態をそのまま踏襲している．シ

ログラムでは，以下の問題点が明らかになっている．

ステム形態を変更しない理由として，第 1 に，既設の(1) 学生証を財布等に入れたまま端末にかざした際に，他の IC カード（SuiCa 等）を読み取ってしまう．

(2) 学生証が長くかざされると，同一の学生証を複数回読み取ってしまう．出席記録サーバに無駄なログが蓄積されるほか，氏名の表示及びビープ音の鳴動が数回ほど繰り返される．

(3) サーバが応答しない場合やネットワークに不具合が生じている場合，エラー等が表示されず通常画面に復帰してしまう．出席記録サーバの負荷が高く，氏名の返信が遅れた場合にも同様の挙動となるため，利用者には出席情報が正常に記録されたかどうかの確認が難しい．

有線 LAN，PoE スイッチ等の再利用により導入コストを抑制することが挙げられる．
第 2 に，大学の各種規則の順守が挙げられる．講義室等に据え置きのネットワーク対応機器については，原則として有線 LAN を使用しなければならない．また，評点等の成績情報はもとより，出欠状況等，科目の合否に関わる情報を教職員が手元の端末や記録メディアに保存して持ち歩くことは禁止されている．そのため，無線 LAN 経由で出席記録をサーバに転送する出席確認端末や，教職員が持参した端末に出席記録を保存するようなシステムを導入することができない．
第 3 に，学生の私物端末や共同利用の可搬式端末を活用するシステムの運用の難しさが挙げられる．最近
でも，クラスに 1 名程度の割合でスマートフォン等を(1) に対しては，システムコードによる制限を設け，山口大学の学生証のみを読み取るように改善した．

保有していない学生がいる．出席管理システムを利用したいすべての教員が，システムの要件を満たす端末(2) に対しては，同じ IC カードを連続で読み取ったを保有していることも望めない．そのため，システム場合，最初の読み取りから 5 秒以上経過していなけれの導入に際し，教職員や学生への端末の貸与サービスば，2 回目以降は反応を起こさないように改善した．

が必要になる．

(3) に対しては，4.3 節及び 4.4 節で示したように，各種のエラーメッセージを表示することとした．

メディア基盤センターでは以前，出席確認端末が未設置の講義室を使用する教職員を対象として，端末の187貸し出しを試験的に実施していた．しかし，これらの従来の出席確認端末は OS に Linux を採用している端末は返却されていない．今後，教職員や学生に端末が，MWU-4000 は Android OS を採用している．そを貸与した場合にも同様の問題が心配される．

こで我々は，既存の出席記録サーバと連携するためのまた，すべての学生が個々のスマートフォン等にア

IC カード読み取り用 Android アプリを開発した．開プリをインストールすることは望めない．学生が毎回発したアプリでは，従来の端末に使用されていたプロの授業において正しく出席登録を行うことや，アプリ

グラムと同等の機能を有している．また，従来のプロを稼働状態にして位置推定に対応することも難しい．

グラムの問題点を解決するため，(i) システム・コード同様に，教職員が毎回の授業に可搬式端末を持参を利用した読み取り対象カードの制限，(ii) 同一カーすることは望めない．また，授業前の設定，授業後のドからの連続した出席情報の記録の防止，(iii) 不具合

データの読み出し操作等，授業担当者による毎回の操の種類に応じたエラーメッセージの表示，といった機作・対応が必要になるシステムの普及は難しい．

能を新たに追加した．

可搬型端末や学生の私物に依存する手法では，アプ

これまでに，開発した Android アプリが所定の機能リのインストールや出席登録の失敗への対応，事前を有すること，及びメディア基盤センター内においての設定や出席記録の読み出しのサポート，機器の貸出端末の連続運用が可能であることが確認されている．

サービスや未返却・故障への対応といった業務が増加

今後の課題として，講義室に設置するためのケーブする．これにより，物品コストはさほど軽減されない

ル類やカバー等の調達，及び講義室等の実際の運用環上に，人的コストの増大が心配される．

境における動作検証が挙げられる．

可搬型端末や学生の私物端末，無線 LAN 等を活用するシステムは，現時点では山口大学には適していな

参考文献

いため，従来のシステム形態を継続することとした．

[1] 株式会社マースウィンテック，「産業用 Android据え置き型の IC カードリーダを必要としないシス

無線端末 MWU-4000」，http://www．winteckk

テムの導入については，長期的な課題として引き続き検討する．

．co．jp/product/mwu-4000．html．

[2] 株 式 会 社 バ ッ フ ァ ロ ー ，「LUA3-U2-ATX :LAN アダプター」，https://www．buffalo．jp/

6 まとめproduct/detail/lua3-u2-atx．html．

本稿では，山口大学における出席確認端末の更新，[3] 永井孝幸 他，「Android タブレットを用いた FCF

並びにこれに伴う Android アプリの開発状況についキャンパスカード対応 IC カードリーダのオープンて述べた．

な実装と LMS 連携による出席管理の実現」, 学術

本学では 3 つの部局に出席管理システムが導入さ情報処理研究，No．17，pp.67-76，2013 年 9 月．

れ，各講義室に IC カードリーダを内蔵した出席確認[4] 橘弘智 他，「NFC 対応 Android 端末向け IC 学生端末が設置されている．出席管理システムのうち，利証リーダーアプリの開発」，平成 26 年度電気・情用者が出席記録を確認・修正するための Web システ

報関係学会九州支部連合大会講演論文集 ，p.566，

ムについては部局ごとに個別のシステムが導入されて2014 年 9 月．

いる．しかし，いずれの部局においても同一の出席確認端末が使用されている．

[5] 橘弘智 他，「NFC スキャンから LMS までシーム
レスに出席情報を記録可能な Android アプリの開メディア基盤センターでは出席確認端末の機種選定，標準的な IC カード読み取りプログラムの開発，及発」，教育システム情報学会第 40 回全国大会論文集，pp.253-254，2015 年 9 月．

び出席情報を蓄積する出席記録サーバの構築・運用を[6] 平田勇一郎・松前進，「スマートフォンと NFC タグ担当している．しかし，製造元企業が 2014 年に解散しを用いた簡易出席管理システムの開発」，教育シスたため，従来の出席確認端末はすでに入手不可能であ

テム情報学会 2014 年度学生研究発表会，pp.167-

る．そこで我々は，大学の情報セキュリティ基準，及168，2015 年 2 月．

び授業等におけるネットワーク利用の規則に合致する[7] 梶岡慎輔 他，「BLE ビーコンを用いた位置推定に端末について調査を行った．そして，新たな端末としよる打刻システムの運用と課題」，情報処理学会研てマースウィンテック社の MWU-4000（Android 版）

究報告（SPT），Vol.2016-SPT-20，No.12，pp.1-7，を候補とし，動作検証のためにこの端末を調達した．

2016 年 9 月．

188