• 沒有找到結果。

第二章 需求分析

2.6 小結

批改系統將 過瀏覽透 器提供 形介面 所有使用者操作,因此架圖 給 設 1個網頁伺服器以及實 作相 的 展模 是必要的工作,而 了方面管理 些作 、 生、教 人 的 料,也需要關 擴 組 為 這 業 學 學 員 資 架設 1個資 庫料 伺服器。接著, 生的學 個別寫 權作 限申請訊息,若只有出 在系 中,有可能現 統

因 教 人 有每天登入系 而 失了回覆的 ,所以另外架

會 為 學 員沒 統 錯 時間點 設 1個電 郵子 件伺服器,

系 主 通知使用者。最後,考 批改系 的共 性和安全性

讓 統 動 慮 統 時 議題(Forišek, 2006),將執行

生程式的工作分散到

學 10 台 立的 器上,在不互相干 的 境下,即使有人 交了含有獨 機 擾 環 繳 惡 意功能或是 度消耗 算 源的程式,也不至於造成整 系 停 。此過 計 資 個 統 擺 節 必 要 作的使用將 須 實 者功能與對應的技 支援呈 如表 術 現 6。

20

表 6. 使用者功能 技 支援與 術 對應表 Administrator Initialize Tables in Database v v

Student

Apply for Extending Deadlines of Lab

Assignment v v v

Submit Lab Assignments and View

Results v v v

View Scores and Source Codes

Submitted v v

Change Personal Password v v

 Student

 Faculty Sign-In Sheets v v

Faculty

Manage Commands for Executing

Judge Scripts v v

Assign Lab Assignments v v Set Time for Displaying, Closing, and

Backing up a Lab Assignment v v v Ratify Applications from Students to

Expend Deadlines of Lab Assignments v v v View and Download Score Sheets v v

View and Download Score Sheets v v

Rejudge Lab Assignments v v v

Manage Student List v v Changes Personal Password v v

doi:10.6342/NTU201701661

第三章 系 統設計 與實 作

3.1 系 概述 統

本系 是由統 1個網頁伺服器及其擴展模組,1個資 庫料 伺服器,多支守護進程所 成。批組 改系 以統 網 的形式頁 提供 上指派和批改程式作 的 形操作功能。 料 主要用線 業 圖 資 庫 來儲存作業 的解答程式和 生提交的程式。守學 護進 會 資 庫程 向 料 伺服端 取批改 本, 到批改擷 腳 達 作 的目業 的如 圖 2。本研究所有原始 均存放於碼 TAFree開 組織源 ,其中第三章所提到的網頁擴展模組 實作於TAFree1.0 案,而守專 護進 實程 作於Ghassho 案專 ,上述 案 址專 網 詳見 錄附 。

22

圖 2. 系 架統 構圖

3.2 系 架 統 構

系 元件 批改作 作方式呈 如

將 統 與 業運 現 圖 3與圖 4, 使系為 統適用於不同的 目 型,本題 類 研究特別將批改作 的核心程式抽業 離網頁擴展模 ,組 讓佈題時期才能得知的 目要求所題 對應的 程式邏輯實作於批改 本,也就是 一道腳 說 練習題如何被系 批改 定於教 人 在批改系統 決 學 員 統佈 署 目 才 上 的批改 本 案。此題 時 會 傳 腳 檔 節僅說明已 被 署於某道 目的批改 本何 被其他經 佈 題 腳 時 系 元件統 觸發,而觸發之後的工作 容至第四章再解 。內 釋

圖 3. 系 元件 作方式示意統 運 圖

doi:10.6342/NTU201701661 24

圖 4. 守護進程工作流程圖

1) 系 元件統

1-1) 網頁伺服器及其 展模 :擴 組 網頁伺服器及其 展模 提供 站管理 、教 人 、擴 組 網 員 學 員 學 生操作 形化界面的功能,圖 將資料上 至 料 。傳 資 庫

1-2) 料 伺服器: 料 用於 存每 作 之教 人 上 的解答程式及 生 交的程資 庫 資 庫 儲 項 業 學 員 傳 學 繳 式。

1-3) 守護進程:如 圖 4, 了為 讓執行每個學生的程式所使用的 算 源一致且不互相影計 資 響,

一支守護進程常 於一駐 個獨立的作 系 ,每支守業 統 護進 間程 隔一秒向 料資 庫詢問,是否有 生學

交程式尚未被批改。若 有,就等一秒再 一次;若有,就 取 作 目子 的批改

繳 沒 尋問 擷 該 業項 題 腳

本作為這個 護進守 程的子 程,完成子 程後,等一秒再進 進 尋問一次,重 上述步 。複 驟

1-4) 批改 本:批改 本是由教 人 於指派作腳 腳 學 員 業時 傳上 ,因此每 作個 業項目子 都可以題

