情報処理学会論文誌

Vol. 0

1–12 (??? 2011)

1. は じ め に

講義資料閲覧ログを用いたプログラミング講義
進捗管理手法の提案

近年，日常のあらゆる製品にソフトウェアが組み込まれ，その重要性が増している．そのため，優秀なソフトウェア開発者の育成が社会的な課題となっている．特にソフトウェア開
発教育の一つであるプログラミング教育は多くの教育機関で行われており，その進め方1),2)

堀 口 悟 史†1
山 田
誠†4

井 垣
星

宏†2
徹†3

井 上 亮 文†3
岡 田 謙 一†5や，受講生の反応に関する研究3)–6) が数多く実施されている．
プログラミング教育で用いられる講義資料には HTML 形式，ppt 形式，PDF 形式等様々な形式が存在している．中でも HTML 形式の資料は，他の形式の資料に比べてソースコー

HTML 講義資料を用いるプログラミング講義では受講生が講義資料に自由にアクセスできるため，講師の意図した順序やタイミングで資料を閲覧させることが困難である．講師の意図したとおりに資料を閲覧させることができなければ，結果として受講生の講義内容に対する理解が不足してしまう可能性がある．本稿では，受講生個別の講義資料へのアクセス状況を閲覧ログとして収集・分析する授業進捗管理システムを提案する．授業進捗管理システムは閲覧ログにもとづいて受講生がどのような状態にあるかを分析し，講師に提示する．実際にプログラミング講義において我々のシステ
ムを利用したところ，遅れているのべ 73% の受講生を検出できることが確認できた．

ド全体を掲載しやすいことから，多くのプログラミング講義で利用されている．
一方で，HTML 形式の資料では，講義の進捗管理が難しい．受講生が Web サーバ上に公開した資料へ自由にアクセスできてしまうと，講師が説明している内容と異なる範囲の資料を閲覧することがある7),8) ．結果として講義内容に対する理解の低下を招く恐れがある．
このような講師の意図した閲覧範囲と受講生の閲覧範囲のずれは主に受講生の閲覧部位
が講師の意図より前である場合と，先である場合の 2 つが考えられる．前者は受講生が講師の説明している部位よりも前を見返している場合や，講義を聴いていない場合などに発生するずれである．後者は受講生が講師の説明している内容を理解していると判断し，講師の説Progress Management Metrics for Programming
Education of HTML-based Learning Material
Satoshi Horiguchi ,†1 Hiroshi Igaki ,†2
Akifumi Inoue ,†3 Makoto Yamada ,†4 Tohru Hoshi†3
and Kenichi Okada†5

明よりも先の部位を閲覧している場合や，講義資料の後半に含まれている課題を先回りして解こうとしている場合などに発生するずれである．
本稿では上記ずれの原因を 3 つに分類し，それらを講義時間中に検知するための進捗管
理メトリクスを提案する．このメトリクスを受講生から取得した講義資料閲覧ログ（以下，閲覧ログ）に適用し，ずれの発生している受講生とその原因を講師に提示することで受講生
個別の授業進捗状況を考慮した授業の進行管理を実現することができる．本稿の構成を以下に示す．2 章では，準備としてプログラミング講義における進捗管理の課題，3 章では提In lectures of programming which use HTML resources, it is diﬃcult to makestudents browse the resources as a lecturer intended. If a lecturer can’t recognize
the browsing status of each student, the students may have lack of understanding about the lecture. In this paper, we propose Progress Management System
for Programming Education to collect and analyze access logs to HTML learning resources by each student. Our system extracts students who can’t keep
up with the progress in the lecture with using our proposed metrics. Someexperiments showed that our system can detect about 73% of students whichhave problems in a lecture actually.

1†1 慶應義塾大学大学院理工学研究科
Graduate School of Science and Technology, Keio University†2 大阪大学大学院情報科学研究科
Graduate School of Information Science and Technology, Osaka University†3 東京工科大学コンピュータサイエンス学部
School of Computer and Science, Tokyo University of Technology†4 東京工科大学大学院バイオ・情報メディア研究科
Graduate School of Bionics, Computer and Media Science, Tokyo University of Technology†5 慶應義塾大学理工学部情報工学科
Faculty of Science and Technology, Keio Universityc 2011 Information Processing Society of Japan⃝

2

講義資料閲覧ログを用いたプログラミング講義進捗管理手法の提案

案手法について，4 章では実装について，5 章では評価実験，6 章では考察について述べ，7なるという悪循環の原因となることも多い．そのため，受講生の理解が必要な部位を講師が章をまとめとする．

説明する際には，受講生が講義資料の先を見過ぎないように指導する必要がある．

2. 準

G2 のずれは受講生の閲覧している部位が講師の意図する部位よりも手前のものであるこ

備とを示している．講義中の進捗管理を適切に行うためには，G2 のずれが発生していること

2.1 プログラミング講義と進捗管理を検知し，さらにそのずれがどのような理由で生じているかを講師や講義の TA が知る必要

プログラミング講義ではプログラミング言語の文法や利用方法の教育を行うために，ソーがある．我々は講義中における G2 のずれが発生しているときに受講生が講義に対して遅れスコードを受講生に実際に打ち込ませることが多い．よって多くのプログラミング講義でていると定義し，さらにその遅れの理由を以下に示す D1∼D3 に分類した．

講義資料が Web 上に公開される．受講生はその講義資料を自身の端末で見て，ソースコー

D1 受講生の理解が遅い

ドのコピーや写し書きを行うことが可能となる．本稿で対象とするプログラミング講義は，

D2 講義資料中における手戻り

講師がプログラミング文法等の座学の合間に，その内容に即した演習を行う形式であるもの

D3 講義資料閲覧とは別のことをしているとする．また，講義資料は座学と演習の内容を含んだ 1 ページの縦に長い HTML 形式のものが講義ごとに作成，公開されることを想定している．

D1 は受講生の理解が追いついていない場合に起こる．この遅れが顕著な場合は，講師は講義の進捗を遅らせるか，個別にわからないところを指導するといったフォローをする必要

