• 沒有找到結果。

五、 系統設計與實作

5.3 應用端之設計與實作

5.3.1 Web-based改編協調開發製作

本小節介紹的應用端程式是針對給管理協調者來使用,會依前述功能面的需求來 設計,以及按照架構介紹的訊息傳遞模式來實作。

圖 32: 協調者之 web-based 運作圖

而下面幾個步驟是按照圖32 的訊息運作圖來描述:

0: 從未改編協調的內容伺服器(Server for Content without adaptation)資料庫選擇多媒體內容

1: 輸入參數給予改編協調伺服器(Adaptation Server) 2: 改編協調伺服器開始批次從資料庫擷取媒體資源分析 3: 操作員可以手動選取其他的轉換結果

4: 最後批次轉換、並上傳至已改編協調的內容伺服器(Server for adapted content)之資料庫

z 選題畫面之流程設計

我們要轉換協調的是多媒體英文試題,對使用者會以管理帳號登入,並可以建立 一份新試卷,試題資料庫的來源是架構於Freebsd5.0 MySQL 平台之上。而本 應用程式會架設於Freebsd4.8 的另外一台 apache 網頁伺服器,因此使用者 會經由PHP 程式的資料庫查詢,並可讓使用者過濾篩選試題,當使用者選好題 目出完一份待轉譯的試卷,按下確定扭,會經過一道儲存的手續,整個處理過程 如下:

圖 33: 出題使用者從登入到選題出試卷的第一階段流程

z 輸入參數之流程設計

這裡設計必須讓出題協調者能手動輸入,他欲轉換的目標裝置的重要參數,包括 了-裝置的螢幕大小、字體大小、圖片支援格式、以及最後欲轉換出的多媒體內 容文件格式。當選定完畢後,這時會再跟改編協調伺服器(Adaptation Server) 回報以儲存資訊。

圖 34: 使用者輸入參數即時回傳確認動作流程圖

z 批次協調分析

一份試卷可能有眾多的題目,為了讓使用者不需要一個一個去協調,這裡設計會 一次批次協調全部。由於改編協調伺服器(Adaptation Server)的設計一次要求 只能協調單一試題,而使用端預設是Internet Explorer,我們會發送多次的以 Http Request 來達成批次協調,而在單一網頁程式要發 Http Request 的話,

我們必須要用到 ActiveX Object control 夾於網頁設計中來完成,協調完的結

果更可以讓使用者知道。下圖35 面是單一網頁作批次協調必須跟伺服器溝通的 運作過程,以及Http Request 運用 ActiveX Object control 的 JavaScript 程式寫法。

圖 35: 使用者進行批次轉換試題的過程圖

function sendrequest(url) { if (window.ActiveXObject)

{ xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");

if (xmlhttp) {

xmlhttp.onreadystatechange=disptcools;

xmlhttp.open("GET",url,true);

xmlhttp.send();

} } }

z 手動選取協調後之版型

在上一步驟協調完的結果並不一定能夠滿足使用者的喜愛,所以這裡設計方式是 讓使用者可以用手動方式選擇其他額外的版型。選定後的結果將再一次回傳給改 編協調伺服器(Adaptation Server)知道。

z 上傳至已改編協調的內容伺服器

前面的批次協調,只是作單純的分析協調。這裡會做最終的轉換動作,包括了欲 轉換的格式寫入、以及多媒體物件轉換、最後會壓縮成一個Zip 檔案然後上傳至 試題平台,此試題平台專存放適合行動裝置多媒體內容的資料庫。這些序列性的 動作亦是用批次來完成,對管理者來說,這裡要花比較多的時間等待。從英文試 題管理協調介面來看,這裡同樣必須發出多個Http Request,如同上面步驟的 批次協調一樣來完成批次轉換動作到最後的上傳內容,我們可由下圖36 來闡釋:

圖 36:批次轉換至上傳過程

相關文件