有自己的批改 本,也就是 本系 的架 於每 作 目子 能 搭配不同的批改作

擁 腳 說 統 構對 個 業項 題 夠 業

步 或驟 準則 這, 正是本研究 其他自 化程式作 批改工具不同之所在,與 動 業 詳細內容至第四章解 說。

doi:10.6342/NTU201701661

3.3 功能設計

站管理 的所有功能示意如

將網 員 圖 5、教 人 的所有功能示意如 學 員 圖 6、 生的所有功學 能示意如 圖 7。

圖 5. 站管理 功能示意網 員 圖

圖 6. 教 人 功能示意學 員 圖

doi:10.6342/NTU201701661 28

圖 7. 生功能示意學 圖

1) 站管理網 員

1-1) 初始化 料 :在 期 始前, 站管理 必 先登資 庫 學 開 網 員 須 錄學生和教 人 的學 員 帳號 碼密 以 及作業總 數次 ,以初始化 料 的表格。其中, 有 生 料可以在 期中 教 人 做增資 庫 僅 學 資 學 讓 學 員 減 或修改。初始化工作會遺失之前的 料,資 這個動作一 期只需要做一次。學

2) 教 人學 員

2-1) 增減學生名 :此是因單 應學期初及 期中的 程加退學 課 選機制。

2-2) 上 到:正常情 下, 生必 在 作 堂中完成每次的線 簽 況 學 須 實 課 習題。因此需要由教 人學

於 堂中 定 到 面 生 到後,系 才 放本次作 的作答 限 出席者。

員 課 設 簽 頁 讓學 簽 統 會開 業 權 給 這個設

定包含三個時間點:

2-2-1) 作業頁面出現時間(Show Up Time): 於 次作 的唯一 料。屬 該 業 資

2-2-2) 作業頁 關閉時間(Close Up Time): 於 位 生於 次作 的唯一 料。面 屬 該 學 該 業 資 2-2-3) 作 成業 績備 時間(Back Up Time): 於 次作 的唯一 料。份 屬 該 業 資

「作業頁面出現時間 及「作 成」 業 績備 時間 是教 人份 」 學 員設 (Setup) 下就更新 料,定 當 資

「作業頁 關閉時間」要由 生出席 堂自行面 學 課 點選出席 位欄 (Present)才 更新,如 會 圖 8 和 圖 9 所示,其中 圖 9 涉 生 人 料的部份以色牽 學 個 資 塊圖遮住。

doi:10.6342/NTU201701661 30

圖 9. 生 上 到 面學 線 簽 頁 圖 8. 作業時 設 頁程 定 面

每個學 獲生 得自己的該項 業頁 關閉時間作 面 才有作答的 限,權 將學生是否能夠進 該項入 作 作答的判 流程表示

業 別 如 圖 10。

圖 10. 作 限判 流程寫 權 別 圖

doi:10.6342/NTU201701661 2-3) 回覆作答 限之申 :具有正 理由欲延 作答權 請 當 長 時間 學的 生可以透 申 得到不同於過 請 出席者的作頁頁 關閉時間面 。每 有 生申 ,教 人 便 收到一封 自系 的提醒信件,當 學 請 學 員 會 來 統 接著 入系 挑 一 合 的作答期限,以拒 或允進 統 選 個 適 絕 許這個 請申 。常用於 假或是第一請 週選課 期間衝堂未到的 生。學

2-4) 指派作 :每次的作業 業項目至少有一 子 ,每 子 包含 目 述 案、提示、批個 題 個 題 題 敘 檔 改 本 案、 支解答程式、腳 檔 幾 幾筆測試資料。針對每支解答程式 有三 填 模式,分碼 種 寫 別為: 行、段落、全空; 有還 兩種遮蔽模式 : 住、模糊;如為 鎖 圖 11 和 圖 12 所示。

32

圖 11. 填 模式寫

2-5) 增批改 本支援 型:由於每 使用系 的教 人 熟悉的程式 言不一定一 ,擴 腳 類 個 統 學 員 語 樣 所以批改 本可能由任意的程式 成。 此,系 可以上 或移除常用的批改 本 案,以腳 構 為 統 傳 腳 檔 及新增或移除 行批改 本的命令和及其執 腳 選項。

圖 12. 遮蔽模式

doi:10.6342/NTU201701661

3) 生學

3-1) 上 到:線 簽 這個簽 頁到 面需由教 人 身份登入系學 員 統開啟,正常情 下, 生要 自況 學 親 到 堂中找教 人課 學 員開啟簽 頁到 面,勾 自己已出席。選