講義資料が公開されることで，講義資料の閲覧タイミングや順序を受講生自身も自由に決がある．D2 は受講生が少し前の内容を見直している場合に起こる．この遅れ理由は，現在定できる．我々は受講生が講義資料のどの部位をどのタイミングで閲覧するかを講師が管理行われている内容を理解するための前提知識を受講生が持っていないことを示している．確することをプログラミング講義における進捗管理と定義する．また，各受講生が講師の意図

認作業のような少しの手戻りであれば問題はないが，何度も手戻りが発生している受講生にする講義資料部位を講師の意図するタイミングで閲覧している状態を進捗管理が適切に行は講師が前提知識についての説明を行う必要がある．また，多くの受講生が同様の部位でえている状態と呼ぶものとする．本稿ではプログラミング講義における適切な進捗管理を支

手戻りを起こしている場合には，講義資料の見直しといった対応が必要となることも考え援することを目的とする．

られる．D3 は受講生が講義資料を見ずプログラミングを行っている場合や，講義資料以外

2.2 プログラミング講義における進捗管理の課題の Web ページを閲覧している場合に起こる．D3 が発生しているからといって必ずしも問

各受講生が自身の環境で講義資料を閲覧できると，講師による受講生の進捗管理が非常に題であるというわけではないが，講義の進め方や内容と比較して顕著に講義資料閲覧以外の困難になる．石井，野田ら7),8) はプログラミング講義中の受講生の閲覧ログを利用して講ことをしている受講生が居た場合には，注意喚起を行う必要がある．また，受講生が授業に

義資料閲覧状況の取得・提示するシステムを開発している．このシステムを利用した評価実参加する意思がない場合にも起こりうる遅れである．深刻な状況の場合は，TA でなく講師

験によると，多くの受講生が講師の解説と異なる部位を閲覧していることがわかった．

が直接指導するといった対応が求められることがある．

このように進捗管理では講師と受講生の閲覧する講義資料部位のずれに対応することがこのように進捗管理を適切に行うには G1，G2 のずれを講師が検知し，ずれの内容や理非常に重要である．通常，講師が公開する講義資料は講師の意図する順序に並んでいる．そ由に応じた対策を講じる必要がある．そこで本研究では，専用ブラウザと受講生の閲覧ログのため，講師は講義中に，以下の 2 種類のずれに対応する必要がある．

を利用したずれを検知する仕組みを提案する．

G1: 受講生の閲覧部位が講師の意図している部位よりも先に進んでいる
G2: 受講生の閲覧部位が講師の意図している部位よりも前である
G1 のずれは主としてある程度以上講義内容を理解している，あるいは理解したつもりに

3. プログラミング講義における授業進捗管理手法
3.1 キーアイディアなっている受講生において発生する．講義資料後半に課題がある場合などに受講生が講義を

我々は 2.2 節で述べたずれの検知とずれの内容や理由に即した講師による対策を支援する

聴かずに課題にとりかかり，結果として講義内容への理解が不十分になり，課題も解けなくために，プログラミング講義のための進捗管理支援システムを提案する．本稿で述べる講

情報処理学会論文誌

Vol. 0

1–12 (??? 2011)

c 2011 Information Processing Society of Japan⃝

3

講義資料閲覧ログを用いたプログラミング講義進捗管理手法の提案

図 2 専用ブラウザが取得する閲覧ログ座標
Fig. 2 A browsing log of our browser
図 1 講義進捗管理支援システムのアーキテクチャ
Fig. 1 Architecture of progress management system

義進捗管理支援システムのアーキテクチャを図 1 に示す．本稿で提案するシステムは講師と受講生それぞれのための講義資料閲覧用ブラウザ，閲覧ログ収集サーバおよびデータベー
ス，閲覧ログにもとづくずれ検出および遅れ理由分析を行うためのシートマップから構成されている．このような機構により以下の F1，F2 の機能を実現し，前節で述べた G1，G2

表 1 閲覧ログ収集サーバに送信される閲覧ログ例
Table 1 The access log data from our browser
ユーザ ID
010015010206010015010015

時刻情報
2010-12-01 13:20:05
2010-12-01 13:20:14
2010-12-01 13:20:38
2010-12-01 13:20:54

URL
http://www.xyz.ac.jp/java2/lecture03.html
http://www.xyz.ac.jp/java2/lecture03.html
http://www.xyz.ac.jp/java2/lecture03.html
http://www.xyz.ac.jp/java2/lecture03.html

y 座標
14365
15252
15205
13765

高さ
648
432
648
648

のずれおよび遅れ理由の分析を行う．

F1: 閲覧ログ収集・解析機能

以降では，進捗管理システムの各構成要素と F1，F2 の機能の詳細について詳述し，G1，

G2 のずれおよび遅れ理由をどのようにして検知するかについて説明する．

F2: 講義資料閲覧制限機能
F1 は受講生が講義資料のどの部位を閲覧しているかをピクセル単位で取得し，解析する機能である．受講生および講師の閲覧ログの比較による遅れ・進み度合の確認や各種メトリ
クスによる受講生ごとの遅れ理由検知を講義中に行うことが可能となる．

F2 は受講生が閲覧できる講義資料部位を講師が講義中に制限できるようにする機能である．講師が講義中に講義資料の任意の範囲を行単位で指定することで，受講生の講義資料閲

3.2 講義資料閲覧用ブラウザ
我々は講義資料閲覧時に利用される，講師・受講生それぞれのための講義資料閲覧用ブラウザを開発した．このブラウザは講師および受講生が表示している講義資料の領域を時間間
隔 t1 ごとにピクセル単位で取得し，サーバにアップロードする．
図 2 に講義資料閲覧用ブラウザが取得する閲覧ログの形式を示す．講義資料は左上が始点

覧画面の一部が見えなくなり，G1 で述べたような受講生が講師より先に進み過ぎるという(0, 0) となる．そこから右が X 座標の正，下が Y 座標の正方向となっている．ここで任意ケースを防ぐことが可能となる．

の時点における講師の閲覧ログはその時点に講師が閲覧している部位の左上の座標 (0, tY )情報処理学会論文誌

Vol. 0

