ネットワーク新時代に対応した新しい講義システムの試み(2)
Javaを利用した対話的教育支援システムの構築
桐山 雄一朗, 鈴木 久雄, 尾崎 成子, 矢野 敬幸, 上田 望
Return
1 はじめに
昨今の受験事情により,特に文系大学における自然科学教育を円滑に進めるうえで,高校程度の最低限の基礎的科学知識を補う予備的・補習的教育の必要性が高くなっている.その種の予備的教育を目的としてコンピュータとネットワークを利用した教育支援システムを構築してきた[1].本誌に発表したシステム[2]に今回新たな拡張を加えることで,これまで教師側がオムニバス形式で行っていた講義(サイエンスミニマム)をある程度まで支援システムで代行できることが期待される.このことは教師側の負担が軽減され,科学の各分野の教育をより充実させることができることを意味する.また,コンピュータを使用することで,教室の中では実現が困難な実験などもネットワーク上で仮想現実の教材として提供できる可能性が見えてきた.
すでにわれわれが発表した論文[2]では,主に教育支援システムのシステム自体の構築と,実験的な運用をとりあげたが,本論文では実際の講義での活用を考慮した教材の内容の開発に目を向けることにした.将来は教育支援システムと教科書とを効果的に併用して講義を行う予定である.教科書は静的な情報を一度で大量に提供できる点で優れているが,学生が個別に望むようなきめこまかな情報を即時に検索し提供したり,ある程度の応答性が要求されるような仮想現実を提供することは不可能である.むしろ仮想現実や動的な情報の提供にこそコンピュータという媒体を活かすべきである.システムの拡張の要である教材の作成では,近年脚光を浴びつつある技術Java[3]を使い,これらの目標を実現した.
また,このシステムでは,学生がすべき操作は簡潔にまとめ,コンピュータ初心者の学生でも直感で操作を進められることを重視した.このシステムの開発当初,WWWシステムを採用[2]したことにもあらわれているようにこれまでも統一性のある簡潔な操作を考慮してきたが,教材が複雑化し,高機能化したこともあり,操作性の向上,とりわけ見たままに操作の仕方が分かるような教材づくりがさらに強く求められることになった.
2 Javaによる教材の作成
2. 1 Javaの特徴
システムの拡張にあたって,もっとも重要視したのは情報の双方向的な提供であり,換言すればユーザとの「対話」であると言える.ユーザの要求を的確に把握し,それに応じて応答するような教育支援システムを構築するうえで,ユーザとシステムとの接点,すなわちインタフェースは重要な要素である.教材の作成にあたってJavaを採用したのは,もともとネットワークでの利用を前提として設計されており,ネットワークの中での対話的インタフェースを作成するのに適していると考えたからだ.
ユーザとの対話を実現するため,Java Applet[4]を利用した.Java Appletとは,Javaで記述できるプログラムの一種であるが,Appletのプログラム名をそれぞれHTML文書[5]中に指定することで,あたかもAppletがWWWページに埋め込まれているかのようにすることが可能となる.クライアントからWWWページの読み込み要求が発生した際,WWWサーバが行うことはHTML文書と指定されたJava Appletをクライアントにただ送り出すことのみで,送りつけられたAppletの実行はJava対応クライアントが担当する.このため,CGI[1]を利用してプログラムの実行をサーバが負担する場合に比べ,サーバにかかる負荷を軽減することができ,複雑なプログラムを多くのクライアントで同時に実行することが容易になる.
Table 1,およびTable 2に,本システムでJavaを採用したことによるメリットとJavaの問題点をそれぞれ示す.
Table 1 Advantages of Adopting Java in the Lecture System.
1)多機種のクライアントマシンへの対応
|
2)対話的なシステム
|
3)マルチメディアの利用
|
4)Java対応WWWブラウザ[6]の普及
|
5)プログラムの処理をクライアントに分散
|
Table 2 Some Problems of Java Itself.
1)未対応クライアントの存在
|
2)バージョン間の動作不統一
|
3)発展途上の言語
|
Table 2であげられる問題のほかにも,設備に関しての問題が存在する.著者らの学内には現在,ネットワークにつながったクライアントコンピュータがおよそ170台存在するが,そのうちJavaに対応している実用的なコンピュータはおよそ50台である.自宅のパーソナルコンピュータから学内にアクセスしている学生もある程度は存在するが,すべての学生がJavaに対応したブラウザを利用するわけではない.少なくとも現状では,何百人もの受講が考えられることを考慮すれば,十分な数のクライアントが確保されているとは言い難い.現時点では,Javaを利用できないクライアントでも,最低限の教材の提供と事務的な処理のサービスを受けられるようシステムを構成する必要がある.
2. 2 GUIのためのプログラム部品
Javaにはあらかじめ,Figure 1に示すように,テキストを入力する枠やボタンなど,最近のOSでは標準的に使われているGUI部品[7]が用意されている.プログラムの作成の際は,これらを適切に配置することで操作性の高いインタフェースを構築できる.またユーザは,個々の部品の機能がどのようなものであるかを知れば,どのようなプログラムにも短時間で操作に慣れることができる.
Figure 1. An Example Program Using GUI Components of Java (Windows 95)
2. 3 作成したプログラム
物理(2,3講)と化学(6,7講)分野における講義「サイエンスミニマム」の内容の目次と,それを補足するWWW上に作成した教材をTable 3, 4にまとめた.受講者は目次の中で網掛けされている項目を,ブラウザ上で選択することができる.Java Appletは全部で7つであるが,ここでは以下の2つについて紹介する.
- 静止衛星軌道のシミュレーション GeoOrbit(物理分野)
Figure 2は物理分野のなかでも直感的に分かりにくい静止衛星の運動をシミュレートしたプログラムである.燃料消費量や噴射角度などの値を入力しボタンを押すとロケットが噴射して,力の微妙な違いがいかにロケットの軌道を変えてしまうかを体験できる.学生に試用してもらったところ反応は上々であった.このような運動は,授業で実際に実験することは困難であり,「体感できる」プログラムとして授業では味わうことのできないメリットを享受できることを確認した.
当面考えられる改良点は,インタフェースの日本語化,自動デモンストレーションなどの機能を付加して模範的な動きを示すこと,およびゲーム性の追加である.
- 動的周期表 DPTと分子の立体モデリングプログラム MolRot(化学分野)
DPTとはDynamic Periodic Tableすなわち動的に変化する周期表のことである(Figure 3).これまでの周期表とは違い,温度やイオン化エネルギーなどの条件によって各元素の性質に応じた状態が色の変化で示される.たとえばある温度での単体の三態状態が一目瞭然に色分けされ,ユーザが温度を変えるとリアルタイムにそれに反応するようになっている.また個々の元素を選択して電子配置を呼び出したり,その元素を含む分子を記載したWWWページに移ることができる.さらにここで分子を選択すると,WWWのリンク機能により,別のページに載せている分子モデリングプログラムMolRotによってその分子の立体モデルが登場する(Figure 4).このように学習は縦だけでなく横にも進められるように設計し,体系的な学習を補うよう考慮した.
将来的な改良点としては,より詳細な情報の提供や化学反応のシミュレーションとの融合などが考えられる.また周期表の規則性などに学習者が自然に気づくような,教材からのなんらかの示唆をすることもできるかもしれない.
Table 3 Contents of the Lecture and the corresponding WWW teaching materials (Physics).
Contents | Teaching Materials
|
---|
Type | Subject
|
---|
2講 力と運動
|
2.1 運動の法則 | |
|
2.2 ベクトルとスカラー | |
|
2.3 次元と単位 | |
|
2.4 力の本質 | |
|
2.5 エネルギー | |
|
2.6 仕事 | |
|
2.7 運動量 | |
|
2.8 万有引力と天体の運動 | |
|
計算機シミュレーション | |
|
1 太陽系天体の運動 | Fig. | 太陽系天体の運動
|
2 静止衛星 | Java Applet | 静止衛星のシミュレーション(GeoOrbit)
|
3 スイングバイ | Java Applet | スイングバイのシミュレーション(SwingBy)
|
|
3講 電気と磁気
|
3.1 電荷と電場 | |
|
3.2 電束線と電気力線 | |
|
3.3 電位の概念とその単位 | |
|
3.4 電流 | |
|
3.5 電子 | |
|
3.6 オームの法則 | |
|
3.7 電流による発熱 | |
|
3.8 磁気 | |
|
3.9 電流の作る磁場 | |
|
3.10 電磁石 | |
|
3.11 電流と磁場の相互作用 | |
|
サイクロトロンの原理 | Java Applet | サイクロトロンのシミュレーション(CycloTron)
|
3.12 電流どうしにはたらく力 | |
|
電磁場中の荷電粒子の運動 | Fig. | 電磁場中の荷電粒子の運動
|
3.13 電磁誘導 | |
|
3.14 マクスウェル方程式と電磁波 | |
|
計算機シミュレーション | |
|
4 サイクロトロンの原理 | Java Applet | サイクロトロンのシミュレーション(CycloTron)
|
Table 4 Contents of the Lecture and the corresponding WWW teaching materials (Chemistry).
Contents | Teaching Materials
|
---|
Type | Subject
|
---|
6講 物質の階層構造と構成要素
|
6.1 物質の粒子性 | |
|
6.2 物質の階層性 | |
|
6.3 自然認識の発展方向 | |
|
6.4 原子と元素、その1 | Fig. | 哲学者と兵士など
|
6.5 原子と元素、その2 | Fig. | 原子をのぞく
|
6.6 元素の周期表 | Java Applet | 動的周期律表(Dynamic Periodic Table)
|
6.7 元素の原子量 | Text | 質量欠損など
|
6.8 原子とイオン | |
|
|
7講 化学結合
|
7.1 化学結合その1、イオン結合 | Text | イオン結合
|
7.2 化学結合その2、共有結合 | |
|
7.3 結合の長さと方向 | |
|
7.4 分子式から分子モデルまで | Java Applet | 分子量計算機(MolWeight)
|
7.5 炭素の化学 | Fig.+Applet | 正四面体角の図解と立体モデル
|
7.6 分子の立体視 | Java Applet | 分子の3次元モデリング(MolRot+JBench)
|
7.7 結合のイオン結合性と共有結合性 | |
|
7.8 物質の三態変化 | Fig. | 物質の三態変化
|
7.9 物質の三態と分子間力 | Text | 三態変化と熱エネルギー
|
7.10 化学結合の強さ | |
|
3 インタフェースや動作の統一
教育支援システムではユーザの使いやすさが重要であることは前にも述べたが,直接ユーザと対話する部分のインタフェースに関して開発を進めるうち,Table 2で示したような問題が生じた.ネットワークにはさまざまなクライアントマシンがあり,またブラウザも複数種類存在する.クライアントやブラウザによってはJavaを利用しても操作性を統一しきれない場合があることがわかった[8].
Figure 2. A Simulation Program of Geostationary Orbit (GeoOrbit)
Figure 3. Dynamic Periodic Table (DPT)
Figure 4. Molecule Modeler Linked with Dynamic Periodic Table (MolRot)
3. 1 統一した動作の保証
完成したJava Applet教材をMacintoshやWindows95など複数のOS上で実行してみたところ,同じWWWブラウザでも違う動作をする場合があることがわかった.また同じOSでも,Figure 5に矢印で示すようにブラウザによってやはり違う動作をすることがわかった.動作の違いはJavaの実行環境によっては実装されているJavaのバージョンが異なることや,OSによってはハードウェアの性能を効果的に活かすために実装の仕方が異なることに起因している.
この問題に対応するため,Appletに,自分がどのOSで実行されていて,インストールされているJava環境のバージョンがいくつなのかを自動的に判定させる機構を搭載した.この機能により,実行される環境に応じて最大限統一性のとれた動きをするように設計している.
Figure 5. Differences Observed in Java Performance on JDK and on Netscape
3. 2 ベンチマークApplet
クライアントの性能,とりわけ処理速度の違いをいかに吸収するかを考慮した結果が,今回試作したJBench Appletである.JBenchは,まずはじめにクライアントのブラウザ上で,何回か,ある図形の描画を繰り返すことで,処理速度の低いマシンでは時間がかかるような負荷の高いプログラムを実行し,その際のクライアントの処理性能を測定する.クライアントの性能を測定したJBenchはその結果(Table 5を参照)をたとえば2節であげた分子モデリングプログラムMolRotなどに伝達し,MolRotはその結果に応じて描画の質を決定する(Figure 6を参照).遅いクライアントの場合は自動的に描画の質を低くする.ただしこの場合も,MolRotは針金モデルによる表示のみに機能を限定するなど,最低限教材が利用できる状態に設定している.こうして,MolRotはどんな性能のクライアントでも利用可能となる.
Table 5 JBench Results Obtained on Some Java Platforms and Browsers.
OS・機種名 | Netscape 4.0 | Netscape 3.0 | InternetExplorer 3.0
|
---|
Windows 95 | ThinkPad 530cs DX4 100MHz | 8113.3/低 | | 10490.0/低
|
| ThinkPad 535 Pentium 120MHz | 5693.3/中 | | 7016.7/中
|
| FMV DESK POWER MMX Pentium 200MHz | 4486.7/高 | 4980.0/高 | 4520.0/高
|
MacOS 7.5 | Power Macintosh 8100 PowerPC 601 80MHz | 12845.3/低 | 11387.3/低 |
|
Solaris 2.5.1 | Sun Ultra 1 170E UltraSPARC1 170MHz | 3729.0/高 | |
|
FreeBSD 2.2.2R | COMPAQ PROLINEA 590 Pentium 90MHz | | 5481.0/中 |
|
数字:JBenchによる各クライアントの性能の値(値が小さいほど高性能)
高:MolRotの描画精度を最高にする(負荷は最大)
中:MolRotの描画精度を中程度にする(負荷は中程度)
低:MolRotの描画精度を最低にする(負荷は最小)
3. 3 学生の認知
GeoOrbitプログラムは,操作も難しく,操作部品がなにを示しているのかも分かりにくい.たとえばロケットの表示は,実際のロケットの進行方向を表しているのではなくロケット噴射する方向を表しているが,学生はロケットの進行方向と勘違いする可能性がある.さらに操作パネルは数字による表示が多いため,直感的に情報をつかみにくい.こういった問題をなくすため,学生が教材に対してどんな認知をするのか気を配ることが大切であり,この教材にはまだ改良の余地が残されていると考えられる.さらに,今回は時間の都合上できなかったが,前述の通り自動的にデモンストレーションする機能を付加することで,よりわかりやすくできる.よい対話的教材とは,学生が,その教材がなにをしているのかを容易に認知できる教材である.
Figure 6. JBench and Drawings of MolRot According to the Result of the Benchmark Test
4 さいごに
実際に教材を作る段階になって,ネットワークという教室とは異質な学習空間の中で,コンピュータを通して何をどう教えたらよいのかという点に立ち返らざるを得なかった.その中で得た答えは,キーワードにすれば,「体感性」と「わかりやすさ」である.実験や観察を繰り返して身につく「体感」は通常の講義時間内だけではなかなか得られない.教材に体感的な要素を盛り込み,いつでも自由に学生に試行させるうち,学生が主体的に「体感」を得るようにすることが今回の教材作成においては重要な点であり,また教材にある程度のゲーム性や「わかりやすさ」も必要であった.コンピュータで教えることでより効果的に表現できるもの,コンピュータで提供することで学習の動機を高められるものをこそ教材として作成してゆけば,教科書とコンピュータの両方を用いて,よりうまく教育ができるようになると期待している.
また,ネットワーク上で実用的に使えるJavaクライアントが少ない現状を考慮すると,これらの教材を教師のパーソナルコンピュータにインストールし,LL教室などに設置されている大画面に出力して講義する使い方も可能である.ただしこの場合は,学生が教材に直接触れることは出来ないため,教師側からの配慮が必要になるであろう.どちらにせよ,文字や数式や画像だけにとどまらず,通常の机上では教えきれないもの,直感的な情報の伝達の一部をコンピュータ・ネットワークによって提供できる対話的教育システムの可能性が見えてきたといってもいいのではないだろうか.
ここに発表したネットワーク教育システムは,学内における講義補助を目的として作成してきた.したがって受講生の学習履歴の記録や,疑問,質問,討論コーナー等の機能を備えている.そのため,全面的公開については,やや慎重にならざるをえない面がある.ただし,その一部については機能限定の上で一部公開することにした.ロケーション(URL/URI)はhttp://sciwww.misc.hit-u.ac.jp:8888/である.
今回の教材作成では物理と化学の分野のみに限ったが,今後,他分野の方々の協力のもと,生物,地学の教材を追加していく予定である.
この研究は文部省科学研究費基盤研究(B)No.08458028により実施したものであることを記してここに感謝する.
参考文献
[ 1] 伊澤俊二,鈴木久雄,山田智彦,尾崎成子,矢野敬幸, ネットワーク新時代に対応した新しい講義システムの試み-文系大学における自然科学予備教育への応用-, 化学ソフトウェア学会'96研究討論会講演要旨集演題番号213, 76-77 (1996).
[ 2] 鈴木久雄,伊澤俊二,尾崎成子,矢野敬幸, ネットワーク新時代に対応した新しい講義システムの試み, J. Chem. Software, 3, 165-176 (1997).
[ 3] 米Sun Microsystems社が開発した,ネットワーク上の様々なコンピュータ上で実行できるプログラムを提供するテクノロジまたはプログラミング言語.一度プログラミングすればどこでも動く(Write Once, Run Anywhere)というスローガンを掲げ,1995年5月に発表されてからインターネットの開発者たちをはじめとして急激に浸透した.
http://java.sun.com/,http://www.sun.co.jp/java/(Javaの公式ページ)
村上列, すべてのユーザに送るJava”再”入門, Software Design, 3月号, 16-22 (1997).
月刊イントラネット編集部, Javaで変わるビジネスコンピューティング, 月刊イントラネット, 創刊2号, 113-123 (1997).
[ 4] Java対応WWWブラウザで実行できるJavaのアプリケーションプログラム.Appletはクライアントのハードウェアに直接アクセスできないため,クライアントを危険な(たとえばコンピュータウイルスのような)Appletから守ることができる.
http://www.developer.com/directories/pages/dir.java.html(Appletの作成例)
[ 5] Hypertext Markup Language.WWWのページを記述するための言語.文書中,<>の間にHTMLの予約語を指定した,タグとよばれるものをはさみ込み,WWWページのビジュアルな表現を可能にする.<APPLET...>というタグをHTML文書に記述すると,WWWブラウザはページの表示と同時にページ中にJava Appletを実行し表示する.
[ 6] 現在のWWWブラウザの出荷量の大半はNetscapeとMicrosoft Internet Explorerが占めており,Netscapeはバージョン2.0から,またInternet Explorerはバージョン3.0からJavaに対応している.またSun MicrosystemsのHotJavaブラウザは最初からJavaに対応している.
http://www.netscape.com/(米Netscape Communications社のホームページ)
http://www.microsoft.com/products/prodref/206_ov.htm(米Microsoft社 Internet Explorer4.0のオーバービュー)
http://java.sun.com/products/hotjava/1.1/(JavaSoft HotJavaブラウザ)
[ 7] GUI=Graphical User Interface.WindowsやMacOSでは,ユーザとのインタフェースとしてマウスでボタンを押す,メニューから選ぶなどの方法を採用している.これをGUIと呼ぶ.また,プログラマが直接GUIを設計していては手間がかかるため,C++などの言語と同様に,Javaは標準的によく使用するボタン,メニューなどのGUIを部品としてまとめ,提供している.
http://medaca.tamacc.chuo-u.ac.jp/3_gui_th.html(GUIについて)
http://www.ohnishi.nuie.nagoya-u.ac.jp/~liu/ui/components/TOC.html(JavaのGUI部品)
関谷宏, JFCの概要とJFCコンポーネントプログラミング, 月刊ドクター・ドブズ・ジャーナル日本版, 11月号, 72-79 (1997).
[ 8] たとえば,Javaで日本語をはじめとする多言語が正式にサポートされたのはバージョン1.1からである.またSun Microsystemsは,Javaの統一のとれた動作のために100% Pure Javaというプログラム手法を提唱している.しかしクライアントの性能の違いはこの方法では根本的に吸収することはできない.
http://www.sun.co.jp/tech/whitepapers/PJava2/index.html(100% Pure Java Cookbook)
http://www.javalobby.org/(The Java Lobby)
宇野謙吉, Internet Explorer 4.0 vs. Netscape Communicator 4.0, JavaWORLD, 2月号, 91-95 (1998).
宇野浩司,鈴木祐巳, ”100% Pure Java”をめぐる2つの意見, 月刊ドクター・ドブズ・ジャーナル日本版, 11月号, 70-71 (1997).
[ 9] Java Development Kit.Javaの標準的な開発キットおよび実行環境.Sun Microsystemsは無償でJDKを配布しており,JDKはJavaに対応した製品を供給するベンダーに対する模範的なJava環境ともいえる.Javaの誕生以来,JDKは頻繁にバージョンアップされ,次にはJDK1.2がリリースされる予定である.JDK1.2がリリースされれば,メジャーなものだけでもJDK1.0.2,JDK1.1,そしてJDK1.2の3種類のバージョンが存在することになる.なお,今回ほとんどの教材はJDK1.0.2互換で作成した.
http://java.sun.com/products/jdk/1.1/(JDK 1.1.5)
Return