3-2) 申 作答 限:具有正 理由 法到 堂中作答的 生可以事前或事後申 延 某請 權 當 無 課 學 請 長 次作 的作業 業頁 關閉時間 並面 , 等待教 人 的回覆 果。學 員 結

3-3) 交作 :在本次作繳 業 業開 時 內放 限 ,依 每 子 的填 模式作答據 個 題 寫 並繳交。

3-4) 看作答 果:作答 果分 即 回 及最觀 結 結 為 時 傳 終紀錄。

3-4-1)即 回 :每次的 交 回時 傳 繳 會 傳當下的批改狀態和所有的測試結果,此由批改腳 本自行定 。義

3-4-2)最終紀錄: 生學 隨時都可以去看最 一 提交的程式 及批改終 筆 碼 狀態。 3-5)更改密 : 生可以改 登入密 。碼 學 變 碼

doi:10.6342/NTU201701661

3.4 操作流程

1) 總體使用流程概述

系 之主要工作流程統 為網站管理 初始化 料 、教 人 指派 目、 生 到員 資 庫 學 員 題 學 簽 (或 假請 )、

生 交程式、系 自 寄送成 。 系 被初始化之後,後 的工作便以每 一 作 目

學 繳 統 動 績 當 統 續 週 個 業項

循 。環

2) 生作答 限 放流程學 權 開

系 以每 作統 個 業項 為單 檢 學目 位 查 生的作答 限, 生一共有權 學 兩種方式可以 交某次作繳 業 目中的所有子 ,如

項 題 圖 13。

36

圖 13. 生作答 限 放流程學 權 開 圖

doi:10.6342/NTU201701661 2-1) 上 到流程:助教於每次 堂的一 始, 定本次線 簽 課 開 設 作業頁面出現時間、作業頁 關面

圖 14. 教 人 答覆申 流程學 員38 請 圖

2-2) 申 作答 限流程:如 請 權 圖 13與圖 14, 法出席 堂或是有出席但是 法在 堂無 課 無 課 時間 完成本次作 所有子 的 生,他 可以

內 業 題 學 們 Login 系 、統 連進 Mail、選擇無法完成的作業項 、目 下 法完成的理由、挑 期待的作 面

寫 無 選 業頁 關閉時間(通常是晚於助教所 定的作設 業頁 關閉時面

間)、點擊 Apply 。這時 統會 動系 自 寄一封提醒的信件 所有教 人 ,其中一位教 人 再給 學 員 學 員 Login 系 、統 連進 Mail、 考 生期待的參 學 時間再自行挑選願意延 的作長 業頁 關閉時間 選擇贊面 、 同或拒 申 、絕 請 點擊 Ratify。這時 統會 動系 自 寄一封提醒的信件 那位 生,若是申 同意,給 學 請

生就可以 交作 直到新的作 面 ,若是不同意,教 人 的回覆 也

學 繼續繳 業 業頁 關閉時間 學 員 紀錄 會

留在那位 生的學 Mail。 圖 15 是某 生的學 Mail, 示著他的所有申顯 請紀錄 圖 9 名 被 框。 單 紅 所遮蔽者,可以發現該位同 的作學 業頁 關閉時間 顯與面 明 其他人不同,因 他是 期第二 才為 學 週 加簽進本班,像這種就是 於透 「申 作答 限流程」而延 作答屬 過 請 權 長 時間的人。

至少完成上述其中一 流程的 生,系種 學 統會 別 圖 10 定要不要 放他判 如 決 開 們進 該 業去 作 目的所有子 作答。

項 題

doi:10.6342/NTU201701661 40

圖 15. 生申 作答 限 面學 請 權 頁

3) 教 人學 員佈題流程

doi:10.6342/NTU201701661 圖 16. 教 人學 員佈題流程圖

42

圖 17. 教 人 作學 員 業設定流程

doi:10.6342/NTU201701661

第四章 批改 本 腳 設計 與實 作

4.1 批改 本支援 明 腳 說

由於一 批改系 可能由個 統 1 人以上的助教所管理,每 助教 用的程式 言可能不一個 慣 語 樣,

所以本系 可以搭配任何程式 言所統 語 構寫的批改 本,在本系 上腳 統 對應 設的 定方式如3.3 教學 人 的員 擴增批改 本支援 型所述, 且,因 批改 本是守腳 類 並 為 腳 護進程的子 程,所以在每支守進

程的 立 境中,也必 事先安 可支援的 器或直 器及相 函式 。

護進 獨 環 須 裝 編譯 譯 關 庫

批改 本主要腳 負責連 資 庫 擷 學 繳接 料 , 取 生 交程式及解答程式, 行 者後,比執 兩 對輸 結出

批改 本主要腳 負責連 資 庫 擷 學 繳接 料 , 取 生 交程式及解答程式, 行 者後,比執 兩 對輸 結出

相關文件