1–12 (??? 2011)

c 2011 Information Processing Society of Japan⃝

4

講義資料閲覧ログを用いたプログラミング講義進捗管理手法の提案

!"%&
'()*!

!"%&
)*!

!"%&+,-./)*012!

!"#$!

!"#$%&'()*+,-./'/!

図 3 講師用ブラウザの表示例
Fig. 3 An example of teacher browser

図 4 受講生用ブラウザの表示例
Fig. 4 An example of student browserと閲覧範囲の高さ tH の組として取得される．受講生の閲覧ログも同様に，任意の時点における受講生の閲覧部位左上の座標 (0, sY ), 閲覧範囲の高さ sH の組として取得される．両ラウザでは矩形領域を閲覧している受講生数が表示される．この機能により，講師は講義中

ブラウザは表 1 のような閲覧ログを次節で詳述する閲覧ログ収集サーバに送信する．ユーにどの程度の受講生が先に進んでいるか (G1)，あるいは遅れているか (G2) を人数で把握

ザ ID の項目は専用ブラウザを利用している受講生や講師などのユーザを表し，時刻情報のすることが可能となる．

項目はアクセスログの取得時間，URL の項目はユーザがブラウザで閲覧しているページの

講師用ブラウザにおける矩形領域の左端はボタンになっており，そのボタンを講師が講師

アドレス，y 座標の項目は tY および sY ，高さの項目は tH および sH のどちらかを表す．

用ブラウザで選択することで，受講生による閲覧を許可する仕組みとなっている．図 3 で

この閲覧ログは講師や受講生がブラウザ上に表示する講義資料の領域がマウスやキーボー

は，「HTML ファイルを用意する」という部位が選択された状態になっている．受講生ブラド操作により変化するたびにサーバに送信される．

ウザでは図 4 に示すように，講師が講師用ブラウザで許可を出した領域のみが表示される．

さらに講師用ブラウザ (図 3) は F1 機能の一部としての講義資料のどの領域を何人の受受講生ブラウザは時間間隔 t2 ごとにサーバに問い合わせを行い，講師の許可した領域を取講生が閲覧中であるかを表示する機能と F2 機能を持っている．図 3 に示すように講師用ブ得し，対応する領域の可視化/不可視化を制御する．この機能により，受講生が講師の意図

情報処理学会論文誌

Vol. 0

1–12 (??? 2011)

c 2011 Information Processing Society of Japan⃝

5

講義資料閲覧ログを用いたプログラミング講義進捗管理手法の提案

図 7 データ表示部の例
Fig. 7 An example of progress management metrics

つの座席には，その座席に座っている学生の閲覧ログが表示される．図 6 に座席に表示される講義資料閲覧ログを示す．座席上部から順に受講生の ID，名前，閲覧ログが表示されている．閲覧ログは sY − sH というハイフン区切りで表示される．
閲覧ログが受講生ごとに提示されることで，どの受講生がどの程度遅れているかを講師やTA が判断できるようになる．一方で，閲覧ログのみでは遅れ理由の分析を行うことは困難

図 5 シートマップの表示例
Fig. 5 An example of sheet map

である．そこで本研究では，シートマップ上で D1∼D3 の遅れ理由分析を行うため，下記に示す 4 種類の進捗管理メトリクスを提案する．

