• 沒有找到結果。

元件式互動題目編輯系統

N/A
N/A
Protected

Academic year: 2021

Share "元件式互動題目編輯系統"

Copied!
88
0
0

加載中.... (立即查看全文)

全文

(1)國立台中教育大學教育測驗統計研究所理學碩士論文. 指 導 教 授:孔崇旭 博士. 元件式互動題目編輯系統. 研 究 生:吳建緯 撰 中華民國 九十五 年 七 月.

(2) 謝辭 在碩士研究生涯的三年裡,遇到不少挫折及困難也學到不少解決問題 的能力,在這裡首先感謝指導教授孔崇旭教授,在教授的細心及嚴格的指 導之下使得本論文得己完成並且讓我學到更多不同的做學問的態度和方 法,師恩永遠銘記在心。 此外,特別感謝交通大學黃世昆教授、彰化師範大學伍朝欽教授以及 台中教育大學鄭富森教授的指導,經由其數十年的研究經驗給予本論文更 多的建議以及指教,讓本論文的研究能更加嚴謹。 在研究期間和我並肩作戰的明軒,還有同門的英傑、平梓以及同屆的 同學們互相協助關心,此份友情永遠難忘。 最後感謝我的父母親以及家人的支持、體諒與關心,讓我在求學過程 之中無後顧之憂。在此,僅將本論文獻給曾經陪伴及關心過的人。. 吳建緯 謹誌 2006 年 7 月. I.

(3) 摘要 線上題庫出題是相當熱門而且具有快速、方便、可共享題目等優點, 但目前題庫系統中所提供的題型較缺乏互動式的作答方式,一般命題的老 師很難運用互動式的題目來做測驗。本論文主要的目的是運用軟體元件及 JavaBean 的技術,開發出可互動式的多媒體題目樣版,讓命題的老師很容 易的編出互動式的題目。在研究中,我們定義一個互動題型樣版的軟體介 面規格 Item Template Component Bean (ITCBean),並且開發一個相對應的 視覺化的題目編輯系統 ITIS(Interactive Test Item System)。每一個 ITCBean 代表一個題型樣版,具有互動式(拖拉、連線、碰撞、相吸等功能)的特徵 並且可加入多媒體素材(圖片、聲音、動畫等)到其中。ITCBean 題型樣版 的開發者,可依據 ITCBean 軟體介面規格,繼承 Base ITCBean 來開發互 動式的題型樣版;而題目的編輯者,可利用 ITIS 題目編輯系統,動態載 入新的 ITCBean 軟體元件(新的題型樣版),來增加編輯器中的題型樣版, 而題目的編輯者可以運用題型樣版,以視覺化的方式來編輯,只需簡單的 參數設定, 即可編出新的題目。在測驗時,只需透過網路連線即可和測驗 伺服器連結,並且在測驗結束時系統會自動閱卷而且傳回成績到資料庫之 中。. 關鍵字:題型樣版、互動式題型、軟體元件、動態載入、編輯系統、 JavaBean. II.

(4) Abstract Gathered with all the merits of expedition, convenience, and sharability, testing through the on-line item database has become very popular nowadays. Due to the lack of interactive answering system within the test templates provided by the item database, however, the general teachers find it hard to incorporate the interactive items into testing. To help solving the problems of editing interactive items, this paper has developed interactive multimedia item templates with the technology of software component and JavaBean. To achieve that, we have devised a software interface specification of interactive Item Template Component Bean (ITCBean), and also designed a relative visualized Interactive Test Item System (ITIS). Each ITCBean represents test templates, which not only carries interactive features of drag and drop, link, collide, and overlap, but also can add into the system multimedia materials such as image, audio, and animation. While the designer of ITCBean can inherit Base ITCBean to develop interactive test template based on the ITCBean software interface specification, the item editor can add test templates into the editor by dynamic loading new ITCBean software component (new test template) within the ITIS. With only simple steps of parameter setting, new items can be done by the item editor through the visualized test template. Testing can be conducted simply through the connection with the testing server, and test report will be mailed to the database through auto marking after the test is finished.. keywords:item template、interactive template、software component、 dynamic loading、authoring system、JavaBean. III.

(5) 目錄 第一章 緒論............................................................................................................1 第一節 研究動機............................................................................................1 第二節 題型元件............................................................................................1 第三節 研究目的............................................................................................2 第四節 研究方法............................................................................................3 第五節 章節提要............................................................................................4 第二章 相關研究....................................................................................................5 第一節 Fabio Tambutini的Web-based Language Learning: Authoring and Assessment Technologies ......................................................................................5 第二節 John English的Experience with a Computer-Assisted Formal Programming Examination ....................................................................................7 第三節 Masahiro Yamamoto 的Synthesis System for Web Based Examination Generation and Marking by XML....................................................9 第四節 相關線上測驗系統介紹..................................................................13 第五節 比較..................................................................................................16 第三章 基礎題型樣版元件(ITCBean) ................................................................19 第一節 題型樣版元件概念..........................................................................19 第二節 題型樣版元件介面規格..................................................................20 第三節 題型樣版元件運作流程..................................................................31 第四節 題目的描述檔..................................................................................33 第五節 目前題型樣版提供的演員介紹......................................................34 第六節 目前開發題型樣版元件功能介紹..................................................35 第四章 編輯系統(ITIS)........................................................................................50 第一節 系統概念..........................................................................................50 第二節 系統架構..........................................................................................51 第三節 系統流程..........................................................................................56 第五章 實作成果與範例展示..............................................................................57 第一節 系統開發環境..................................................................................57 第二節 編輯系統介面介紹..........................................................................58 第三節 編輯系統出題流程展示..................................................................59 第四節 編輯系統測驗流程展示..................................................................65 第六章 結論與未來發展......................................................................................76 第一節 本研究貢獻......................................................................................76 第二節 結論..................................................................................................76 第三節 未來發展..........................................................................................76 參考文獻......................................................................................................................77. IV.

(6) 表目錄 表 1 線上題庫系統之比較.........................................................................14 表 2 論文相關研究之比較.........................................................................17 表 3 Property List........................................................................................24. V.

(7) 圖目錄 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖. 1 Fabio Tambutini 的範例 .......................................................................6 2 Fabio Tambutini 的連線系統關係 .......................................................7 3 John English 的題目範例.....................................................................8 4 John English 的實測結果分析.............................................................9 5 Masahiro Yamamoto 的系統模組 ......................................................10 6 Masahiro Yamamoto 的系統展示畫面 ..............................................10 7 Masahiro Yamamoto 的題目範例 ......................................................11 8 Masahiro Yamamoto 的測試畫面 ......................................................12 9 Masahiro Yamamoto 的連線系統模組 ..............................................13 10 托福測驗的測驗畫面.......................................................................14 11 全民英檢的測驗畫面.......................................................................15 12 線上測驗中心的測驗畫面...............................................................16 13 樣版關係示意圖...............................................................................21 14 檔案流程...........................................................................................23 15 ITCBean 的介面規格模組...............................................................25 16 ITCBean 和 ITIS 的運作關係..........................................................25 17 Actor 的介面規格模組.....................................................................27 18 Actor 和 ITCBean 的運作關係 ........................................................28 19 Actor 的系統架構.............................................................................29 20 ITCBean 物件間 UML 圖 ...............................................................30 21 元件運作流程的展示.......................................................................31 22 元件運作順序圖...............................................................................32 23 樣版描述檔.......................................................................................33 24 是非題畫面展示...............................................................................35 25 單選題畫面展示...............................................................................36 26 多選題畫面展示...............................................................................37 27 複選題畫面展示...............................................................................38 28 填充題畫面展示...............................................................................39 29 錄音題畫面展示...............................................................................40 30 聽音辨字畫面展示...........................................................................41 31 看圖回答問題畫面展示...................................................................42 32 選擇式填充畫面展示.......................................................................43 33 連連看畫面展示...............................................................................44 34 配對題畫面展示...............................................................................45 35 分類題畫面展示...............................................................................46 36 組合題畫面展示...............................................................................47 VI.

