I1-7

Rstudio Server, knitr 等を活用したフレキシブルなWeb によるデータ分析機能提供の試み
Developing a Simple and Flexible Data Analystic System
by Utilizing Rstudio server, knitr etc.
中野 裕司*1-5, 喜多 敏博*3,2,1, 松葉 龍一*3,2,1, Muhammad Wannous*1, 宇佐川 毅*4,2
Hiroshi Nakano*1-5, Toshihiro Kita*3,2,1, Ryuichi Matsuba*3,2,1, Muhammad Wannous*1, Tsuyoshi Usagawa*4,2
熊本大学 *1 総合情報統括センター, *2 教授システム学専攻, *3 ｅラーニング推進機構, *4 自然科学研究科, *5 大学情報分析室*1

Center for Management of IT, *2Graduate School Instructional Systems, *3Institute for E-Learning
Development, *4Graduate School of Science and Technology, Kumamoto University
Email: nakano@cc.kumamoto-u.ac.jp

あらまし：Rstudio Server を knitr、RMySQL 等と組み合わせることで、R の統合開発環境を用いてサーバ上で LMS 等のデータを直接解析・可視化し、結果を HTML 化することができる。この環境でインタラク
ティブに行った解析・可視化を、統合認証と組み合せで、定期更新した解析等結果を、ユーザを絞って提供することができる。このような構成が可能性について試験的な構築を行ったので報告する。
キーワード：LMS, ラーニングアナリティクス, 可視化, システム開発, R, Rstudio1.

はじめにLMS 等の学習支援システムを活用した教育形態が増えるとともに、そこに記録される学習活動の記録（学習履歴）も学習支援に利用されるようになってきた。例えば、進捗の思わしくない学習者を見つけて連絡するとか、科目を超え、複数のシステムのデータを連携することで、問題を抱えた学生の早期発見や、戦略的大学経営へ活用といった、Learning
Analytics や Institutional Research は世界的にも注目されている(1)。
学習履歴を学習支援に活用する例として 、Moodle 等の LMS に、小テスト受験後に全受験者の得点分布を示す機能があり、学習者に受験を促す等に活用できる。今回は、このように即時的、又は、比較的短期間に学習者にフィードバックを与える場合を対象とした。このような場合、 LMS に備わっていない可視化や解析を行いその結果を学習者に開示するには、LMS にプラグイン等で機能を追加するか、なんらかの方法で LMS のデータにアクセスし、可視化、解析するシステムを別に立てる必要があろう。
しかし、学習活動の可視化や解析は、その学習内容、形態にもより、また、様々な手法が存在する。
実際には、対話的に試行錯誤を繰り返しながら行う場合も多いと思われる。ここで提案するシステムは、試行錯誤しながら行った可視化、解析を、最新のデータに対して更新しつつ、 LMS 等に組み込んで学習者に開示しようというものである。
正攻法では、xAPI や IMS Caliper といった標準化に従い学習活動を LRS 等で収集し、そのデータを元にダッシュボード等として実現すべきであろうが、今回は、スモールスタートとして、出来る限り簡単に実現する方法を考えた。

2.

簡易な可視化・解析システムの構築

試行錯誤しながら学習データの可視化、解析を行い、その結果を、最新のデータで更新しつつ LMSの等で公開するため、以下の用件を考えた。
1. Web ブラウザから、対話的に試行錯誤しながら可視化、解析のプログラミングが可能。
2. LMS 等の学習活動データへアクセス可能。
3. 可視化、解析した結果が、一定時間おきに更新され、LMS のコンテンツ等へ組み込むことが可能。

これらの用件に関して、以下のように実現を試みた。なお、構築したシステムの概要を図 1 に示す。
まず、1.に関しては、R の統合開発環境であるRstudio のサーババージョンのオープンソース版を利用した。デスクトップと殆ど同様の機能を Webブラウザから可能にしたもので、補完機能やデバッグ機能も充実しており、対話的に試行錯誤を繰り返しながら可視化、解析が行える。 Rstudio を Moodleの解析に活用した例としては、参考文献(2)等があるが、CSV 経由のデータ取得であり、定期的な更新や限定公開は考慮していないようである。
2.に関しては、R のライブラリを活用することとし、今回は RMySQL を利用して Moodle のデータベースへアクセスした(select 文のみ許可)。R からア
クセスできるものであれば、基本的には利用可能であると思われる。
3.に関しては、まず、LMS のコンテンツへ組み込
むためには html、png 等、Web ブラウザで表示可能なデータ形式であることが必要で、これに関しては、R のライブラリである knitr を用いて、R の結果をhtml ドキュメントとして出力する方法、及び、標準機能であるグラフィックデバイスを png 等に切り替える方法で実現した。一定時間おきのデータ更新は、試行錯誤で作成した可視化や解析のプログラムは Rのソースなので、OS の cron 機能で、一定時間おきにバッチ処理を行うことで実現した。また、 LMSへ組み込むために、LMS と同じシングルサインオン(SSO)下で制限公開可能な Web サーバを用いた。
具体 的には、 CAS 認証 に対 応した tomcat アプリケーションで実現した。
以上により、Web ブラウザからリモートで学習データの可視化、分析を試行錯誤的に行い、その結果を一定時間毎に更新し、LMS コンテンツ中での利用を可能にした。