!"!
($#'$)'*!
()!

'456!
+,!
*+!

!"#$%&'!!
,-././010%0230!

!"#$%!
$%!

M1 閲覧遅れ度合
M2 ブラウザ移動量&&$%!

M3 フォーカス外れ時間&&'%!

M4 フォーカス外れ回数'%!
!"#'%!

図 6 シートマップに表示される情報例
Fig. 6 An example of sheet map detail以降ではこれらの進捗管理メトリクスの詳細と D1∼D3 分析手法について説明する．

3.3.1 M1:閲覧遅れ度合
閲覧遅れ度合は講師による講義資料閲覧範囲と受講生の閲覧範囲がどの程度ずれているかを示すメトリクスである．このメトリクスにより講師の意図している受講生の閲覧範囲と，実際の受講生の閲覧範囲にどの程度差が生じているのかという情報を取得することがでよりも先の部位を閲覧したり，課題を解き始めてしまったりする行為を防ぐことができる．

きる．我々は以下の 6 段階で閲覧範囲の差の分類を行った．

3.3 シートマップによる受講生ごとの遅れ理由分析

E1 とても遅い : tY > sY + sH

図 5 に本研究で開発したシートマップの表示例を示す．シートマップでは受講生一人一E2 遅い : tY > sY + 12 sH

人の講義資料閲覧状況が分析され，可視化される．受講生個々人の状況をモニタリングしやE3 やや遅い : tY ≥ sY

すくするため，シートマップには実際の教室と同様の配置で座席が表示される．この一つ一E4 やや早い : tY < sY

情報処理学会論文誌

Vol. 0

1–12 (??? 2011)

c 2011 Information Processing Society of Japan
⃝

講義資料閲覧ログを用いたプログラミング講義進捗管理手法の提案

6

E5 早い : tY + 12 tH < sY

ング付けをして表示する．

E6 とても早い : tY + tH < sY

3.3.4 M4:フォーカス外れ回数

シートマップでは講師の閲覧範囲の左上である tY の値と，受講生の閲覧範囲の左上であフォーカス外れ回数は M3 と同様に，受講生が専用ブラウザからフォーカスが外れた回

る sY の値を時間間隔 t3 ごとに比較し，受講生ごとに遅れている量により色を分けて表示数を計測するメトリクスである．フォーカスが外れた回数の累積値を受講生ごとに算出し，を行う．受講生の閲覧範囲内に講師の閲覧範囲が全く含まれておらず講師よりも遅れている

時間間隔 t6 ごとの値を進捗管理メトリクス表に大きい順にランキング付けをして表示する．

場合 E1，講師よりも進んでいる場合は E6 と定める．受講生の閲覧範囲の半分より下に tY

3.3.5 遅れ理由の検知が含まれていれば E2 と定める．講師の閲覧範囲の半分より下に sY が含まれていれば E5

シートマップでは，まず M1 の進捗管理メトリクスを用いて，遅れている受講生を検出すと定める．上記 4 パターンに含まれておらず受講生が講師よりも遅れていれば E3，講師よる．さらに，M2∼M4 の進捗管理メトリクスを用いて，遅れている受講生を対象に，D1∼D3

りも進んでいれば E4 と定める．

のどの理由で遅れているかを分析する．ここで D1∼D3 のいずれかであると特定の受講生

シートマップ上では，座席情報内の閲覧ログを示すエリアにおいて，その進捗状況によっが分析された場合は，図 5 に示すシートマップ内の対応する座席付近に D1∼D3 のいずれて 6 色に色分けされる．6 色の色はそれぞれ紺：とても早い，紫：早い，水色：やや早い，

かであることが文字で表示される．

桃：やや遅い，橙：遅い，赤：とても遅い，となっており受講生の進捗状況が視覚的にわか

D1:理解の遅い受講生の検知るようになっている．

受講生の閲覧ログが講師から一定以上遅れており，ブラウザ移動量が大きすぎない場合に3.3.2 M2:ブラウザ移動量

D1 であると判断する．これはブラウザ移動量が相対的に大きい場合は手戻りである可能性

ブラウザ移動量は時間間隔 t4 あたりに受講生が講義資料を閲覧するためにブラウザをどが高いためである．本研究では，M1 が E1 か E2 である受講生のなかで，M2 が受講生全の程度スクロールさせたかを表す．ブラウザ移動量は次式を用いて算出する．

M2=

n
∑

|sYi − sYi−1 |体の下位 30%以内である受講生を，D1 であるものと判断する．

D2:手戻りをしている受講生の検知

i=1

現在の受講生ブラウザの左上 y 座標 (sYi ) を取得し，1 分前の値 (sYi−1 ) と比較すること

D2 のケースでは，受講生が講師の閲覧範囲よりも大きく前の範囲を閲覧していると考えで 1 分間のブラウザ移動量を取得する．シートマップ上では，時間間隔 t4 ごとに各受講生られる．また，閲覧部位を前に戻すために他の受講生と比較してブラウザ移動量が多くなっのブラウザ移動量が累計して示される．取得した移動量を昇順に並べることで移動量の少なていることも考えられる．そのため，M1 が E1 か E2 である受講生のなかで，M2 が受講さを，降順に並べることで移動量の多さをランキングとして講師が確認することができる．

生全体の上位 30%内に含まれる受講生を D2 であると判断する．

図 7 にシートマップ上で表示される進捗管理メトリクス表を拡大したものを示す．この表では，M2∼M4 の各メトリクスがタブで切り替えられるようになっており，受講生の学籍番号と座席情報，各メトリクス値を講師が確認できる．

D3:講義資料閲覧以外のことをしている受講生の検知
D3 に相当する受講生は専用ブラウザ以外のウィンドウで作業を行っていることが考えられる．また，授業に関する操作であるなら講義資料との行き来が行われているはずだが，も3.3.3 M3:フォーカス外れ時間

し講義と無関係のことをしているのであれば，M4 の回数すなわち講義資料とそれ以外のフォーカス外れ時間は受講生が専用ブラウザからフォーカスを外していた時間を示す．受ウィンドウとの行き来が少なくなると考えられる．以上より，M3 の値が大きくかつ M4 の講生ブラウザはブラウザからフォーカスが外れると時刻 T1 を記録し，フォーカスが戻ると値が一定以上小さくなって受講生を D3 であると判断する．そこで，M1 が E1 か E2 であ

時刻 T2 を記録する．サーバには T1，T2 が記録されるたびにデータがアップロードされてる受講生のなかで，M3 の値が受講生全体の上位 30% 以内であり，M4 の値が下位 30% 以

おり，シートマップは受講生ごとにこれらの差分を計算し，累積値を求める．進捗管理メト

内である受講生を D3 であるものと判断する．

リクス表は時間間隔 t5 あたりの累積値を受講生ごとに提示し，累積値の大きい順にランキ

3.4 閲覧ログ収集サーバおよびデータベース
閲覧ログ収集サーバは講義資料閲覧用ブラウザによる閲覧ログを収集してデータベースに情報処理学会論文誌

Vol. 0

1–12 (??? 2011)

c 2011 Information Processing Society of Japan⃝

7

講義資料閲覧ログを用いたプログラミング講義進捗管理手法の提案

格納し，格納された閲覧ログをブラウザおよびシートマップに提供する．データベースは，

userinfo テーブル，browserlog テーブル，coursedetail テーブル，sheetinfo テーブルの 4

ない．
講義開始時に受講生が行うことつで構成されている．userinfo テーブルには，受講生および講師がシステムを利用するた受講生用ブラウザ (図 4) を起動し，各自のユーザ ID とパスワード，自分の座席の行番号

めに必要な ID やパスワードが入力される．coursedetail テーブルには講義名や講義ページ

と列番号を入力してログインを行う．ログイン完了後，「講義ページ」ボタンをクリックし，のアドレス，sheetinfo テーブルに受講生および講師の座席位置が入力される．browserlog

講義資料を表示させる．ここで講義ページボタンのクリックで講義資料を表示させるためにテーブルには講義資料閲覧用ブラウザから収集される表 1 で示す閲覧ログが入力される．

は，事前に講師が「講義ページ設定」ボタンによって講義資料を決定している必要がある．

本稿で提案する講義進捗管理支援システムはこのような構成要素からなっている．次節では実装および講義における実際の流れについて説明する．

4. 実

講義中に講師や TA が行うこと
講師用ブラウザの左側矩形領域に表示される受講生の領域ごとの閲覧人数，シートマップに表示される進捗管理メトリクスと遅れている受講生およびその遅れ理由にもとづいて講装義を進める．TA は D1∼D3 に分類された受講生を確認するたびに，遅れ理由に応じた対応

4.1 講義進捗管理支援システムの実装環境を行う．受講生は受講生用ブラウザを利用して講義を受ける以外に行うことはない．

講義資料閲覧用ブラウザは Adobe AIR 2.5.1，シートマップは Adobe Flex 4.4，閲覧ロ

以上のように，我々の講義進捗管理支援システムのために講師や受講生が行わなければな

グ収集サーバおよびデータベースは Apache 2.2.17，My SQL5.1，PHP5.3.1 を利用して開らない行動は非常に少ない．次節では実際にこの手順で実行した評価実験結果を詳述する．

発した．講義進捗管理支援システムでは，講師用ブラウザおよび受講生用ブラウザは各ユー
ザのクライアント PC 上で動作し，それ以外の構成要素はサーバ PC で動作する．

5. 評 価 実 験

4.2 講義進捗管理支援システムを用いた講義の流れ

5.1 準

講義進捗管理支援システムを利用して講義を行う際に講師が行う必要のある一連の手順

実際のプログラミング講義において，我々の講義進捗管理支援システムが遅れている受講を説明する．ここで単一のページから構成された講義資料の HTML ファイルが既に用意さ生とその遅れ理由 D1∼D3 を分析できるかを評価する実験を行った．対象は学部 1 年生が備れているものとする．この時点における講義資料の HTML ファイルに求められる要件は受講する Java プログラミングの講義である．各講義は 90 分 × 2 コマで講師 1 名と補助のHTML で構成されていることのみである．

TA3 名，受講生 30 名で 3 回行われた．講師と受講生は全て自前の PC を所持しており，講準備

義開始前に受講生用ブラウザと講師用ブラウザを各自の PC にインストールしてもらった．

講師が講義資料の HTML ファイルに各種 OS で表示される文字サイズを統一する CSS
ファイルを読み込ませる．講義開始前に講師が行う必要のある準備はこの作業のみである．
講義開始時に講師が行うこと

各 PC の画面解像度は 1024×768 ピクセルで，全ての講義資料は縦の長さが約 18000 ピク
セルであった．
講義開始後は M1 のメトリクスに注目し，E1 か E2 の状態になっている受講生を対象と講師用ブラウザ (図 3) を起動し，講師のユーザ ID とパスワードを入力してログインを行して講師および TA が個別に遅れ理由を確認する作業を行った．講義終了後に，講師および

う．ログイン完了後，講義資料が配置されているページをアドレスバーに入力して，表示さTA が確認した受講生の遅れ理由と講義進捗管理支援システムが分析した遅れ理由とがどのせる．その後，まず「講義ページ設定」を選択する．次に「ボタン追加」をクリックし，講程度一致しているかを比較した．

義資料左側に講義資料の閲覧範囲を決定するための矩形領域を追加する．さらに，講義冒頭で説明する部位までの閲覧許可を追加された矩形領域を利用して行う．

本評価実験では，3 章で述べた各種メトリクス取得やサーバアクセスのための時間間隔

t1 ∼t6 を以下のとおりに設定した．まず t1 は主に M1，M2 の各メトリクスに影響を与え，同時に講師もしくは TA がシートマップを起動し，各自のユーザ ID とパスワードでログ

基本的に数値が小さいほどリアルタイムに受講生がどこを閲覧しているかという情報を得インを行う．このシートマップ画面は受講生の進捗管理に利用するため，受講生には見せることができる．そこで，30 人の受講生に同時に受講生ブラウザを利用してもらい，サー

情報処理学会論文誌

Vol. 0

1–12 (??? 2011)

c 2011 Information Processing Society of Japan⃝

8

講義資料閲覧ログを用いたプログラミング講義進捗管理手法の提案

バが遅延せず安定して正常に動作する最小の t1 を求めるための予備実験を行った．その結ている．特に D3 の適合率は非常に良い値を示しており，D3 以外の状態の学生を間違って果，本実験では t1 として 4 秒という値を設定した．

検知していないことがわかった．

t2 の値は受講生ブラウザに講師が指定した閲覧可能領域が表示されるまでのタイムラグ

D1 および D2 の再現率を低下させていた要因の一つに，理解不足の結果として手戻りがに影響する．この値が大きすぎると受講生ブラウザへの反映が遅くなり，受講生に不快感を多くなっていた受講生と，逆に手戻りをしていたが手戻りの範囲が近傍であったためあまり感じさせてしまう．一方で値が小さいとサーバに過度の負荷がかかる．そのため本実験でブラウザ移動をしていなかった受講生の取り違えが挙げられる．実際に 1 回目の実験ではは，一定時間ごとに受講生ブラウザにサーバにアクセスさせるのではなく，受講生がスク

D1 と検知されなかった 10 件中 4 件が D2 と取り違えられていた．2 回目の実験では同様

ロールを行なうたびにサーバにアクセスする方式をとった．結果として，受講生に不快感をに 3 件が D2 として取り違えられており，D2 と間違って検出された 1 件が実際には D1 で感じさせること無く，よりサーバ負荷の小さい方法で受講生ブラウザの閲覧可能領域を更新あるケースもあった．3 回目の実験では 2 件が D2 と取り違えられていて，1 件が D1 と取することが可能となった．

り違えがあった．

t3 は M1，すなわち受講生が遅れているかどうかの判断に影響する．また t3 は t1 の値よ

D1 を D2 と取り違えたケースについては，いずれも実際に手戻りが発生しているために，りも大きくなければならない．値が小さすぎると D1∼D3 すなわち遅れ理由の検知結果が講師がとるべき対応は手戻りを前提とした指導で構わないと考えられる．一方逆のケースに短時間で切り替わってしまい，講師や TA が検知結果を確認できなくなる可能性がある．逆

ついては，手戻りが発生していることが検出できていないため，必要とする前提知識をフォに大きすぎると，実際の受講生の状況と検知される遅れている受講生の状況に乖離が生じローするといった手戻りにもとづく対応が困難となる．近傍への手戻りをどのように正しくる．そこで今回は，講師や TA が十分に確認できる時間ということを勘案し，t3 を 1 分に検知するかは今後の課題である．

設定した．

実際には D3 として検出されるべき状況でシステムによる検出が失敗しているケースでt4 ∼t6 は M2∼M4 の累積値を算出する時間間隔をそれぞれ表している．t4 ∼t6 にもとづは，ほぼ全てが D1 として検出されていた．このことから講義資料閲覧とは別の作業をしてく M2∼M4 の値に応じて，D1∼D3 の遅れ理由が算出される．講師や TA は算出された遅いるケースや，授業態度などから明らかに授業への参加放棄と判断できたとしても，受講生

れ理由を見て受講生への対応を順番に行なうため，本実験では講師および TA が一人の受講が特別意味もなくブラウザを操作しているような場合には D3 として検出することが困難で生の対応に要する平均的な時間として，t4 ∼t6 を 4 分に設定した．

あることがわかった．今後の課題としては，通常ありえないようなブラウザの操作をしてい

5.2 結

果

る場合を異常値として検出する仕組みが考えられる．

本実験で講師および TA が記録した受講生の状況は，(1) 対応時刻，(2) 受講生の座席位
置，(3) 受講生が遅れていたかどうか，(4) 遅れていた理由 (D1∼D3) の 4 点である．表 2 に以上の実験結果により，一部検出が困難な事例はあるものの，非常に多くのケースで遅れ理由を正しく提案システムが分析できることが確認できた．

実験結果を示す．本実験で講義中に講師と TA が対応した件数は実験 1 回目はのべ 72 件，25.3 アンケート評価

回目はのべ 57 件，3 回目はのべ 72 件で，そのうちそれぞれ 51 件，50 件，53 件が D1∼D3

実験終了後に受講生を対象に講義進捗管理支援システムについての自由記述式のアンケーのいずれかの理由で遅れていると判断された．表 2 のチェック数は講師と TA が判断した遅トを行った．設問は以下の 4 点である．

れ理由ごとの件数を示している．検知数は，講師と TA が対応した全件数の中でシステムが(1)

D1∼D3 それぞれの遅れ理由と判断した総数を表している．検知数の項目はさらに，検知結果が正しかった正解数と正しくなかった不正解数が示されている．これらの実験結果にもと能を書いてください(2)

づき提案システムによる遅れ理由分析の再現率と適合率を算出した．
実験結果では，チェック数が 10 件以上であるような，データ数がある程度以上多いケー
スでの遅れ理由における再現率，適合率はそれぞれ最低値が 70% ，78% と高い数値となっ情報処理学会論文誌

Vol. 0

1–12 (??? 2011)

受講生用ブラウザにあってほしい機能，足りない機能はありましたか？あればその機
受講生用ブラウザを利用することで，教員・TA のサポートが受けやすくなりました
か？はい，か，いいえを書いてください(3)

これまで使ってきた通常のブラウザと比べて，受講生用ブラウザに不満点や問題点はありましたか？あればそれを書いてください．特に不満がなければ，何もないと書いc 2011 Information Processing Society of Japan⃝

9

講義資料閲覧ログを用いたプログラミング講義進捗管理手法の提案
表 2 提案メトリクスの再現率と適合率
Table 2 The recall and precision of the metrics
遅れ理由
D1
D2
D3

チェック数 (件)
37
4
10

遅れ理由
D1
D2
D3

チェック数 (件)
19
23
8

遅れ理由
D1
D2
D3

チェック数 (件)101726

実験 1 回目
検知数 (正解数，不正解数)
28(27, 1)
7(3, 4)9(9, 0)
実験 2 回目
検知数 (正解数，不正解数)
17(14, 3)
21(18, 3)
7(7, 0)
実験 3 回目
検知数 (正解数，不正解数)
9(7, 2)14(13,1)
23(23, 0))中の部位が講師や TA にモニタされていることについてのプライバシ等の不満があることを事前に想定していたが，実際にはそのような不満を述べる受講生は一人もいなかった．