(8) 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖 圖. 37 拼圖題畫面展示...............................................................................48 38 接龍題畫面展示...............................................................................49 39 題目編輯系統之系統模組架構.......................................................51 40 動態載入模組的內部流程...............................................................52 41 元件庫的示意圖...............................................................................52 42 屬性編輯模組內部流程...................................................................53 43 網路連線模組內部流程...................................................................54 44 題目編輯系統之系統流程...............................................................56 45 編輯系統介面介紹...........................................................................58 46 接龍出題展示-選擇背景圖 .............................................................59 47 接龍出題展示-新增演員 .................................................................60 48 接龍出題展示-改變演員的屬性並且設定分數 .............................61 49 接龍出題展示-儲存己編輯完的題目 .............................................62 50 接龍出題展示-己編輯完的題目展示 .............................................63 51 接龍測驗展示-輸入學生人數 .........................................................65 52 接龍測驗展示-輸入考試名稱 .........................................................66 53 接龍測驗展示-選擇測驗試卷 .........................................................67 54 接龍測驗展示-輸入測驗時間 .........................................................68 55 接龍測驗展示-輸入伺服器 IP Address...........................................69 56 接龍測驗展示-輸入個人資料 .........................................................70 57 接龍測驗展示-接收試卷作答 .........................................................71 58 接龍測驗展示-老師按下交卷 .........................................................72 59 接龍測驗展示-學生按下交卷 .........................................................73 60 接龍測驗展示-系統接收成績 .........................................................74 61 接龍測驗展示-查詢成績 .................................................................75. VII.

(9) 第一章. 緒論. 第一節 研究動機 隨著多元化評量方式的重視以及電腦技術的進步,利用線上題庫系統 (Zhenming Y. ,2003)(Roever C. , 2001)( Bejar I. I., 2003)( Mitchell T. , 2003)(Patelis T., 2000)來出題越來越被廣泛使用而且相當熱門,使用題庫來 出題不但快速、方便而且可共享題目,但是目前的題庫系統大都只提供是 非題、單選題、多選題、填充題及簡答題,這類的系統本身具有可快速出 題及題目可再重用性。然而有些技能及知識並無法運用此類的題型來測驗 出受測者的能力來,例如:英文領域之中的聽力測驗以及自然科學領域的實 驗操作等,這些領域都期望可以有更多的考試方式,希望考試時有互動式 的題目,甚至題目的表現方式能加入多媒體素材(圖片、聲音、動畫等)。 題目編輯系統希望可以保存有一般題庫系統的快速、方便、共享題目 等優點,並且可以使用視覺化的作答模式來測驗而且適時的加入互動式的 作答方法於其中,不但可以充份的使用電腦化所帶來的好處而且可以提供 更多不一樣的作答方式。 所以我們期望可以在題目之中加入多媒體素材(例:圖片、聲音、動畫 等)以及互動式(例:拖拉、連線、碰撞等)的作答方式。並且在題目之中內 建數種方法,如:自動判題、行為紀錄等功能。以及系統之中加入成績建 檔、網路連線等功能。以期望使用一份電腦化的多媒體試卷可以在測驗完 畢之後,將閱卷以及成績建檔等工作利用內建的方法一併完成。. 第二節 題型元件 軟體元件本身就是一個軟體單元(Bobeff G., 2004),將某種功能包含於 其中,並且像黑盒子(black-box)(Schultz U. P., 1999)一樣,使用者只管輸入 什麼並且可以得到什麼即可並不必了解軟體元件內部是如何運作。所以將 軟體元件的概念引入題目之中,期望的是一個題型就是一個軟體元件,並 1.

(10) 且出題者只需要將視覺化呈現的部份做修改即可變成一個可用的題目完 成出題的動作(Jorgensen B. N. , 2004) (Sridhar N. , 2003)。 元件具備了可重用性(reuse)、視覺化編輯、多人共同開發等優點。所 以使用本研究的元件化題型(component-based item)的方式來開發題目,題 型即是樣版(template),出題只需利用視覺化的方式參數化題型,並且題目 的呈現方式為視覺化的方式,而且加入互動式的方法於其中亦可以提昇視 覺化所帶來的效果(Favre. J.M., 2002)。 ITCBean(Item Template Component Bean)是我們自行定義的題型元件 規格,此規格主要是架構在 JavaBean 底下來開發完成的,目的是期望可 以達到題型元件的規格統一以及充份應用元件的多人共同開發等優點。開 發 ITCBean 的目的不但是期望題型的規格可以統一亦期望使用更高階的程 式設計方法讓開發新題型的開發者可以用最簡便的方式來完成想設計的 題型。架構在 ITCBean 來開發的題型均可以載入元件化題目編輯系統來使 用,並且題目編輯系統可動態載入新題型及題目來使用,使得開發及應用 均不受限並且具備完善擴充性(Forax R., 2004)。. 第三節 研究目的 本研究基於上述之討論結果,訂定下列之研究目的: 1.. 開發常見的互動式題型樣版,用以擴充考試的題型。. 2.. 開發相對應於題型樣版的視覺化的題目編輯系統,以方便命題者 來命題。. 3.. 定義題型樣版之軟體元件規格,並發展及開發基礎題型樣版元 件,以利後續者較容易開發新的互動式題型樣版元件,並可動態 載入我們的視覺化題目編輯系統。. 4.. 擴充視覺化題目編輯系統使具有動態載入新的題型樣版元件的功 能。. 2.

(11) 第四節 研究方法 本研究運用軟體元件的技術,發展了互動式多媒體的題型樣版,讓命 題者可以來使用。元件式題型即是以領域為主,依據領域內的特性,分析 其需求,並在領域內建立常用的題型樣版庫,並且題型樣版可被參數化成 題目來出題。一個題型樣版即為一個軟體元件,出題者只要使用建題型樣 版,修改一些屬性或新增加一些樣版元素之後便成為一個互動式多媒體測 驗題目,多個題目即可組合成一份試卷。 當題型樣版出現後,我們又面臨到下列問題:(a)如何讓命題者很方便 的來命題,(b)如何讓題型樣版的數量增加,(c)使用互動式的題目來做測驗 時,考試者作答完畢後,如何有效的來自動判斷答案是否正確,這些都是 面臨的挑戰。對於以上的問題,我們的解決方式如下: 我們定義了一個 ITCBean 題型樣版的軟體元件軟體介面規格,此規格 是架構在 JavaBean 底下開發完成的題型樣版元件,並發展了相對應的一 ITCBean 的編輯器,此編輯器是以視覺化的方式來編輯題目,可修改樣版 的屬性或新增加一些樣版元素,因此可以很方便的完成一個互動式多媒體 測驗題目。所有的題型樣版皆繼承 Base ITCBean,Base ITCBean 已將基本 的多媒體功能及常用的互動功能完成,也內建了與 IT IS 組合的能力,以 及自動閱卷的機制,未來開發新題型的開發者可以架構在我們定義的 ITCBean 題型元件上來開發,只要繼承 Base ITCBean 來開發所需的題型樣 版,就可直接動態載入(dynamic loading)到 ITIS 的編輯器中,可直接新增 新的題型樣版,而且也具備了自動閱卷及成績建檔的功能了。. 3.

(12) 第五節 章節提要 在後續的章節裡,第二章是相關的研究探討,我們研究了相關的論文 三篇以及相關的線上測驗系統三個,並且針對相關的研究做功能性的比較 以做為我們論文的研究參考。 第三章是基礎題型樣版元件的介紹以及介面規格的講解並且運作流程 介紹,在這章節的最後有介紹目前本研究己開發完成的互動式題型功能並 且畫面展示。 第四章是介紹編輯系統,首先整個系統的概念介紹並且介紹系統內部 的架構以及系統運作流程。第五章便針對系統做畫面的展示包含編題以及 測驗兩大部份。最後便針對本研究的貢獻以及結論和未來可發展的重點。. 4.