3.

動作試験

学習支援システム Moodle と連携して本システムの動作試験を行った。
試験的に可視化したのは、全学必修の情報基礎科目で実施している確認テストの成績分布で(3)、Moodle 自体も成績分布は可視化可能であるが、― 13 ―

教育システム情報学会 JSiSE2016
第41回全国大会 2016/8/29-8/31

受験回数が 1 回目、2 回目、3 回目以降、各々の成績分布(多く受験するほど成績が向上する様子を示す)や、成績毎の合格者数の変化など、Moodle では難しい可視化を行ってみた。
また、解析に関しては、オンラインで約 800 名程度が受講する情報処理入門授業 (4)の全受講者の小レポートを、各回毎に、ネットワーク分析と形態素解析を利用して言語間の関係性をグラフ化したものについて行った。
図 2 に、Web ブラウザから Rstudio server を用いて、対話的に可視化、解析の試行錯誤を行っている様子を示す。
図 3 に、Moodle のページモジュールに本システムで作成した図(png)を埋め込んだ例を示す。また、図は省略するが、Moodle の URL ツールで本システムで作成した html ページを埋め込み表示した。どちらに関しても、グラフや html ページが 1 時間毎に更新されることを確認した。

4.

参考文献

結果と今後の課題

今回、簡 易な可視化 ・解析システムを構築しMoodle と連携して動作試験を行った結果、Moodle単体ではできないような学習活動の可視化や解析を試行錯誤しながら対話的に行え、その結果を、最新データに基づいて定期的に更新しながら LMS のコンテンツ中で学習者に提示することができた。
可視化・分析システム

学習関連システム（LMS等）

Rstudio Server●
対話的な可視化分析●
Webブラウザから利用可●
DB接続(RMySQL等)●
簡易なMarkdownでHTML出力(knitr)●
種々の可視化、分析ツール

DB(学習履歴等)

ソース等

保存

今回の動作試験では、Moodle のデータベースへ
RMySQL ライブラリを用いてアクセスした。この
場合、Moodle の管理者によるデータベースの設定が必要であること、可視テーブルの制限等は可能であるが、基本的には Moodle 全体のデータベースの内容が見え、開発者は管理者相当であることが必要であるため、コース単位での制限が可能な仕組みが望まれる。また、公開制限を LMS と同じ SSO 下としたが、コース単位で可能なほうがよい。cron による同期処理は、あくまで一定時間おきの処理であり、オンデマンドではない。あまり処理間隔を短くすると、サーバの負荷だけでなく Moodle のデータベースへの負荷も考慮する必要があろう。また、
Rstudio server オープンソース版の認証は OS のユー
ザ認証であり、SSO 配下にできない。今後、これらの問題の改善に取り組みたい。
謝 辞 本 研 究 は 科 研 費 （ 15H02795, 25280124,15K01044）の助成を受けたものである。
(1) LAK2016, 6th International Learning Analytics andKnowledge (LAK) Conference,
http://lak16.solaresearch.org/ (2016-06 確認).
(2) James, Scratching the surface: Moodle analytics in
Rstudio Part 1 and 2, 2015.
https://infiniterooms.wordpress.com/2015/05/24/scratching-the-surface-moodle-analytics-in-rstudio-part-1-moodleelearning-analytics-rstudio/ (2016-06 確認).
(3) Nakano, H. et. al., (2005). The instructional effects of online tests on the large-scale IT courses. Paper presented at
the ITHET 2005, pp.F4B-7-F4B-11.
(4) 中野他 (2014) オンラインテキストを活用した大規模情報処理科目の実施. 日本教育工学会 第 30 回全国大会（岐阜大学）発表論文集, pp.533-534.

学習コンテンツ
URL参照埋め込み●
リンク、インラインフレーム●

公開準備フォルダ
定期更新(cron)

SSO公開フォルダ開発者、（教授者）
Webブラウザ

学習者
Webブラウザ

図 1: システム概要

図 2: Web ブラウザ上で対話的に可視化・分析（Rstudio Server）

図 3: LMS (Moodle) のコンテンツ上に URL で定期更新されるグラフを埋め込んだ例― 14 ―