再現率 (%)737590

適合率 (%)
96
43
100

再現率 (%)747888

適合率 (%)
82
86
100

再現率 (%)
707688

適合率 (%)
78
93
100

6. 考

察

6.1 講義進捗管理支援システムの特長と課題本研究で開発した講義進捗管理支援システムの主な特長は以下に示すとおりである．

(1)

講義資料閲覧制限により，受講生が先に進み過ぎて講義を聴かなくなる状況を防ぐこ
とができる

(2)

講義資料の領域ごと閲覧人数がわかるため，全体のどの程度が講義についてこられているかを把握できる(3)

受講生ごとに誰がどういった理由で遅れているかを講義中に確認できる

講師の意図よりも先に進み過ぎる受講生には，講義の内容をわかった気になっているだけ
表 3 受講生へのアンケート結果
Table 3 The questionnaire result of student
設問
1
2
3

はい
17
22
13

いいえ
10
5
17

未回答
3
3
0

の受講生も多い．(1) で述べた特長により，2.2 節で述べた G1 のずれを防ぐことができた．
結果として，提案システムにより，受講生が講義を聴かずに先に進んでしまうことを防ぐことが可能となったと考えられる．また，5.3 節のアンケートで，講師より先に進んで講義資料を見たいという回答は一件のみだった．このことから多くの受講生は，講師の意図するペースで講義資料を見ることに問題を感じていないと考えられる．今後は，閲覧ログやプロてください