(13) 第二章. 相關研究. 由於線上測驗的盛行,我們在開發系統之前研究了下列三篇論文並且 了解其線上測驗系統的功能並且做為我們開發系統的參考,以下便是我們 針對這三篇論文所做的一個分析。. 第一節. Fabio Tambutini 的 Web-based. Language Learning: Authoring and Assessment Technologies Fabio Tambutini 的這篇文章即是使用 XML template 的方法來設計題型 樣版,讓出題者可以藉由一些簡單的設定即可將樣版轉換成具有互動性的 題目並且利用線上的方式來做測驗。(Tambutini F., 2002) 在程式執行時首先會將一個 XML 格式的樣版載入來讓出題者編題。 出題者只需透過簡單的參數化便可以完成一個題目存成 XML 的檔案。而 透過 Web XML Parser 可以將編製好的題目轉成 Interactive DHTML page 並 且附加上所需的多媒體素材(例:audio, video, images)。完成編製之後便等 待被載入來做使用。下圖 1 為該研究的範例圖。. 5.

(14) 圖 1 Fabio Tambutini 的範例 該研究設計了 13 種題型樣版並且具有自動判題的功能在樣版內部,雖 然具有互動性題目,不過題目未能以動態的方式新增以及題型樣版缺乏一 套針對開發新題型者的介面規格樣版讓開發新題型者繼承開發。下圖 2 為 其系統內部在網路連線部份的關係說明圖。透過 PHP module 以及 Web server 可以讓使用者透過 Web browser 來和後端的資料庫做題目的存取, 取得題目之後便可以做答以及交卷。. 6.

(15) 圖 2 Fabio Tambutini 的連線系統關係. 第二節 John English 的 Experience with a Computer-Assisted Formal Programming Examination John English 的這篇文章是使用 XML 的技術來開發一個具有 Free text、Multiple choice (choose one right)、Multiple select (choose all right)、 Multiple match (arrange a set answers into the correct order)以上四種題型的 線上題庫系統,出題者可以利用本系統來出一份試卷並且可以透過 www 的方式來做測驗(English J. , 2002)。 在測驗結束之後,系統有設計一個針對這四種題型的自動閱卷系統來 做閱卷的動作。並且本論文有針對實測的結果做分析以及比較。下圖 3 為 系統的題目範例。. 7.

(16) 圖 3 John English 的題目範例 另外,在自動判題的機制之下作者有做實測並且針對實測內容做了以 下的分析並且佐證其系統的可靠度。結果如下圖 4。. 8.

(17) 圖 4 John English 的實測結果分析. 第三節 Masahiro Yamamoto 的 Synthesis System for Web Based Examination Generation and Marking by XML Masahiro Yamamoto 的這篇文章是使用 XML 的技術來開發一個具有 Multiple Selections、Single Selection、Text Input 以上三種題型的線上題庫 系統。系統內部有試題產生器、答案設定器、自動閱卷器以及結果產生器。 每一個功能均有一個 XML 相對應的模組做對應以及實作(Yamamoto M. , 2005)。下圖 5 為系統內部模組圖。 9.

(18) 圖 5 Masahiro Yamamoto 的系統模組 下圖 6 為 Masahiro Yamamoto 的系統展示畫面。. 圖 6 Masahiro Yamamoto 的系統展示畫面. 10.

(19) 下圖 7 為 Masahiro Yamamoto 的題目範例. 圖 7 Masahiro Yamamoto 的題目範例. 11.

(20) 在自動閱卷之後,老師可以藉由系統查詢到測試的結果,如下圖 8。. 圖 8 Masahiro Yamamoto 的測試畫面 在系統模組的部份,該研究是透過 www 的方式來做線上的測驗,其 網路連線模組圖如下圖 9。使用者透過 browser 存取 www server 上的資料 並且後端有一個綜合軟體在控制資料檔案的分享共用。可以利用 browser 給受測者以及施測者相對應的資訊。. 12.

(21) 圖 9 Masahiro Yamamoto 的連線系統模組. 第四節 相關線上測驗系統介紹 現在的線上測驗系統也很多所以我們也參考了下列三個國內著名的線 上測驗系統,托福測驗、全民英檢、以及線上測驗服務中心的模擬試題, 並且針對本研究的研究主軸來研究這三個系統內部題目所包含的多媒體 素材以及互動式的作答方法來做分析。(托福測驗, 2006) (全民英檢, 2006) (線上測驗服務中心, 2006)。在托福測驗系統(托福英語測驗練習網, 2006) 的部份我們是採用托福英語測驗練習網所提供的模擬試題來做分析。在全 民英檢的部份以及線上測驗服務中心的部份我們是採用該網站所提供的 模擬試題來做分析。 這三大系統大部份的素材大部份都是包含圖片、聲音等,缺乏動畫及 文字特效等。在互動式的作答功能方面大部份都是使用點選的功能,缺乏 像拖拉、連線以及演員的出現和消失等。另外在互動題型方面由於這三個 線上測驗系統均缺乏如:連連看、配對題、分類題、組合題、接龍題等。 所以在此不列出題型比較。相關系統比較的功能如下表 1: 13.

(22) 系統. 表 1 線上題庫系統之比較 托福測驗 全民英檢. 線上測驗服務中心. 功能 圖片 動畫 文字特效 播放聲音 錄音 拖拉 碰撞 重疊 出現 消失. YES NO NO YES YES NO NO NO NO NO. YES NO NO YES YES NO NO NO NO NO. 下圖 10 為托福測驗的畫面。. 圖 10 托福測驗的測驗畫面. 14. YES NO NO YES NO NO NO NO NO NO.

(23) 下圖 11 為全民英檢的測驗畫面。. 圖 11 全民英檢的測驗畫面. 15.

(24) 下圖 12 為線上測驗中心的畫面。. 圖 12 線上測驗中心的測驗畫面. 第五節. 比較. 綜合以上,我們可以分析比較如下列三大點: 1.. 在多媒體素材的部份:圖片、聲音是 Fabio Tambutini 以及本研究 有,而前者又多了影片的演員。. 2.. 在互動式題型的部份:Fabio Tambutini 包含了十三種的互動題型, John English 以及 Masahiro Yamamoto 均只有簡單的單選、多選以 及填充題而己,但 John English 還有多一個一對多的題目類似本研 究的分類題。. 3.. 在樣版規格部份:雖然 Fabio Tambutini 也是用樣版的方式來出題 但是並未提供樣版的規格給後續的開發題型者。只有本研究有提 供一個基礎的樣版規格讓後續開發者可以架構在這個基礎樣版規 16.

(25) 格之下來開發新題型。 下表 2 為這三篇論文以及本研究所發展的 ITIS 功能相互比較表。. 表 2 論文相關研究之比較 Paper. capability. Web-based Experience with Synthesis System Language a for Web Based Component-base Learning: Computer-Assist Examination d Interactive Authoring and ed Formal Generation and Item System Assessment Programming Marking by (2006) Technologies Examination XML (2005) (2002) (2002). Image. yes. no. no. yes. audio. yes. no. no. yes. video. yes. no. no. no. True/ False. no. no. yes. Multiple Choice. yes. yes. yes. Multiple Select. yes. yes. yes. Text Input. yes. yes. yes. Link. no. no. yes. Match. no. no. yes. Classification. yes. no. yes. relation. no. no. yes. solitaire. no. no. yes. 17.

(26) Item variety number. 13. 4. 3. 15. Interactive item. yes. no. no. yes. Item template. yes. no. no. yes. Item template Specification. no. no. no. yes. Extend new item template. no. no. no. yes. Auto Marking. yes. yes. yes. yes. = 無法確定該研究是否具備此題型. 18.

