4 系統實作
4.1 開發環境
4.1.1 使用者行動裝置(Mobile Computer)
4.1.1.1 使用者介面模組
此模組是提供使用者訊息接收、使用者資訊設定、位置資訊顯示、
以及課程設定的介面,功能分別敘述如下。
z 訊息接收:使用者介面模組的訊息接收是經由『訊息接收與傳送模
送給使用者即可;在雙向的訊息中,使用者介面會顯示提示視窗讓 使用者選取進一步的資訊。而『事件處理模組』會等待使用者的選 擇觸發後再進行回傳到其他端的動作。
z 使用者資訊設定:使用者資訊設定是用來設定使用者介面相關資 4.1.1 使用者行動裝置(Mobile Computer)
組』收到其他端的訊息,透過『事件訊息分析轉換模組』處理後,
由『事件處理模組』觸發界面提示事件來通知使用者提示訊息產 生。接收訊息可以分為單向與雙向兩種,單向的訊息只需將訊息遞
34 件,例如聯繫 Home Agent
行動學習中有許多 以分 事件、傳遞連接事件、
35
ReaderTimeStart 讀取開始(每五秒一次)
PortInUseException 讀取器被佔用 NoSuchPortException 沒有安置讀取器
GetCardNumber 回傳卡號
UpdateCardNumber 修改標籤卡號
傳遞連接事件
Select_Class 選擇課程
Open_Connect 開啟連接
Connect_Wait 等待連接
Connect_Terminate 連接中斷 Connect_Server 傳遞伺服資訊
Check_Server 確認伺服器
Check_Server_1 確認伺服器為第一個
Open_Sevice_Map 開啟地圖
使用者代理人
Agent_Server 伺服器開啟代理
Server _Query_(參數) 查詢參數
Agent_Wait 等待代理程序
36
事件 子事件 說明
Agent_Stop 代理程序終止
4.1.1.3 事件訊息分析轉換模組
此模組接收到其他端的訊息後會產生相關的事件,或是將事件內容 轉化成訊息。例如在使用者選擇課程後,此模組就會分析事件發生,處 理事件並且將使用者課程資訊設定送往『訊息接收與傳送模組』再傳送
表,
訊息。當模組接收到自外部訊息,便傳送至『事件訊息分析轉換模組』
也負責將訊息傳送到對方的『訊息接收與傳送模 組』
至 HA 端,在 HA 端會依照使用者選擇課程後傳送課程相關伺服器的列 再回傳至使用者端。此模組分析來自 HA 的訊息,在轉換成事件 後,『使用者介面模組』就顯示相關的伺服器列表。
4.1.1.4 訊息接收與傳送模組
此模組提供連線的功能,負責傳遞使用者的訊息或是接收其他端的
處理訊息,而此模組
。
4.1.1.5 代理人模組
37
38
伺服端共有五個模組與一個內嵌實體 RF 讀取器,除了『RFID 偵測 模組』以及『實體 RFID 讀取器』,伺服器的模組大多與使用者行動裝 omputer)相同。以下我們介紹『RFID 偵測模組』與『實 體 RFID 讀取器』。
4.1.2.1 RFID 偵測模組
RFID 偵測模組是用來連接行動學習系統與實體讀取器的中間介 面,此模組控制 RFID 讀取器開始讀取標籤,以及處理來自讀取器讀取 到的標籤資料。
4.1.2.2 實體 RFID 讀取器
IP 位置給代理 人的功能,但也因為這項機制造成網路的負擔,所以我們將這項功能以 標籤(Tag)取代。當開始進行課程學習時,使用者設備選擇課程並傳 送到 端後,HA 端傳送所需伺服器列表至使用者設備上。
置(Mobile C
伺服器實體的 RFID 讀取器是用來讀取使用者標籤。
4.1.3 Home Agent(HA)
在以往的研究中,Home Agent 原本用來提供伺服器
HA
39
5 模擬實驗與結果
5.1 實驗環境
表 作此系統所需之 置十台伺服器 及
一台 HA。每台伺服器配置讀取 實體區域中,使用
者則 標籤的筆記型 先選擇課程學 ,
依照 HA 所傳回的課程伺服列表來進行行動學習,系統則是由 JAVA 語 言所撰寫。在本研究中,我們假設有 C 個課程,每個課程可都分為數個 子課程,每個子課程分別在不同的伺服器中,使用者必須學習完所有子 課程後,才能完成這個課程。伺服器共有 S 台,學習語言有 L 種。在前 三個實驗中,我們不考慮伺服器與伺服器之間實體的距離,使用者是隨 機選擇課程,並隨機前往伺服器位置,也就是使用者可能會到達錯誤的 伺服器。子課程分佈在哪個的伺服器也是隨機的。我們假設選取的伺服 器數目與子課程的數目相同。我們假設課程大小約為 5MB 的純文字 檔。表 5-1 為實驗設備清單、圖 5-1 為實作網路架構圖。
5-1 為實 設備清單表,我們設 以
器,並且安置在學習
攜帶一台內嵌 電腦。一開始使用者 習
40
表 5-1 設備清單
設備名稱 規格 數量
Server
CPU:Pentium4 2.5 GHz
RAM:DDR2-512MB 10
OS:Windows XP SP2
NoteBook RAM:DDR2-256MB 1
CPU:Pentium4 1.5 GHz OS:Windows XP SP2
Home Agent RAM:DDR2-1GB 1
CPU:Intel Core 2 Duo OS:Windows XP SP2
RFID Reader SUMMIT U-Reader 10
圖 5-1 實驗架構圖
41
5.2 實驗分析
系統設定的參數包括:伺服器(S)、課程(C)、以及語言(L)。在實驗 一中,我們固定其他兩種參數,改變某一個參數值測試對使用者人數的 響,並量測反應時間,我們將『反應時間』定義為當伺服器讀取到用
伺服器本 訊 以及使用者進行用戶代理事件的這段
期間,並且在實驗中使用 JAVA 的『執行緒』來模擬學習人數。在實驗 二,我們固定使用者人數與其中一個參數,改變其他兩種參數值來量測 反應時間。實驗三則比較 E-Learning 與 M-Learning 的效能。實驗四是 比較有無地圖指引的效能。
5.2.1 實驗一:系統參數測試
在此實驗中,我們忽略使用者移動時所花費的時間,並藉由改變系 統參數值,測試系統效能的反應。實驗環境假設有 S 台伺服器、每台伺 服器有 C 種課程、每種課程有 L 種語言。每一個課程必須瀏覽課程所需 全部的伺服器才算完成學習。下面各個小節分別測試當 S、C、L 參數改 變時,對於總反應時間效能的影響,實驗一的參數值設定如表 5-2 影
戶標籤並且回傳 身資 ,
。
42
表 5-2 實驗一參數表
S(伺服器) L(語言) C(課程) (非 順序式課程)
實驗 1-1 變動 固定 固定 順序式課程
實驗 1-2 固定 變動 固定 順序式課程
實驗 1-3 固定 固定 變動 隨機選擇
5.2.1
在此節我們假設使用者學習同一種課程,使用者所需參訪伺服器數 量對於總反應時間的影響,我們設定伺服器數量由一台增加至四台,語 言種類為一種,課程為一個順序性課程,子課程所在的伺服器是隨機分 派的。本實驗不考慮使用者移動的時間。實驗結果如圖 5-2 所示。
.1 實驗 1-1:伺服器測試(S)
圖 5-2 改變伺服器數量對於總反應時間的影響
由圖 5-2 可以看出,在一個課程中,使用者所需參訪伺服器數量越 多時,學習的總反應時間也會隨之增加。在使用者人數到達 150 人時,
參訪伺服器數量越多,使用者總反應時間越大。
5.2.1.2 實驗 1-2:課程語言測試(L)
本實驗測試使用者課程學習時,課程語言選取不同造成學習的總反
43
應時間的影響。實驗設定伺服器數量為四台,語言由一種增加至兩種,
試人數在 1 至 150 人之間,所有使用者 都在
課程為一個順序性課程。實驗測
同一課程、某一種語言上學習,並且不考慮使用者移動的時間。我 們測試使用者選擇不同語言學習時,對於總反應時間影響。實驗結果如 圖 5-3 所示。
圖 5-3 改變語言數量對於總反應時間的影響
44
由圖 5-3 可以看出,在人數少於 80 人時,使用者選擇不同的語言對 於總反應時間並無太大的影響。在 80 人以上時,對於總反應時間才有 明顯影響。我們研判這是由於使用者選擇單一語言時,課程伺服器只需 在一個固定範圍的資料上作資料存取。當使用者有兩種語言選擇時,伺 服器存取資料範圍變廣,所花費的時間也就越長,進而影響到整個反應 時間。
5.2.1.3 實驗 1-3:課程測試(C)
在此節中,我們設定使用者參訪不同的課程,課程伺服器數量為四 台,課程語言為一種,課程數量由一種課程增加至四種課程,課程設定 有順序式課程與非順序式課程的兩種學習過程。使用者選擇課程與前往 伺服器都為隨機,並且不考慮使用者移動的時間,我們測試課程數量對 於使用者總反應時間的影響。實驗結果如圖 5-4 所示。
圖 5-4 課程不同對於總反應時間的影響
由圖 5-4 可以看出,當課程數越多時,所有使用者總反應時間越 短。我們研判有兩種可能,第一個原因是因為每個使用者所選課程不 同,實驗測試的課程分為順序式與非順序式課程,順序式課程完成時間 一般較長,而非順序式課程則較短。當課程數越多,使用者選擇這兩種 課程的機率也就越平均,進而縮短了的總反應時間。第二種原因是當課 程選擇種類越少時,對於相同課程的伺服器負擔較大,因為每個使用者 都選擇到相同的課程,參訪相同的伺服器,而課程數量越多時,使用者 可以選擇的課程增加,因而會將使用者
在這實驗中,我們固定使用者人數,來測試 S、L、C 參數之間的影 分配到不同的伺服器上,總時間 也就會隨之降低。
5.2.2 實驗二:參數與參數之間測試
45
46
響。如前所述,我們不考慮使用者移動的時間,所有使用者選擇的課程 及前往伺服器都是隨機的,我們設定課程為順序式的學習課程。在本實 驗中,課程數量為 50 個,伺服器為 5 台,我們則在所有伺服器列表中 隨機挑選 5 台伺服器為一個課程,亦即子課程的數量為 5 個。我們依照 這步驟進行 50 次,每個課程的所選到的伺服器不盡相同。參數設定如 下表。
表 5-3 實驗二參數表
S(伺服器) C(課程) L(語言) (非)順序式課程
實驗 2-1 變動 變動 固定 順序式課程
實驗 2-2 變動 固定 變動 順序式課程
實驗 2-3 固定 變動 變動 順序式課程
5.2.2.1 實驗 2-1:伺服器(S)與課程(C)
在實驗中,我們固定使用者人數為 100 人,語言為 1 種,課程伺服 器數量由 1 台增加至 10 台,課程數量由 1 種增加至 100 種,課程為順 序性課程。所有使用者選擇課程及前往伺服器都為隨機,並且不考慮使 用者移動的時間。實驗結果如圖 5-5 所示。
圖 5-5 課程數量與伺服器數量對於總反應時間的影響
如圖 5-5,我們比較四種課程數量的區別,可以得知在伺服器數量
如圖 5-5,我們比較四種課程數量的區別,可以得知在伺服器數量