グラミング課題の回答状況等から特に優秀であると確認できた受講生に対して講義資料閲アンケート結果を表 3 に示す．設問 1 に対して 30 人中 17 人が専用ブラウザにほしい機覧制限を講義状況に応じて緩和するといった対応も検討していきたい．

能，足りない機能があると回答した．回答では，タブ機能やブックマーク機能，画像ファイ

受講生自身に進捗状況を表明させるのは，講義を進める上で困難な作業の一つである．通ルのダウンロードといった通常のブラウザに存在する機能が不足していると指摘したケース

常挙手による確認や講師が目視で受講生を観察をして対応するが，確認時の挙手をためらうや講義中に講師・TA を自席に呼ぶ機能や TA とのチャット機能といったサポートについて

受講生も多く，正確にその状況を推測するのは難しい．特に，講師の意図しないところで遅の機能に対する要望が含まれていた．設問 2 では 30 人中 22 人の受講生が教員・TA のサ

れている受講生が自分自身で遅れていることを主張するのは極めて稀である．我々のシステ

ポートを受けやすくなったと答えている．いいえと回答した 5 名については，本実験では遅ムは (2) で述べた特長により，講義資料の領域ごとの閲覧人数を講義中に講師が自身のブラれていると判断されなかった受講生であったため，効果が実感できなかったと考えられる．