(27) 第三章. 基礎題型樣版元件(ITCBean) 第一節 題型樣版元件概念. 在元件的定義部份,Szyperski (Szyperski C., 1998)曾經提出以下的幾 點: z. A component is a unit of independent deployment.. z. A component is a unit of third-party composition.. z. A component has no persistent state.. 上述的定義不但說明了元件是一個獨立的單元而且可以被第三者來組 合使用之久外,元件並沒有預設的狀態。另外在軟體元件的部份也提 出了下列的定義: “A software component is a unit of composition with contractually specified interfaces and explicit context dependencies only. A software component can be deployed independently and is subject to composition by third parties.”(Szyperski C., 1997) 意思即是說明軟體元件是一個組合單元的介面並且可以獨立去完成某 一件事情以及被第三者所組合。 JavaBean API 裡有一段話如下 “The goal of the JavaBeans APIs is to define a software component model for Java, so that third party ISVs can create and ship Java components that can be composed together into applications by end users.”(Sun, 1997) 意思即是說明軟體元件是可以讓使用者利用組合的方式來使用,所以 即使是不懂的程式設計的使用者也能輕易使用己開發好的軟體元件。 “A Java Bean is a reusable software component that can be manipulated visually in a builder tool.”(Sun, 1997) 軟體元件可以在工具軟體上利用視覺化的方式被建構來使用,綜合前 兩段話的意思即是說明軟體元件不但是利用組合及參數化的方式來使用 而且利用視覺化的方式來操作編輯,這些優點更可說明我們想使題目多媒 體化是一件簡單的事,假使我們是元件化題型的方式來達到。 19.

(28) “The three most important elements of a JavaBean are the set of properties it exposes, the set of methods it allows other components to call, and the set of events it fires.” (Miki F., 1998) 說明了一個 JavaBean 格式的元件具備了屬性、方法以及事件,而屬 性即是參數化題型的介面並且藉由方法來達到視覺化介面以及屬性介面 的溝通,並且事件即為題型帶來互動性的效果,而編輯系統會即時(run-time) 的依照元件內部的定義去做這三者相對應的動作。 針對一位使用題型編輯系統來出題的使用者而言,我們期望可以不必 改變以往使用題庫系統的方式,也就是不需要額外去學習程式設計或者先 備知識即可以很方便的來使用本系統,而元件化不但可以幫助我們達到這 個目的,而且視覺化編輯所帶來的互動性設計更提昇測驗層級。 題庫系統的產生無疑是為了使題目可以整合起來,並且讓出題者可以 方便出題以及共享這些題目為目的,但或許在題型的分類上以及領域的分 析上可能會有些微的不足。今日我們以元件化題型的方式來加強題庫系統 的功能也期望可以補足領域分析以及題型分類的缺憾。 利用元件化的方式來開發題型便是著重於元件的視覺化編輯等優點, 而 ITCBean (Item Template Component Bean) 是架構在 Sun 的 JavaBean 此元件規格底下開發完成,並且在制定 ITCBean 規格的同時亦將其元件 的特點加入其中,期望未來開發題型元件的開發者可以架構在 ITCBean 底下來開發題型,達到題型元件的規格統一化,下一節即會介紹 ITCBean 的完整介面規格。. 第二節. 題型樣版元件介面規格. 在本研究中,我們所定義的 ITCBean 是架構在 JavaBean 的軟體元件 規格底下發展而成的,在 ITCBean 和 Actor 之間的關係如下圖。在軟體元 件內部所提及的 Component 以及 Container 的關係就如同下圖 13,一個 Component 是可以被 add 到 Container 之中來被使用,而一層一層的關係都 20.

(29) 屬於 Container 以及 Component 的架構,所以 ITCBean 以及 Actor 亦屬於 此種關係。針對 ITCBean 而言,本身是 Container 而 Actor 是他的 Component; 針對 ITIS 而言,本身是 Container 而 ITCBean 是他的 Component。. 圖 13 樣版關係示意圖 JavaBean 有著三個重要的部份,屬性(property)、事件(event)、方法 (method),而我們根據此元件的這三個特點將 ITCBean 元件的介面規格模 組制定如下: 1.. Method for Actor initial:透過像 addImageActor(String,int,int)這一類 的 method 來使得開發 ITCBean 的開發者可以快速而且更容易的新 增一個演員到 ITCBean 裡。. 2.. Method for mouse control:預留滑鼠控制的方法使得開發者得己利 用簡單的 override 便可新增自己的滑鼠控制事件。方法如下:. 21.

(30) public void addMousePressed (MouseEvent e) {} public void addMouseDragged (MouseEvent e) {} public void addMouseReleased (MouseEvent e) {} public void addMouseClicked (MouseEvent e) {} z. Method for Actor mouse control:預留演員與 ITCBean 之間的滑鼠互 動關係,當演員有滑鼠事件產生時便會執行 ITCBean 的 childMouse 方法,開發者只需簡單的 override 即可成功改寫。方 法如下: public void childPressed (MouseEvent e, Actor child) {} public void childDragged (MouseEvent e, Actor child) {} public void childReleased (MouseEvent e, Actor child) {} public void childClicked (MouseEvent e, Actor child) {}. z. Method for Item input/output:這個部份包含著 open( ) 和 save( ) 兩個方法,主要是針對試題的 input 及 output 的方法做實作,負責 讀寫 ITCBean 的 property 以及 actor 的部份。而方法內部的連結 架構更是充份運用 component and container 的概念,圖示如下圖 14。. 22.

(31) 圖 14 檔案流程 在 Framework 點選欲開啟的試卷,在讀取欲開啟的 ITCBean 時便會去 call ITCBean 的 open( ),而 ITCBean 的 open( )內部除了先 readProperty ( )之後便會執行 readActor ( ),而 readActor ( ) 即是 call Actor 的 openActor ( )。如此的一層一層的關係即是 component and container 的架 構。 z. Method for Test log: 這個部份包含了自動判題的 result ( ) 以及作 答行為紀錄的 actionRecord ( ) 兩個方法。在自動判題時己內建有 判題的方法,假使開發者有其它需求更只需要簡單的 override 即 可成功改寫。行為紀錄的部份則是將作答者從進入這個題目便開 始紀錄所有和題目有關的動作以便之後進行分析以及利用。. z. Property: „. 內部方法:可以直接利用 method call 的方式去呼叫 getProperty() and setProperty() 等方法,來達到參數化的目. 23.

(32) 的。適用於題型內部預設參數化時。 „. 視覺化表格:將內部的設定方法轉換成表格方式,讓參數化 題目更為方便。適用於在編輯題目時的視覺化設定時。. 下表 3 為目前題型樣版內建的 Property:. 表 3 Property List Field. Get method. Set method. bgColor. getBgColor ( ). setBgColor (Color ). fontColor. getFontColor ( ). setFontColor (Color ). fontStyle. getFontStyle ( ). setFontStyle (Font ). imageWidht. getImageWidth ( ). setImageWidth (int ). imageHeight. getImageHeight ( ). setImageHeight (int ). Score. getScore ( ). setScore (int ). bgImage. getBgImage ( ). setBgImage (String ). Mode. getMode ( ). setMode (String ). linkline. getLinkLine ( ). setLinkLine (String ). z. Method for Test management: 內部包含著 testTime 和 itemShowTime ( ) 之類的方法。testTime 為限定作答的時間, itemShowTime ( )則是希望題目可以讓受測者看幾次即強迫該題 作答結束。. z. Method for interactive:內部包含所有互動式的方法,例如:Drag and Drop、Collide、Overlap 等。未來開發者可以再新增互動式的方法 於 ITCBean 來使用。. 24.

(33) 圖 15 ITCBean 的介面規格模組 一個標準的 ITCBean 是包含有如上圖 15 所列的 8 大部份。下圖 16 即 是 ITCBean 以及 ITIS 的運作關係圖。. 圖 16 ITCBean 和 ITIS 的運作關係 25.

(34) 由上圖可以清楚的了解,ITIS 可以實例化一個 ITCBean 並且針對它來 做初始化的動作,初始化完成會 add 到 ITIS 本身的 Container 上,而使用 者可以透過滑鼠事件或者互動式的方法來改變一個 ITCBean 的狀態,並且 ITIS 可以透過 ITCBean 內部的自動閱卷方法來取得成績結果,最後可以透 過 save ( ) 的方法來得到欲儲存的資訊字串。 而在 ITCBean 之中會有 Actor 加入而形成一個題目,ITCBean 和 Actor 的關係就是一層 Component and Container 的關係一樣,而 Actor 的介面規 格模組說明如下: z. field for Actor Property:內容包含 Actor 的屬性,例如:Name、Path、 Width、Height 等,每個演員都會有固定的屬性欄位,而 extends Base Actor 的 Actor(如 ImageActor)就保有基本的屬性,這樣可以使演員 元件的管理上有更著實的效益。. z. field for Actor Status: 演員的狀態控制,可以利用這些屬性來得知 目前演員被設定的屬性為 true or false。. z. method for Actor control: 演員的控制方法,包含著更換演員內 容、播放演員、停止演員等。開發新演員的開發者可以透過簡單 的 override 就可以改變自訂的演員的控制方法。. z. method for Actor input/output: 這個部份包含著 openActor ( ) and svaeActor ( ) 兩個方法。如上圖 3 所表示的情境,component and container 間的相互連結關係是一種各自分工的方式互不隸屬, component 是 container 相反的 container 也是 component。重點取 決於所扮演的角色不同。. z. method for Actor mouse Control: 這裡包含著演員本身的滑鼠事件 方法,當演員的滑鼠監聽器監聽到有事件時,便會來執行所對應 的方法,保留這些方法目的是為了讓開發新演員的開發者可以透 過簡單的 override 便可以新增演員的滑鼠事件。而滑鼠事件的方 法如下:. 26.