ウザで確認できる．そのため，受講生・講師両方に負荷をかけることなく，遅れている受講

設問 3 に対して 30 人中 13 人が既存のブラウザに比べ不満点や問題点があると答えた．こ生がどの程度の割合存在するかを判断することができるようになった．

の点については，回答 1 で記述された足りない機能に起因する問題点や，主として優秀な学生による講義資料の制限機構についての不満が少数ではあるが存在した．

(3) の特長は主として TA らが個別の受講生にサポートを行う際に重要となる．従来の講義では，TA らは受講生の自己申告での質問に対応する形でサポートを行っていた．そのた以上のアンケートにより，受講生が普段 Firefox などのブラウザで利用している機能の一め，取り戻せないほど遅れてから質問をする受講生やそもそも質問しない受講生への対応部に対応できていないことについての不満はあったものの，サポートを受けやすくなることや，講義への参加を諦めている受講生をサポートすることは非常に困難であった．そのようのメリットを感じている受講生が多かったことが確認できた．特に設問 3 については，閲覧な受講生を提案システムで分析・抽出することにより，これまでと比べてより早く，適切な情報処理学会論文誌

Vol. 0

1–12 (??? 2011)

c 2011 Information Processing Society of Japan⃝

10

講義資料閲覧ログを用いたプログラミング講義進捗管理手法の提案

タイミングで多くの受講生のサポートが容易にできるようになった．実際に 5.1 節で述べた

長崎11) が開発した出席・進捗状況管理支援システムは，各受講生の課題達成時刻のグラ実験では，受講生サポートを行った 3 名の TA 全員が，実験後の感想としてどの受講生をフ化で進んでいる受講生，遅れている受講生を容易に発見できる．しかし進捗状況は受講生サポートすれば良いかをシートマップで確認できる点が非常に役に立ったと述べている．

自身のボタン操作による入力が必要で，課題達成時刻のグラフ化もデータファイルを表計算

我々が本稿で提案した講義進捗管理支援システムは 2.1 節で述べたとおり，1 ページの縦ソフトウェアに読み込ませる必要がある．また，得られる学生の進捗状況は課題達成時間にに長い HTML 形式の講義資料を用いる座学と演習の混じったプログラミング講義を前提としている．また，講義資料閲覧ログを利用して受講生の遅れ状況を検知するという特徴から，スクロールの必要が無いような縦に短い講義資料を対象としていない．なお，複数のよる早い，遅いのみである．

7. お わ り に

ページにまたがる講義資料については現時点では対象としていないが，受講生がどのページ

本稿で，受講生による講義資料へのアクセスログを解析し，受講生ごとの講義への遅れ状のどの部分を閲覧しているかを利用して提案システムが遅れを検知することは可能である

況を検出する授業進捗管理システムを提案した．受講生ごとの講義への遅れ状況検出には，と思われる．

アクセスログから算出される 4 種類の進捗管理メトリクスを提案した．評価実験として，受本システムが対象とする講義形式は座学と演習が混じったものであり，座学のみの講義や演習のみの講義は対象としていない．座学形式の講義は演習や課題を含まないため，講義内

講生 30 名によるのプログラミング講義において遅れ状況検出を実際に行い，のべ 73%の受講生の遅れ状況を進捗管理メトリクスによって検出可能であることが確認できた．

容の理解度合を受講生自身が確認することが難しい．そのため，受講生は内容を理解してい今後の課題として，遅れ理由検知のため決めた 30%という閾値を受講生の習熟度や講義なくとも講義資料を容易に先に読み進めることができる．結果として，進捗管理メトリクスの特徴や状況に応じて可変にする仕組みが挙げられる．この閾値が高ければ，より多くの受M1 で述べた閲覧遅れ度合や D1，D2 で述べたような遅れ理由を我々のシステムで正しく検講生が D1∼D3 のいずれかであると判断されるようになる．そのため，講師や TA の数が知することが困難になる可能性があると考えられる．一方で，講義を聞いておらず他のこと十分に多く，受講生の講義に対する習熟度が低いような講義の場合，すなわち支援を必要とをやっているような受講生を遅れ理由 D3 として検知することは十分可能であると考えていする受講生の数が多く，講師・TA に余裕がある場合は，この閾値を高くすることが望ましる．今後，提案システムを活用し，座学を対象とした新しいメトリクスを提案していきたい．

い．逆に，受講生が講義内容に対する習熟度が高く，講師や TA の数が少ないような場合，演習のみのプログラミング講義では，利用される講義資料の多くが分量が少なく，スクすなわち支援を必要とする受講生が少なく，講師・TA に余裕がない場合は，閾値を低くす

ロールをほとんど必要としないため，今回は対象外とした．しかしながら，ヒントや順を追って課題を解いていくような形式の，スクロールを要するような長さを持った講義資料を利用した演習であれば，提案システムは有効に活用できるものと考えている．

ることで必要最低限の受講生のみを支援することが可能となる．
また，D1∼D3 の違いをより反映した指導方法を支援する仕組みの構築が挙げられる．現在のところ，D1 の状況に陥っている受講生がいるときには講義のスピードを落とし，D2

6.2 関 連 研 究すなわち手戻りを行っている受講生がいたときには関連する少し前の内容を説明するといっ角田ら9) はシートという単位で分割された講義資料を講師の意図するタイミングで受講た対応を講師はおこなっている．今後は，継続的に理解の遅い受講生を集めたレベル別講座

生に送るシステムを開発した．このシステムではシート単位で受講生の閲覧部位を制限すの開講や手戻りポイントの分析による復習資料の作成といった，講義外での活動にも活かせることが可能となっているため，講師の意図した部位を閲覧させることができる．しかし，る支援システムの構築を目指していきたい．

理解が遅れている受講生を検知することには対応していない．
奥井ら10) は，講義中の受講生の反応をもとに講師が講義中に説明方法を修正し，講義後に教材を改善できるシステムを提案した．このシステムでは受講生がボタン型端末で理解度を知らせることで，講師が講義の進捗を制御できる．しかし，受講生自身の自発的な申告が

参

考

文

献

1) 堀内幸造，長田一興：初級プログラミング教育における支援システムに関する研究 因果マップエディタ -，かやのもり， No.12, pp.1–6 (2010).
2) 新開純子，宮地 功：プログラミング学習支援システムを用いた入門教育の実践，日必要である点と遅れ理由の分析に対応していないという点が我々の提案とは異なっている．

情報処理学会論文誌

Vol. 0

1–12 (??? 2011)

c 2011 Information Processing Society of Japan⃝

11

講義資料閲覧ログを用いたプログラミング講義進捗管理手法の提案

本教育工学会論文誌，Vol.33, pp.5–8 (2009).
3) 野村俊太，大東和忠幸，高田秀志：5G-1 初等教育でのプログラミング学習における教員支援のための学習状況の視覚化 (プログラミング教育, 一般セッション, コンピュー
タと人間社会)，全国大会講演論文集，Vol.71, No.4, pp.409–410 (2009).
4) Brown, W.E., Lovett, M., Bajzek, D.M. and Burnette, J.M.: Improving the Feedback Cycle to Improve Learning in Introductory Biology Using the Digital Dashboard, Proc. World Conference on E-Learning in Corporate, Government, Healthcare, and Higher Education (E-Learn) 2006, pp.1030–1035 (2006).
5) 永森正仁，植野真臣，安藤雅洋，ポクポンソンムァン，遠藤和己，永岡慶三：携帯電話
機レスポンスアナライザを用いた遠隔授業，日本教育工学会論文誌，Vol.29, pp.57–60(2006).
6) 宮田 仁：携帯電話対応コメントカードシステムを活用した多人数講義における授業
コミュニケーションの改善，教育情報研究: 日本教育情報学会学会誌， Vol.18, No.3,
pp.11–19 (2002).
7) 石井 優，井上亮文，星 徹：3X-3 プログラミング講義のための Web ベース演習動
向解析システム (Web 応用, 学生セッション, インタフェース)，全国大会講演論文集，Vol.71, No.4, pp.83–84 (2009).
8) 野田光洋，井上亮文，星 徹：6ZK-5 プログラミング講義における文章構造と時間遷移を考慮した視覚化システム (教育支援システム, 学生セッション, コンピュータと人間社会)，全国大会講演論文集，Vol.72, No.4, pp.711–712 (2010).
9) 角田博保，赤池英夫，朝日啓太：WWW を用いた講義支援システムの運用，情報処理学会研究報告. コンピュータと教育研究会報告， Vol.2003, No.70, pp.27–34 (2003).
10) 奥井善也，原田史子，高田秀志，島川博光：講義中の反応に基づく説明方法と教材の改善，情報処理学会論文誌，Vol.50, No.1, pp.361–371 (2009).
11) 長崎 等：出席・進捗状況管理支援システムの開発と利用，共栄大学研究論集，Vol.2,
pp.171–187 (2004-03-31).

井垣宏（正会員）

2000 年神戸大・工・電気電子卒．2002 年奈良先端大・情報科学・博士
前期課程了．2005 年同大学院博士後期課程了．同年同大学院・情報科学・特任助手．2006 年南山大・数理情報・講師．2007 年神戸大・工・情報知
能・特命助教．2010 年東京工科大学・コンピュータサイエンス学部・助教．2011 年大阪大学大学院情報科学研究科・特任准教授．博士（工学）．
ソフトウェア工学教育，サービス指向アーキテクチャ，ホームネットワークシステム，Web
サービス，ソフトウェアプロセス等の研究に従事．IEEE，ACM，IPSJ，IEICE 各会員．

井上 亮文（正会員）

1999 年慶應義塾大学理工学部計測工学科卒業．2005 年同大学院後期博士課程修了．博士（工学）．現在，東京工科大学コンピュータサイエンス
学部講師．グループウェア，音楽情報処理の研究に従事．本会論文誌編集委員．ヒューマンインタフェース学会，ACM 各会員．

山田誠2009 年東京工科大学コンピュータサイエンス学部コンピュータサイエン
ス学科卒業．2009 年同大学大学院バイオ・情報メディア研究科コンピュー
タサイエンス専攻入学．同大学院在学中．教育支援システムの研究に従事．

(平成 ? 年 ? 月 ? 日受付)
(平成 ? 年 ? 月 ? 日採録)
堀口 悟史（学生会員）

2006 年東京工科大学工学部情報通信工学科卒業．2008 年同大学大学院
バイオ・情報メディア研究科コンピュータサイエンス専攻博士前期課程修了．2008 年慶應義塾大学大学院理工学研究科開放環境科学専攻後期博士課程入学．同大学院在学中．教育支援システムの研究に従事．

情報処理学会論文誌

Vol. 0

1–12 (??? 2011)

c 2011 Information Processing Society of Japan⃝

12

講義資料閲覧ログを用いたプログラミング講義進捗管理手法の提案

星

徹（正会員）

1969 年東京工業大学電気工学科卒．同年日立製作所入社．1975 年 UCLA

岡田 謙一（正会員）
慶應義塾大学理工学部情報工学科主任教授，工学博士．学会誌編集主

大学院修士課程修了． 2003 年東京工科大学コ ンピュータサイエンス学部

査，論文誌編集主査，GN 研究会主査，日本 VR 学会理事などを歴任．

教授．2007 年同学部長、現在、東京工科大学名誉教授．博士（工学）．本

現在，本学会理事，電子情報通信学会 HB ／ KB 幹事長．本学会論文賞

会論文誌編集員、ＧＮ研主査、理事等を歴 任、フェロー．IEEE、ACM、(1996,2001,2008)，本学会 40 周年記念論文賞，IEEE SAINT 04, ICAT

電子情報通信学会、電気学会各会員．

07 最優秀論文賞などを受賞．

情報処理学会論文誌

Vol. 0

1–12 (??? 2011)

c 2011 Information Processing Society of Japan⃝