(35) public void addActorMousePressed (MouseEvent e) {} public void addActorMouseDragged (MouseEvent e) {} public void addActorMouseReleased (MouseEvent e) {} public void addActorMouseClicked (MouseEvent e) {} z. method for interactive: 演員和演員之間也有內建互動的方法,例 如: checkCollide ( )就是確定在同一個 container 內部的演員有無互相 碰撞。 checkExitPanel ( )就是確定演員有沒有超出 container 的畫面範圍。. 圖 17 Actor 的介面規格模組 一個標準的 Actor 是包含有如上圖 17 所列的 6 大部份。下圖 18 即是 Actor 以及 ITCBean 的運作關係圖。. 27.

(36) 圖 18 Actor 和 ITCBean 的運作關係 上圖可以很清楚的了解,一個 ITCBean 是可以實例化 Actor 並且針對 實例化完成的 Actor 做初始化的動作並且 add 到 ITCBean,而且可以讓使 用者透過滑鼠事件以及互動方法來做狀態改變,而最後可以透過 saveActor ()來取得欲儲存 Actor 的資訊字串。 定義這些規格介面目的是可以藉由這些介面讓 Actor and ITCBean 可 以相互溝通,並且 ITCBean and ITIS 可以相互溝通。下圖 19 為 Actor 的 系統架構。. 28.

(37) 圖 19 Actor 的系統架構 完整的基礎題型樣版元件以及演員的內部物件關係的 UML 圖如下圖 20。. 29.

(38) 圖 20 ITCBean 物件間 UML 圖. 30.

(39) 第三節. 題型樣版元件運作流程. 元件庫是存放題型元件的地方,當題型元件被選取時,編輯系統便會 動態的載入元件到系統之中並且對題型元件完成初始化的動作。而在編輯 的同時亦可利用新增元件的選單將一個己經存放在電腦的題型元件(*.jar) 利用動態載入的方式將新元件載入元件庫之中備用。 在編輯試卷時,一個己經完成初始化的題目是可以在視窗之中看到內 建的範例題目,而且出題者可以在屬性編輯區修改其屬性,或者利用滑鼠 右鍵的視窗選單對該題型做參數化等動作,並且可以儲存一個己參數化完 成的題目於題庫之中以便日後再加入題目來做編輯或利用。下圖 21 即是 元件運作流程的展示圖。. 圖 21 元件運作流程的展示 下圖 22 即是樣版在編輯系統架構底下的運作流程順序圖。. 31.

(40) 圖 22 元件運作順序圖 上圖的步驟解說如下: 1.. ITIS 經由檔案開啟的功能去開啟一個 ITCBean 的檔案。. 2.. 該檔案在被開啟之後被複製到資料庫之中。. 3.. 動態載入模組由資料庫取出一個 ITCBean 並且做初始化。. 4.. 動態載入模組將一個初始化完成的 ITCBean 的物件傳給 ITIS。. 5.. 可以經由視覺化的編輯區域對 ITCBean 做編輯. 6.. 透過 set/get 的方法對 ITCBean 做屬性的存取。. 7.. ITIS 可以經由 saveItem 的方法將己經編輯好的題目存到資料庫。. 32.

(41) 第四節. 題目的描述檔. 每一個 ITCBean 均會有實作 open( ) and save( )這兩個方法,而這兩個 方法內部即實作了如何將這個己經被編輯完成的樣版儲存成描述檔,以利 之後再開啟加入試卷之中或者再編輯,而下圖 23 即是介紹描述檔內部儲 存的格式。. 圖 23 樣版描述檔 1.. Property data:記錄著該樣版的屬性部份所對應的值。. 2.. Actor data:記錄的是該樣版內部使用了那些演員,而且每個演員 均有自己定義的描述字串格式,在存檔時會去呼叫演員內部的 saveActor( ) 方法即可得到該演員所需儲存的對應描述字串。. 33.

(42) 第五節. 目前題型樣版提供的演員介紹. 以下為目前基礎的題型樣版(ITCBean)所內建提供的演員介紹: 1.. ImageActor:可以接受一張圖片來當做演員,並且可以更換圖片, 可以接受的格式如(gif, png, jpg, bmp 等)。. 2.. StringActor:可以接受一個文字字串來當做演員,並且可以更換文 字、字型、字體大小及顏色。. 3.. ImageAudioActor:除了 ImageActor 的特性之外,還可以針對演員 做錄音的動作。. 4.. StringAudioActor:除了 StringActor 的特性之外,還可以針對演員 做錄音的動作。. 5.. AnimationActor:接受多張圖片來做一個動畫演員,並且可以設定 圖片更換的速度。. 6.. MCAnimationActor 接受多張圖片來做一個動畫演員,並且圖片的 換置是以演員接收到滑鼠按下的事件來做更換的動作。. 7.. SAnimationActor:接受一個文字字串來做文字動畫,目前提供了 四種模式:由左而右、由右而左、由上而下以及由下而上的跑馬 燈動畫。. 34.

(43) 第六節. 目前開發題型樣版元件功能介紹. 以下為目前己規劃並且開發完成之領域題型的介紹: 1.. 是非題 True/False z. 題意: 將合適的答案點選作答。. z. 功能:題型內部演員包含題目以及選項部份均可是文字、 圖片、動畫。並且均可錄製聲音。. z. 作答方式:利用點選的方式將正確的答案點選出來,當答案被 點選到的同時會 highlight。. z. 畫面展示:如下圖 24。. 圖 24 是非題畫面展示. 35.

(44) 2.. 單選 Multiple choice z. 題意: 將合適的答案點選作答。. z. 功能:題型內部演員包含題目以及選項部份均可是文字、圖 片、動畫。並且均可錄製聲音。. z. 作答方式: 利用點選的方式將正確的答案點選出來,當答案被 點選到的同時會 highlight。. z. 畫面展示:如下圖 25。. 圖 25 單選題畫面展示. 36.

(45) 3.. 多選 Multiple select z. 題意: 將合適的答案點選作答。. z. 功能:題型內部演員包含題目以及選項部份均可是文字、圖 片、動畫。並且均可錄製聲音。. z. 作答方式: 利用點選的方式將正確的答案點選出來,當答案被 點選到的同時會 highlight。. z. 畫面展示:如下圖 26。. 圖 26 多選題畫面展示. 37.

(46) 4.. 複選題 z. 題意: 將合適的答案全部均正確點選作答。. z. 功能:題型內部演員包含題目以及選項部份均可是文字、圖 片、動畫。並且均可錄製聲音。. z. 作答方式: 利用點選的方式將正確的答案點選出來,當答案被 點選到的同時會 highlight。. z. 畫面展示:如下圖 27。. 圖 27 複選題畫面展示. 38.

(47) 5.. 填充 Text Input z. 題意: 將合適的答案利用填充的方式作答。. z. 功能:題型內部演員是文字組成並且可錄製聲音。. z. 作答方式:利用填充的方式,點到橫線的部份即可以鍵入答案。. z. 畫面展示:如下圖 28。. 圖 28 填充題畫面展示. 39.

(48) 6.. 錄音 z. 題意: 將畫面上的文字利用錄音的方式錄下來。. z. 功能:題型內部演員是文字。. z. 作答方式:利用點選的方式,當點選到錄音時,便可以錄下上 方對話的內容並且按下停止來結束作答。. z. 畫面展示:如下圖 29。. 圖 29 錄音題畫面展示. 40.

(49) 7.. 聽音辨字 z. 題意: 將相互對應的利用點選的方式選起來。. z. 功能:題型內部演員包含題目以及選項部份均可是文字、圖 片、動畫。並且均可錄製聲音。. z. 作答方式:利用點選的方式來作答,點選題目可以聽取題目的 聲音檔並且在聽完題目的時候,點選答案區的答案,答案便 會被吸引過去和題目連結在一起。. z. 畫面展示:如下圖 30。. 圖 30 聽音辨字畫面展示. 41.

(50) 8.. 看圖回答問題 z. 題意: 點選題目聽題目並且點選答案作答。. z. 功能:題型內部演員包含題目以及選項部份均可是文字、圖 片、動畫。並且均可錄製聲音。. z. 作答方式:利用點選的方式作答,點選題目時題目會唸出一段 話並且依照題目的意思去選擇一個正確的答案。. z. 畫面展示:如下圖 31。. 圖 31 看圖回答問題畫面展示. 42.

(51) 9.. 選擇式填充 z. 題意: 將空格區組合成一個有意義的句子。. z. 功能:題型內部演員可以是文字。. z. 作答方式:利用拖拉的方式將一群單字組合成一個有意義的句 子。. z. 畫面展示:如下圖 32。. 圖 32 選擇式填充畫面展示. 43.

(52) 10. 連連看 Link z. 題意: 將相互對應的利用連線接起來。. z. 功能:題型內部演員包含題目以及選項部份均可是文字、圖 片、動畫。並且均可錄製聲音。. z. 作答方式:利用連線的方式將相關的演員連結在一起。. z. 畫面展示:如下圖 33。. 圖 33 連連看畫面展示. 44.

(53) 11. 配對 Match z. 題意: 將相互對應的利用拖拉的方式。. z. 功能:題型內部演員包含題目以及選項部份均可是文字、圖 片、動畫。並且均可錄製聲音。. z. 作答方式:利用拖拉的方式,發生碰撞便會相吸住重疊在一起。. z. 畫面展示:如下圖 34。. 圖 34 配對題畫面展示. 45.

(54) 12. 分類 Classification z. 題意: 將合適的分類的利用拖拉的方式。. z. 功能:題型內部演員包含題目以及選項部份均可是圖片、動 畫。並且均可錄製聲音。. z. 作答方式:利用拖拉的方式,將相同的種類放在同一個容器之 中。. z. 畫面展示:如下圖 35。. 圖 35 分類題畫面展示. 46.

(55) 13. 組合 relation z. 題意: 將合適的組合利用點選的方式拼出來。. z. 功能:題型內部演員均是一個 MCAnimation 演員,該演員為滑 鼠點選一下即會換一個不同的圖片。. z. 作答方式:利用點選的方式,將組合起來是一個有意義的組合 圖利用點選的方式組合出來。. z. 畫面展示:如下圖 36。. 圖 36 組合題畫面展示. 47.

(56) 14. 拼圖 Jigsaw z. 題意: 將利用拖拉的方式將小圖拼成大圖。. z. 功能:題型內部演員均可是文字、圖片、動畫。並且均可錄製 聲音。. z. 作答方式:利用拖拉的方式,發生碰撞便會相吸住重疊在一 起,而且完整組合起來便是一個有意義的拼圖。. z. 畫面展示:如下圖 37。. 圖 37 拼圖題畫面展示. 48.

(57) 15. 接龍 solitaire z. 題意: 將合理的順序利字拖拉接龍的方式接在一起。. z. 功能:題型內部演員包含題目以及選項部份均可是文字、圖 片、動畫。並且均可錄製聲音。. z. 作答方式:利用拖拉的方式,發生碰撞便會相吸住接在後面。. z. 畫面展示:如下圖 38。. 圖 38 接龍題畫面展示. 49.

(58) 第四章 編輯系統(ITIS) 第一節 系統概念 Muthu Ramachandran 的文章中有提及如何做領域分析及其要點,文中 提及 “Domain analysis aims to identify and design reusable components for a family of products. It also defines domain roles, process, and domain models and architecture.” (Muthu R., 2005) 意思指的是領域的分析應該要先分析並設計好元件並且定義該領域所 扮演之角色及功能並且領域的模組及架構為何,並且領域分析的重要性在 於提高元件的使用及重複使用率,使用率高則開發元件的意義及價值便顯 露出來。 而應用於題庫系統之上,我們期望可以用領域來分類,並且領域所包 含的題型元件均能被分析並且實作完成,如此一來再增加己參數化完成的 題目之後,題型編輯系統在某領域上的開發便能初步完成。如此再反覆的 開發領域、增加題型、補充題目便能充份的擴大以及增加題庫系統的範 圍。而一個涵蓋多領域以及具備有多種題型和題目的題庫系統將會被廣泛 的使用著。 題庫出題一直被廣泛的使用著,而在期望可以有視覺化的方式呈現題 目以及保有一般題庫的快速、方便、共享等優點。提出了元件化題目的方 式,一個題型即是一個樣版(template),出題的方式即是利用視覺化的參數 化方式來完成,不但簡便而且出題者不需要額外多做其它的學習。而將元 件化引入題目之中不但可以帶來更多視覺化方面的效果更可以引入互動 式的作答方法於其中。並且更可以在元件之中加入如自動判題、行為模式 紀錄以及成績建檔等功能,提高系統的完整性以及方便性,至於整個系統 架構以及系統流程的部份在下列第二三節會有完整的說明。. 50.

(59) 第二節. 系統架構. 系統架構主要分為三個部份:試卷編輯器、試卷測驗器、成績資料庫。 下圖 39 即為題目編輯系統的系統模組架構圖。. 圖 39 題目編輯系統之系統模組架構 系統架構主要分成三個部份,試卷編輯器、試卷測驗器及成績資料庫 三大部份。下列會解說各模組所負責之功能及其關係。 一. 試卷編輯器: 1.. 動態載入模組:使用 java late-binding 的技術。在 run-time 的 時候把一個己經 compiler 完成的 class 檔利用 dynamic-class-loading 的方法動態載入到 ITIS 之中。下圖 40. 51.

(60) 為動態載入模組的內部流程。. 圖 40 動態載入模組的內部流程 上圖是由 System loader 將 ITCBean 讀進來並且由 ITCBean 內 部的 mainfest 檔案裡找尋己定義好的 class。將此 class 檔利用動 態載入並且實例化成一個物件。而該物件便可以透過 class cast 的 方式 cast 成一個 component 並且加到 ITIS 的 Container 之中等 待編輯。片斷程式碼如下: URL[] us = {new URL ("file:/" + path + "/resource/jars/" + name)}; URLClassLoader loader = new URLClassLoader(us); Class c = loader.loadClass(script.readManifest(name)); Object o = c.newInstance(); 2.. 題型元件庫:連結 ITCBean 以及 Item 並且等待被選取動態載 入到 ITIS 之中。下圖 41 即為元件庫的示意圖。. 圖 41 元件庫的示意圖 題型元件庫的片斷程式碼如下:. 52.

(61) File file = new File(path + "/resource/jars/"); String jarList[] = file.list(); while (i < jarList.length) { new BeanData(file.getPath() + "/" + jarList[i], jarList[i], this); i++; } 3. 題型編輯模組:負責視覺化顯示的部份,將題型的視覺化介 面呈現出來。 4.. 屬性編輯模組:使用 java-refection 的技術與 Class Cast 的技 術,負責管理題型元件內部所定義之屬性(property),而當屬 性被改變的時候,題型編輯模組的視覺化部份也會馬上改 變。下圖 42 為屬性編輯模組內部流程。. 圖 42 屬性編輯模組內部流程 屬性編輯模組的片斷程式碼如下: Method m = pd.getWriteMethod(); Object arglist[] = new Object[1]; arglist[0] = new Integer(data); Object retobj = m.invoke(tmpJ, arglist);. 5.. 試卷閱卷模組:使用 java-refection 的技術,負責將一份己作 53.

(62) 答完畢的多媒體試卷做自動閱卷(auto marking)並且將結果送 結成績資料庫。片斷程式碼如下: Class partypes[] = new Class[0]; Method m = tmpitem.c.getMethod("result", partypes); Object arglist[] = new Object[0]; Object retobj = m.invoke(tmpitem.jp, arglist); 目前的自動閱卷機制內建有兩個方法: public int sequenceResult() public int noSequenceResult() 利用循序和非循兩種一般常用的判題方法內建在 ITCBean 內 部,而對於開發新題型開發者可以透過 override public int result() 這個方法來達到客制化的判題方式。. 6.. 網路連線模組:負責在測驗的時候,即時和試卷測驗器透過 TCP/IP 協定做連線的動作,目的為了傳送試卷以及接收答案 卷。下圖 43 為網路連線模組內部流程。. 圖 43 網路連線模組內部流程. 54.

(63) 網路連線模組的片斷程式碼如下: Socket sock = null; ObjectOutputStream out = null; ObjectInputStream in = null; SeverSocket svsock = new ServerSocket(3939, stuNum); sock = svsock.accept(); out = new ObjectOutputStream(sock.getOutputStream()); out.flush(); in = new ObjectInputStream(sock.getInputStream()); 7.. 成績管理模組:利用 SQL 指令做新增以及查詢資料庫的成績 資訊。. 二. 試卷測驗器: 1.. 播放模組:負責將接收到的多媒體試卷做完整的播放呈現。. 2.. 網路連線模組:負責和編輯器做 TCP/IP 協定的連線動作以 便取得一份多媒體試卷,並且測驗完畢回傳一份答案卷。. 三. 成績資料庫:內部儲存受測者資料以及測驗結果。. 55.

(64) 第三節. 系統流程. 題目編輯系統從出題、產生試卷、測驗、產生答案、自動閱卷、成績 建檔等步驟。如下圖 44:. 圖 44 題目編輯系統之系統流程 上圖即是系統流程圖,整個系統流程包含將一個開發好的題型元件動 態新增到資料庫之中以及將己經參數化完成的題目新增到資料庫之中,並 且試卷編輯器可以利用動態載入模組來載入題型並且做參數化編輯成題 目亦可以從資料庫之中挑選己經參數化完成的題目來編輯使用,最後存成 一份多媒體試卷描述檔案。測驗伺服器會將一份試卷利用 TCP/IP 的協定 傳給試卷測驗器,而測驗器再將描述檔案開啟來做完整的呈現其內容並且 測驗作答。而自動閱卷模組會在測驗結束時自動執行並且和編輯器做溝通 傳回結果,當編輯器收到結果之後會即時將結果寫入資料庫之中,編輯器 可以隨時藉由輸入試卷名來讀取測驗結果的相關資訊。. 56.

(65) 第五章. 實作成果與範例展示 第一節 系統開發環境. 本系統使用 Java 技術開發完成,執行系統只需在安裝有 JRE (Java Runtime Environment) 的 PC 上即可正常執行,在 TCP/IP 技術的部份 PC 必需具備有上網的功能即可正常連線。 下列為本研究系統開發個人主機配備: 中央處理器: Intel Pentium 4 3.0G HT 記憶體: Kingston 256M * 2 DDR Dual Channel 主機板: GigaByte GA-8IPE1000-G 顯示卡: ASUS NVIDIA GeForce FX 5200 音效卡: Realtek AC97 硬碟: Seagate 120G/7200 rpm IDE/8MB. 57.

(66) 第二節. 編輯系統介面介紹. 下圖 45 為編輯系統的介面介紹,編輯系統的操作介面分為以下四種: 1.. 元件庫:顯示資料庫內部的可使用的題型樣版。. 2.. 題號:在編輯的過程中,所有編輯過的題目的題號。. 3.. 編輯區域:在編輯的過程中,可以做視覺化的操作。. 4.. 屬性:在編輯的過程中,可以利用設定的方式達到屬性的改變。. 圖 45 編輯系統介面介紹. 58.

(67) 第三節. 編輯系統出題流程展示. 系統出題時可以點選動作裡的新增題型即可將一個符合格式的題型元 件動態新增到工具列上來等待被點選實例化來使用,下列一連串的展示圖 即是點選題型來出題的範例,預設會出現一個範本來表示該題型的功能。 並且在右方的屬性列可以清楚的看到該元件的屬性(property)並且可以更 改屬性,而元件提供的好處即是更改屬性之後會同步修改視覺化的部份, 而展示的即為一個接龍題型的編輯出題流程步驟如下。 1.. 選擇背景圖:. 屬性列有內建數張背景圖供選擇,並且可以自行新增背景圖插入當做 背景。如下圖 46。. 圖 46 接龍出題展示-選擇背景圖. 59.

(68) 2.. 新增演員:. 可新增的演員種類有文字、圖片、動畫等。並且演員均包含內建的錄 音、拖拉、連線等功能。如下圖 47。. 圖 47 接龍出題展示-新增演員. 60.

(69) 3.. 改變演員的屬性並且設定分數:. 演員均有內建的屬性可供改變。例:文字演員的字型、字體、字體大小 等。圖片演員的高度、寬度等。並且可在屬性列設定該題的分數。如 下圖 48。. 圖 48 接龍出題展示-改變演員的屬性並且設定分數. 61.

(70) 4.. 儲存己編輯完的題目:. 將一個己編制好的題目存成描述檔以便之後再開啟還原當初編制好的 題目供作答。如下圖 49。. 圖 49 接龍出題展示-儲存己編輯完的題目. 62.

(71) 5.. 己編輯完的題目展示:. 下圖 50 即是一個己經編制完成的接龍題目,作答者需依題目的內容將 正確的順序利用拖拉的方式連接成一個有順序的樣子。如下圖 50。. 圖 50 接龍出題展示-己編輯完的題目展示 在編輯完成之後可以儲存成一份多媒體試卷,而試卷內容是記錄著題 目的內容以及出題者所設定的答案和所使用的資源檔,詳細的描述檔案如 下列:. 63.

(72) [bgColor]=[-1250856] [fontColor]=[-65536] [fontStyle]=[標楷體;1;24] [imageWidth]=[100] [imageHeight]=[100] [score]=[5] [bgImage]=[bgrestaurant.gif] [linkLine]=[不可連線] [Answer]=[] [Image]=[0.gif;180;157;128;64;true;mode] [Image]=[1.gif;134;85;128;64;true;mode] [Image]=[2.gif;10;115;128;64;true;mode] [Image]=[3.gif;280;68;128;64;true;mode] [Image]=[4.gif;16;73;128;64;true;mode] 上列記錄著屬性(property)的設定以及題目內演員的相關資訊,多媒體 試卷被打開來使用時,這些資訊即是使視覺化的部份還原成儲存試卷時的 情況的重要根據。題目檔述檔的規則如下: 1.. Property: 利用 method call 的方法 call writeProperty ( ) 並且內 部己實作好將該 ITCBean 所屬的 property 做相對應的文字字串 轉換之後再儲存。. 2.. Actor:利用 method call 的方法 call Actor 的 saveActor ( ) 並且演 員內部己實作好該演員所必需儲存的資料並且轉換成相對應的文 字字串之後再儲存起來。. 64.

(73) 第四節. 編輯系統測驗流程展示. 下面為系統測驗流程的畫面展示 1.. 編輯系統在測驗時的圖示流程步驟: [步驟1] 輸入學生人數: 輸入受測的學生人數。如下圖 51。. 圖 51 接龍測驗展示-輸入學生人數. 65.

(74) [步驟2] 輸入考試名稱: 輸入此次測驗的名稱以便資料庫建檔使用。如下圖 52。. 圖 52 接龍測驗展示-輸入考試名稱. 66.

(75) [步驟3] 選擇測驗試卷: 選擇此次測驗欲測驗的多媒體試卷。如下圖 53。. 圖 53 接龍測驗展示-選擇測驗試卷. 67.

(76) [步驟4] 輸入測驗時間: 輸入此次測驗最長的測驗時間,時間截止時,系統會自動閱卷並 且自動收卷。如下圖 54。. 圖 54 接龍測驗展示-輸入測驗時間. 68.

(77) 2.. 受測者在測驗時的圖示流程步驟 [步驟1] 輸入伺服器 IP Address: 輸入伺服器的 IP Address 以便做 TCP/IP 連線取得試卷。如下圖 55。. 圖 55 接龍測驗展示-輸入伺服器 IP Address. 69.

(78) [步驟2] 輸入個人資料: 輸入個人資料,例:班級、座號、姓名等。在建立成績時便會將此 資料鍵入其中。如下圖 56。. 圖 56 接龍測驗展示-輸入個人資料. 70.

(79) [步驟3] 接收到試卷並且開始作答: 接收到試卷並且可以依題意開始作答。如下圖 57。. 圖 57 接龍測驗展示-接收試卷作答. 71.

(80) 3.. 測驗結束,系統自動執行判題以及回傳成績並且寫入資料庫 [步驟1] 老師按下交卷: 如下圖 58。. 圖 58 接龍測驗展示-老師按下交卷. 72.

(81) [步驟2] 學生按下交卷並且系統自動執行判題並且將結果果傳回 老師的編輯系統,秀出交卷成功畫面。如下圖 59。. 圖 59 接龍測驗展示-學生按下交卷. 73.

(82) [步驟3] 老師的編輯系統收到成績並且寫入資料庫完成,秀出全數 學生己交卷完畢畫面。如下圖 60。. 圖 60 接龍測驗展示-系統接收成績. 74.

(83) [步驟4] 老師可由編輯系統藉由輸入考試名稱來查詢該次考試的 成績表,內容包含學生的個人資料以及每一題的得分和總 分。如下圖 61。. 圖 61 接龍測驗展示-查詢成績. 75.

(84) 第六章. 結論與未來發展. 第一節 本研究貢獻 本研究定義了題型樣版元件 ITCBean 的介面規格並且開發編輯系統 ITIS 來編輯 ITCBean ,完成一個 Framework 內部的 Container and Component 的架構。ITIS 提供了動態載入的技術讓 ITCBean 可以動態加入 ITIS 之中來使用,並且可以編輯 ITCBean 組合成一份多媒體試卷。利用 TCP/IP 技術連線來完成測驗的功能並且自行定義 ITCBean 的題目描述檔 格式。目前己經開發了 15 個具有互動式的題型樣版。. 第二節 結論 元件化開發題庫系統不但保留傳統題庫系統的優點又新增多媒體介面 以及互動性的作答方法在題型之中,不但可以提昇測驗層級,並且在某種 特定領域的發揮更能琳璃盡致,而且元件化題型帶來的重用性(reuse)以及 多人共同開發共享的優點亦符合題庫系統的原意。並且新增的自動閱卷以 及成績建檔更有效的節省閱卷的時間以及未來成績分享以及分析的工 作。自行定義 ITCBean 的規格可以達到樣版規格的一致性以及多人共同開 發共享。. 第三節. 未來發展. 未來期望加入更多的互動式作答方法來提昇並且擴充功能之外,亦期 望可以開發流程控制元件(control component)來提昇整個系統的測驗方 式,並且期望演員亦能利用動態的方式加入到 ITCBean 內部來使用也期望 可以推廣 ITCBean 的規格讓更多人加入開發更多的題型樣版。. 76.

(85) 參考文獻 一、 中文部份 全民英檢 (2006),http://www.gept.org.tw/。 線上測驗服務中心 (2006),http://www.onlinetest.org/。 托福測驗 (2006),http://www.toefl.com.tw/。 托福英語測驗練習網 (2006),http://www.skylearn.com.tw/。. 77.

(86) 二、 英文部份 Bejar I. I., Lawless R. R., Morley M. E., Wagner M. E., Bennett R. E., and Revuelta J. (2003). A Feasibility Study of On-the-Fly Item Generation in Adaptive Testing, The Journal of Technology, Learning, and Assessment, vol.2, num.3. Bobeff G., Noye J. (2004). Component Specialization, Proceedings of the 2004 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation (pp.39-50). New York: ACM Press. English J. (2002). Experience with a Computer-Assisted Formal Programming Examination, The 7th Annual Conference on Innovation and Technology in Computer Science Education ITiCSE’02 ACM. Favre. J.M., Cervantes H. (2002). Visualization of Component-based Software, VISSOFT 2002, Paris, France. Forax R., Duris E., Roussel G. (2004). A Reflective Implementation of Java Multi-Methods, IEEE transactions on Software engineering, Vol. 30, NO.12. Jorgensen B. N. (2004). Language Support for Incremental Integration of Independently Developed Components In Java, 2004 ACM Symposium on Applied Computing (pp. 1316-1322). New York: ACM Press. Miki F., Chi Y.L., Wolfe P.M. (1998). JavaBean-Based Simulation with a Decision Making Bean. Proceedings of the 1998 Winter Simulation Conference. Mitchell T., Aldridge N. ,Williamson W. ,Broomhead P. . (2003). Computer Based Testing of Medical Knowledge Using Short-Answer free-Text Items, 8th International Computer Assisted Assessment (CAA) Conference. Muthu R. (2005). Automated Improvement for Component Reuse. 78.

(87) INFOCOMP Journal of Computer Science 4 (1):pp. 1-8. Patelis T. (2000). An Overview of Computer-Based Testing, Research Notes. Office of Research and Development. Roever C.(2001). Web-Based Language Testing. Language Learning & Technology, ISSN 1094-3501, p. 84-94. Schultz U. P. (1999). Black-Box Program Specialization, Department of Software Engineering and Computer Science, University of Karlskrona/Ronneby: Proceedings of WCOP’99(pp. 187). London: Springer-Verlag. Sridhar N., Hallstrom J. O. (2003). Generating Configurable Containers for Component-Based Software, Proceedings of the 6th ComponentBased Software Engineering workshop(CBSE6) at ICSE 2003. Sun Microsystem. (1997). Java Beans 1.01 Specification. (Available for download from http://java.sun.com/products/javabeans/index.jsp). Szyperski C., Pfister C. (1997). Workshop on Component-Oriented Programming, Summary. In Muhlhauser M. (ed.) Special Issues in Object-Oriented Programming – ECOOP96 Workshop Reader. Dpunkt Verlag, Heidelberg. Szyperski C. (1998). Component Software – Beyond Object-Oriented Programming. England: ADDISON WESLEY. Tambutini F. , Paci S. (2002). Web-based Language Learning: Authoring and Assessment Technologies. International Conference on Information and Communication Technologies in Education ICTE2002 (pp. 872-877). Yamamoto M. (2005). Synthesis System for Web Based Examination Generation and Marking by XML, Proceeding of the International Conference on Next Generation Web Services Pratices – NWeSP’05. Zhenming Y., Liang Z., Guohua Z. (2003). A NOVEL WEB-BASED 79.

(88) ONLINE EXAMINATION SYSTEM FOR COMPUTER SCIENCE EDUCATION, 33rd ASEE/IEEE Frontiers in Education Conference session S3F.. 80.

(89)

參考文獻

相關文件

The hashCode method for a given class can be used to test for object equality and object inequality for that class. The hashCode method is used by the java.util.SortedSet

Based on [BL], by checking the strong pseudoconvexity and the transmission conditions in a neighborhood of a fixed point at the interface, we can derive a Car- leman estimate for

It is important to allow for all students to add their ideas to the story so giving each student an area of responsibility to add to the story recipe can help prompt this. For

2.8 The principles for short-term change are building on the strengths of teachers and schools to develop incremental change, and enhancing interactive collaboration to

In view of the large quantity of information that can be obtained on the Internet and from the social media, while teachers need to develop skills in selecting suitable

which can be used (i) to test specific assumptions about the distribution of speed and accuracy in a population of test takers and (ii) to iteratively build a structural

By correcting for the speed of individual test takers, it is possible to reveal systematic differences between the items in a test, which were modeled by item discrimination and

◦ Lack of fit of the data regarding the posterior predictive distribution can be measured by the tail-area probability, or p-value of the test quantity. ◦ It is commonly computed