畢業(yè)論文(Web模式下基于數(shù)據(jù)庫(kù)組卷模塊設(shè)計(jì)).doc_第1頁(yè)
畢業(yè)論文(Web模式下基于數(shù)據(jù)庫(kù)組卷模塊設(shè)計(jì)).doc_第2頁(yè)
畢業(yè)論文(Web模式下基于數(shù)據(jù)庫(kù)組卷模塊設(shè)計(jì)).doc_第3頁(yè)
畢業(yè)論文(Web模式下基于數(shù)據(jù)庫(kù)組卷模塊設(shè)計(jì)).doc_第4頁(yè)
畢業(yè)論文(Web模式下基于數(shù)據(jù)庫(kù)組卷模塊設(shè)計(jì)).doc_第5頁(yè)
已閱讀5頁(yè),還剩28頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

本本科科畢畢業(yè)業(yè)論論文文 設(shè)設(shè)計(jì)計(jì) 征心系統(tǒng)設(shè)計(jì)征心系統(tǒng)設(shè)計(jì) 學(xué)生姓名學(xué)生姓名 劉智 曹高帆 梁亮 林松濤 XXX 學(xué)號(hào)學(xué)號(hào) 091542228 091542226 091542237 091542227 系部系部 計(jì)算機(jī)科學(xué)與技術(shù) 專業(yè)專業(yè) 信息管理與信息系統(tǒng) 指導(dǎo)教師指導(dǎo)教師 鐘雪靈 提交日期提交日期 2012 年 06 月 25 日 2008 JX16 廣東金廣東金 融學(xué)院融學(xué)院 注 教師姓名后留有 一個(gè)空格 后面填寫 教師職稱 下面加下 劃線 閱后刪除此文本框 摘摘 要要 隨著高??荚囍贫雀母锏牟粩嗌罨熬W(wǎng)絡(luò)技術(shù)的飛速發(fā)展 試題庫(kù)管理系 統(tǒng)越來(lái)越受到廣大高校和教師的青睞 試題庫(kù)管理系統(tǒng)的主要功能包括試題管 理和試卷管理 其中試卷管理的核心是試卷生成 試卷生成具有手工組卷和自 動(dòng)組卷兩種方式 自動(dòng)組卷是在已有題庫(kù)的基礎(chǔ)上 按照考核目的 在若干預(yù) 設(shè)的條件下 按一定算法生成一份滿足要求的試卷 本文在認(rèn)真分析和總結(jié)現(xiàn)有各類試題庫(kù)系統(tǒng)優(yōu)點(diǎn)和不足的基礎(chǔ)上 根據(jù)廣 東省精品課程規(guī)范在網(wǎng)絡(luò)課程方法的基本精神 設(shè)計(jì)并實(shí)現(xiàn)了基于B S 模式的 Web 試題庫(kù)組卷系統(tǒng) 同時(shí) 為提高系統(tǒng)的運(yùn)行效率 試題庫(kù)系統(tǒng)采用LINQ TO SQL操作數(shù)據(jù)庫(kù) 引入遺傳算法的全局優(yōu)化功能 在預(yù)先給定的約束條件下 正 確 高效地組卷 并采用微軟的Silverlight技術(shù)在網(wǎng)頁(yè)中顯示出來(lái) 關(guān)鍵詞 自動(dòng)組卷 題庫(kù)管理 Silverlight LINQ Web AbstractAbstract Along with the university examination system reform unceasing deepening and the networking rapid development tries the question bank management system more and more to receive the general universities and teacher s favor Tries the question bank management system the main function including the test question management and the examination paper management in which examination paper management core is the examination paper production The examination paper production has the hand work team or group volume and the automatic group volume two ways the automatic group volume was in had in the question bank foundation according to inspection goal in if intervened under the condition which supposed produced one according to certain algorithm to satisfy the request the examination paper This article is analyzing earnestly with the summary existing each kind tries in the question bank system merit and the insufficient foundation according to the Guangdong Province high quality goods curriculum standard in the network curriculum method basic spirit designed and realizes has tried the question bank group volume system based on B S pattern Web At the same time for enhances the system the operating efficiency tries the question bank system to use LINQ TO the SQL operation database the introduction genetic algorithm global optimization function in assigns in advance under constraint condition correct highly effective group volume and uses Microsoft s Silverlight technology to demonstrate in the homepage Key Words Automatic test paper Question Bank Management Silverlight LINQ Web 目目 錄錄 摘摘 要要 I Abstract II 1 1 緒論 緒論 1 1 1 課題的研究背景和意義 1 1 2 國(guó)內(nèi)外研究現(xiàn)狀 1 1 3 選題研究?jī)?nèi)容 2 2 2 需求分析 需求分析 2 2 1 功能分析 2 2 2 技術(shù)分析 3 3 3 總體設(shè)計(jì)總體設(shè)計(jì) 4 3 1 系統(tǒng)的功能模塊 4 3 2 主要模塊基本流程圖 4 3 2 1 組卷模塊 4 3 2 2 試題管理模塊 5 3 2 3 試卷管理模塊 5 3 3 系統(tǒng)功能描述 6 3 3 1 登錄模塊 6 3 3 2 系統(tǒng)管理模塊 6 3 3 3 考點(diǎn)管理模塊 6 3 3 4 試題管理模塊 6 3 3 5 組卷管理模塊 6 3 3 6 用戶操作模塊 7 3 4 數(shù)據(jù)庫(kù)設(shè)計(jì) 7 3 4 1 用戶表設(shè)計(jì) 7 3 4 2 角色表設(shè)計(jì) 8 3 4 3 用戶角色表設(shè)計(jì) 8 3 4 4 權(quán)限表設(shè)計(jì) 9 3 4 5 角色權(quán)限表設(shè)計(jì) 9 3 4 6 知識(shí)點(diǎn)表設(shè)計(jì) 9 3 4 7 試題表設(shè)計(jì) 9 3 4 8 試卷表設(shè)計(jì) 10 3 4 9 題型表設(shè)計(jì) 11 3 4 10 試題操作記錄表設(shè)計(jì) 11 4 4 詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)詳細(xì)設(shè)計(jì)與實(shí)現(xiàn) 12 4 1 開(kāi)發(fā)環(huán)境及技術(shù)選擇 12 4 2 系統(tǒng)架構(gòu) 13 4 3 主要功能設(shè)計(jì)與實(shí)現(xiàn) 14 4 3 1 試題添加功能 14 4 3 2 試題修改刪除功能 15 4 3 3 自動(dòng)組卷功能 15 4 3 4 手工組卷功能 17 5 5 畢業(yè)設(shè)計(jì)心得與收獲畢業(yè)設(shè)計(jì)心得與收獲 17 參考文獻(xiàn)參考文獻(xiàn) 19 致致 謝謝 20 附錄附錄 系統(tǒng)使用說(shuō)明系統(tǒng)使用說(shuō)明 21 WebWeb 模式下基于數(shù)據(jù)庫(kù)的組卷模塊設(shè)計(jì)模式下基于數(shù)據(jù)庫(kù)的組卷模塊設(shè)計(jì) 1 1 緒論 緒論 1 1 課題的研究背景和意義 一直以來(lái) 我國(guó)高校和社會(huì)上的各種考試大都采用傳統(tǒng)的人工出卷方式 顯然 人工出卷存在著種種弊端 譬如自教自考 所考的知識(shí)點(diǎn)不全面 考前漏題等 同時(shí) 試卷的編輯 整理占了很大的工作量 造成了很大的時(shí)間和人力資源浪費(fèi) 隨著考試 制度改革的不斷深化和網(wǎng)絡(luò)技術(shù)的逐步完善 用 Web 試題庫(kù)系統(tǒng)代替?zhèn)鹘y(tǒng)的人工出 卷方式 已成為高校和社會(huì)上各種考試發(fā)展的趨勢(shì) 當(dāng)前 很多研究人員進(jìn)行了試題 庫(kù)組卷系統(tǒng)的研究 也開(kāi)發(fā)出了不少組卷系統(tǒng) 促進(jìn)了試題庫(kù)組卷系統(tǒng)的發(fā)展 然而 目前的試題庫(kù)組卷系統(tǒng)仍存在著一些普遍的問(wèn)題 如性能分析功能不強(qiáng) 組卷速度慢 試題的公式及圖片錄入往往需要專業(yè)人員的操作才能完成 極大的阻礙了智能組卷 系統(tǒng)的發(fā)展 針對(duì)當(dāng)前系統(tǒng)的開(kāi)發(fā)現(xiàn)狀和不足 本文設(shè)計(jì)了一個(gè) Web 模式下基于數(shù) 據(jù)庫(kù)的組卷系統(tǒng) 該系統(tǒng)是結(jié)合 Silverlight 和 LINQ 技術(shù)開(kāi)發(fā)的 Web 應(yīng)用程序 與其 他系統(tǒng)相比 本系統(tǒng)有很多明顯的優(yōu)點(diǎn) 一是系統(tǒng)具有擴(kuò)展性強(qiáng)的特點(diǎn) 不需要修改程 序代碼即可適用于其他科目 二是系統(tǒng)采用微軟最新的 RIA 技術(shù) Siverlight 達(dá)到一 個(gè)豐富的媒體體驗(yàn)和交互式應(yīng)用 三是同時(shí)支持自動(dòng)組卷和手工組卷兩種方式 用戶 可根據(jù)需要自行選擇 同時(shí) 系統(tǒng)還具有完善的用戶 角色權(quán)限的管理功能 以確保 試題庫(kù)的安全運(yùn)行 1 2 國(guó)內(nèi)外研究現(xiàn)狀 國(guó)外對(duì)題庫(kù)系統(tǒng)的設(shè)計(jì)做過(guò)比較詳盡的研究和探討 早在 1968 年 IBM 公司和美 國(guó)洛杉磯學(xué)區(qū)共同開(kāi)發(fā)的一個(gè) CTSS Classroom Teacher Supporting System CTSS 系統(tǒng)最初用于管理一個(gè)美國(guó)歷史題庫(kù) 后來(lái) 加利福尼亞州開(kāi)發(fā)了一個(gè)稱為 SOCRATEB CATC 系統(tǒng) 專為加利福尼亞州 19 個(gè)州立大學(xué)中的 1 6 萬(wàn)名教師和 29 萬(wàn)學(xué)生服務(wù) 隨 后 題庫(kù)系統(tǒng)的研究發(fā)展迅猛 研究也逐漸深入 歷經(jīng) 40 余年的發(fā)展 國(guó)外許多大 型教育機(jī)構(gòu) 地方教育部門 高等院校以及工業(yè)和專業(yè)資格認(rèn)證機(jī)構(gòu)都對(duì)題庫(kù)構(gòu)建 試卷編制等進(jìn)行過(guò)各種研究 目前 題庫(kù)系統(tǒng)已經(jīng)在國(guó)外得到了廣泛的應(yīng)用 最近幾年 我國(guó)的題庫(kù)研究和應(yīng)用發(fā)展活躍 華東師范大學(xué) 北京師范大學(xué) 江 西師范大學(xué)等高校都有人在進(jìn)行教育測(cè)量理論應(yīng)用于題庫(kù)建設(shè)方面的研究 北京師大 電子系完成的七五科技攻關(guān)項(xiàng)目中的子項(xiàng)目 通用試題庫(kù)生成系統(tǒng)的研究 通過(guò)由機(jī) 電部組織的技術(shù)鑒定 清華大學(xué)和北京理工大學(xué)分別主持完成了高校工科 大學(xué)物理 和 高等數(shù)學(xué) 兩門課程的試題庫(kù)系統(tǒng) 另外 隨著計(jì)算機(jī)在國(guó)內(nèi)普及和應(yīng)用 題庫(kù) 系統(tǒng)在我國(guó)的應(yīng)用也越來(lái)越廣泛 很多地方和高校結(jié)合自身的需求 紛紛建立自己試 題庫(kù) 題庫(kù)系統(tǒng)的研究已經(jīng)成為近年來(lái)教育系統(tǒng)中一個(gè)十分引人注目的課題 雖然目前存在很多試題庫(kù)管理系統(tǒng) 但其中仍存在不少問(wèn)題 這些問(wèn)題主要表現(xiàn) 在以下幾個(gè)方面 1 自動(dòng)組卷速度慢 究其原因是組卷策略不恰當(dāng) 有些試題庫(kù)為了設(shè)計(jì)簡(jiǎn)單 而選取了隨機(jī)抽取法或回溯試探法 然而這兩種算法都存在較大的缺陷 組卷的效率 和質(zhì)量都很難令用戶滿意 所以必須尋求另外的解決方案 2 系統(tǒng)的通用性差 很多試題庫(kù)管理系統(tǒng)只是面向個(gè)別學(xué)科或者某些公共學(xué) 科 若要適應(yīng)其他學(xué)科則必須經(jīng)過(guò)比較大的改動(dòng)或者根本行不通 3 很多試題庫(kù)管理系統(tǒng)為 C S 模式甚至是單機(jī)版 用戶若要使用試題庫(kù)則必 須安裝相應(yīng)的軟件 無(wú)論是對(duì)用戶的使用或者系統(tǒng)的更改或升級(jí)都是很不方便的 4 組卷模式單一 在眾多試題庫(kù)系統(tǒng)中 有不少是只支持手工組卷或者是自 動(dòng)組卷后不能修改的 這給用戶的選擇比較少 而且也不靈活 1 3 選題研究?jī)?nèi)容 本課題研究的系統(tǒng)主要面向教師 目的旨在設(shè)計(jì)一個(gè)在 B S 模式下 基于數(shù)據(jù)庫(kù) 能夠在線管理題庫(kù)并能采用某種組卷策略從數(shù)據(jù)庫(kù)里抽取適當(dāng)?shù)脑囶}并組成一份試卷 最后在網(wǎng)頁(yè)上顯示出來(lái)的系統(tǒng) 2 2 需求分析 需求分析 2 1 功能分析 根據(jù)用戶的使用需求 本系統(tǒng)的主要功能有 1 教師可以選擇手工組卷或者自動(dòng)組卷 在自動(dòng)組卷方面 教師只要輸入試卷 的一些約束條件即可進(jìn)行自動(dòng)組卷 為了保證組卷的高效性和正確性 必須采用適當(dāng) 的組卷算法進(jìn)行組卷 對(duì)于手動(dòng)組卷 則要做到用戶能夠方便的選擇試題 2 試題管理 試題管理主要體現(xiàn)在試題的增刪改查 在試題錄入方面 系統(tǒng)為 不同的題型提供不同的模板 用戶只須根據(jù)提示錄入相應(yīng)的題目?jī)?nèi)容即可把題目添加 到數(shù)據(jù)庫(kù) 試題的修改和刪除均建立在試題的檢索之上 用戶可根據(jù)條件查詢出相應(yīng) 的試題 然后根據(jù)需要修改或刪除試題 3 組卷模塊通用性 通用性同樣是組卷模塊要解決的一個(gè)重要問(wèn)題 系統(tǒng)應(yīng)該 不經(jīng)修改或稍加修改即可得到很好的擴(kuò)展已適應(yīng)不同科目的要求 以保證使用價(jià)值 同時(shí) 也要能非常方便的嵌入到其他考試系統(tǒng)中 4 用戶的角色權(quán)限管理 系統(tǒng)采用了基本的權(quán)限管理機(jī)制 每個(gè)用戶都屬于某 個(gè)角色 每個(gè)角色會(huì)擁有對(duì)試題的若干權(quán)限 以保障系統(tǒng)的信息安全 5 試卷的顯示 用戶可以預(yù)覽當(dāng)前生成的試卷或者已保存的試卷 2 2 技術(shù)分析 本系統(tǒng)的開(kāi)發(fā)環(huán)境為 Windows 7 Microsoft Visual Studio 2008 Microsoft Expression Blend3 Microsoft SQL Server 2005 這在本文的總體設(shè)計(jì)和詳細(xì)設(shè)計(jì) 中會(huì)有詳細(xì)介紹 題庫(kù)系統(tǒng)在構(gòu)建過(guò)程中需要解決一些問(wèn)題 例如 自動(dòng)組卷的算法選擇 算法的 選擇決定組卷的效率和質(zhì)量 隨機(jī)組卷法和回溯試探法是目前使用比較多的兩種 但 這兩種算法都有很大的缺陷 隨機(jī)選取法是利用計(jì)算機(jī)提供的隨機(jī)函數(shù)或隨機(jī)量 根 據(jù)組卷狀態(tài)空間的約束條件 不斷抽取符合約束條件的試題放入試卷中 直到組卷成 功 或再也無(wú)法從題庫(kù)中抽取滿足控制指標(biāo)的試題為止 這種算法對(duì)于單個(gè)實(shí)體的抽 取速度快 但對(duì)于整個(gè)組卷過(guò)程來(lái)說(shuō)組卷成功率較低 花費(fèi)時(shí)間長(zhǎng) 回溯試探法是將 隨機(jī)選取法產(chǎn)生的每一狀態(tài)都記錄下來(lái) 當(dāng)搜索失敗時(shí)釋放上次記錄的類型 然后再 依據(jù)一定的規(guī)律 正是這種規(guī)律破壞了選取試題的隨機(jī)性 變換一種新的狀態(tài)類型進(jìn)行 試探 通過(guò)不斷的回溯試探直到試卷生成完畢或退回出發(fā)點(diǎn)為止 對(duì)于狀態(tài)類型和出 題量都較小的題庫(kù)系統(tǒng)而言 組卷成功率較好 但是在實(shí)際到一個(gè)應(yīng)用時(shí)發(fā)現(xiàn)這種算 法對(duì)內(nèi)存的占用量大 程序結(jié)構(gòu)相對(duì)比較復(fù)雜 而且選取試題缺乏隨機(jī)性 組卷時(shí)間 長(zhǎng) 因此它不是一種很好的用來(lái)自動(dòng)組卷的算法 對(duì)于這些缺陷 用戶通常是無(wú)法接 受的 基于上述分析 本系統(tǒng)采用了當(dāng)今公認(rèn)比較好的組卷算法 遺傳算法 遺傳算 法是一種模擬自然選擇和自然遺傳機(jī)制的隨機(jī)優(yōu)化算法 其具有并行性 通用性 自 適應(yīng)性 全局優(yōu)化性和收斂速度快的特點(diǎn) 3 3 總體設(shè)計(jì)總體設(shè)計(jì) 3 1 系統(tǒng)的功能模塊 系統(tǒng)功能如圖 3 1 所示 試 題 庫(kù) 管 理 系 統(tǒng) 系統(tǒng)登錄 系統(tǒng)管理 試題管理 組卷管理 用戶操作 用戶管理 考點(diǎn)管理 新增用戶 角色管理 權(quán)限管理 考點(diǎn)新增修改 試題添加 試題修改 試題刪除 試題檢索 自動(dòng)組卷 修改密碼 單選題 多選題 填空題 簡(jiǎn)答題 論述題 上機(jī)題 手工組卷 試卷管理 注銷 登出系統(tǒng) 圖 3 1 系統(tǒng)功能模塊圖 3 2 主要模塊基本流程圖 系統(tǒng)的主要模塊為組卷模塊 試題管理模塊 試卷管理模塊 這幾個(gè)模塊的流程 圖如下所示 3 2 1 組卷模塊 組卷模塊的基本流程圖如圖 3 2 所示 圖 3 2 組卷模塊流程圖 3 2 2 試題管理模塊 試題管理基本流程如圖 3 3 所示 圖 3 3 試題管理基本流程圖 3 2 3 試卷管理模塊 試卷管理基本流程如圖 3 4 所示 Y N 登 錄 試卷管理 自動(dòng)組卷 手動(dòng)組卷加載題目 輸入試卷屬性 選擇題目 設(shè)置題型分 數(shù) 注 自動(dòng)組卷失敗是指有一個(gè)或多個(gè)約束條件不能滿足 預(yù)覽 保存試卷 自動(dòng)組卷 開(kāi)始 成 功 N Y 登 錄 試題管理 檢索試題 添加試題輸入屬性保存試題 輸入條件 存在試題 修改刪除 圖 3 4 試卷管理基本流程圖 3 3 系統(tǒng)功能描述 如圖 3 1 所示 交互式題庫(kù)系統(tǒng)包括以下幾個(gè)功能模塊 3 3 1 登錄模塊 用戶必須登錄后才能使用系統(tǒng)的功能 題庫(kù)系統(tǒng)為用戶設(shè)立賬號(hào) 以確保題庫(kù)系 統(tǒng)的安全性 3 3 2 系統(tǒng)管理模塊 系統(tǒng)管理模塊主要管理用戶的角色權(quán)限 每個(gè)用戶都屬于某個(gè)角色 每個(gè)角色都 有若干權(quán)限 管理員可以新增或者刪除角色 或者更改角色的權(quán)限 以達(dá)到用戶權(quán)限 的高效 統(tǒng)一管理 此模塊只有管理員能夠進(jìn)入操作 3 3 3 考點(diǎn)管理模塊 用戶可以新增或者更改考點(diǎn) 3 3 4 試題管理模塊 試題管理模塊主要是試題增刪改查的實(shí)現(xiàn) 新增試題方面 系統(tǒng)為六種題型 即 單選 多選 填空 簡(jiǎn)答 論述 上機(jī)操作 提供不同的模板 錄入時(shí)只需輸入與題 目有關(guān)的必要內(nèi)容即可把題目保存到數(shù)據(jù)庫(kù) 試題檢索方面 系統(tǒng)為用戶提供了多個(gè) 條件的篩選 用戶根據(jù)某個(gè)條件或多個(gè)條件的組合來(lái)檢索試題 試題檢索完成后 用 戶可以根據(jù)需要修改或者刪除題目 3 3 5 組卷管理模塊 組卷模塊是系統(tǒng)的核心功能模塊 用戶可以選擇手工組卷和自動(dòng)組卷 手工組卷 的目的是為了更好的定制試卷 而自動(dòng)組卷則是只要用戶輸入必要的限制條件 系統(tǒng) 就會(huì)自動(dòng)組合出滿足條件的試卷 自動(dòng)組卷完成后 用戶還可以更改個(gè)別試題 試卷 的修改和刪除和試題管理的設(shè)計(jì)類似 都須先查詢出相應(yīng)的試卷然后進(jìn)行修改刪除操 N Y 登 錄 試卷管理檢索試卷 卷 輸入條件 存在試卷 修改刪除 作 3 3 6 用戶操作模塊 用戶可在此模塊修改賬號(hào)密碼以及相關(guān)的個(gè)人信息 3 4 數(shù)據(jù)庫(kù)設(shè)計(jì) 本系統(tǒng)使用 Microsoft SQL Server 2005 作為后臺(tái)數(shù)據(jù)庫(kù) Microsoft SQL Server 2005 以其安全性 擴(kuò)展性 易用等多個(gè)優(yōu)點(diǎn)著稱 在數(shù)據(jù)庫(kù)建模方面 采用的是 PowerDesigner PowerDesigner 提供了一個(gè)完整 的建模解決方案 通過(guò)多次的修改 數(shù)據(jù)庫(kù)的關(guān)系如圖 3 5 所示 圖 3 5 數(shù)據(jù)庫(kù)的關(guān)系圖 3 4 1 用戶表設(shè)計(jì) 本系統(tǒng)為 B S 模式 用戶表主要記錄用戶的登錄和個(gè)人信息 用戶表的設(shè)計(jì)如表 3 1 所示 表 3 1 用戶表 DF TeaInfo 字段名類型長(zhǎng)度主鍵約束說(shuō)明 IDInt not null 是標(biāo)識(shí)增量用戶 ID DIdInt null 否系別 ID NameNvarchar 20 not null20 否姓名 GenderNvarchar 2 not null2 否性別 LoginIdNvarchar 50 not null50 否登錄帳號(hào) PasswordNvarchar 50 not null50 否密碼 UserGroupId Nvarchar 20 null 20 否用戶組 AdminGroupNvarchar 20 null20 否管理組 TimeStampdatetime 否修改時(shí)間 3 4 2 角色表設(shè)計(jì) 每一個(gè)記錄代表一個(gè)角色組 角色表的設(shè)計(jì)如表 3 2 所示 表 3 2 角色表 YZF Role 字段名類型長(zhǎng)度主鍵約束說(shuō)明 IDInt not null 是標(biāo)識(shí)增量角色 ID RoleNameNvarchar 20 null20 否角色名 TimeStampdatetime 否修改時(shí)間 3 4 3 用戶角色表設(shè)計(jì) 用戶角色表的設(shè)計(jì)旨在為每個(gè)用戶都分配一個(gè)角色 通過(guò)查詢用戶角色表即可知 道用戶所屬角色 用戶角色表的設(shè)計(jì)如表 3 3 所示 表 3 3 用戶角色表 YZF UserRole 字段名類型長(zhǎng)度主鍵約束說(shuō)明 IDInt not null 是標(biāo)識(shí)增量用戶角色 ID UserIDInt not null 否外鍵用戶 ID RoleIDInt not null 否外鍵角色 ID TimeStampdatetime 否修改時(shí)間 3 4 4 權(quán)限表設(shè)計(jì) 系統(tǒng)允許設(shè)置不同的用戶權(quán)限 權(quán)限表的設(shè)計(jì)如表 3 4 所示 表 3 4 權(quán)限表 YZF Right 字段名類型長(zhǎng)度主鍵約束說(shuō)明 IDInt not null 是標(biāo)識(shí)增量權(quán)限 ID RightNvarchar 20 null20 否權(quán)限名 TimeStampdatetime 否修改時(shí)間 3 4 5 角色權(quán)限表設(shè)計(jì) 角色權(quán)限表的設(shè)計(jì)旨在為每個(gè)角色分配不同的權(quán)限 角色權(quán)限表的設(shè)計(jì)如表 3 5 所示 表 3 5 角色權(quán)限表 YZF RoleRight 字段名類型長(zhǎng)度主鍵約束說(shuō)明 IDInt not null 是標(biāo)識(shí)增量用戶角色 ID RoleIDInt not null 否外鍵角色 ID RightIDInt not null 否外鍵權(quán)限 ID TimeStampdatetime 否修改時(shí)間 3 4 6 知識(shí)點(diǎn)表設(shè)計(jì) 知識(shí)點(diǎn)表記錄課程的每個(gè)知識(shí)點(diǎn) 由于知識(shí)點(diǎn)一般都有上級(jí)知識(shí)點(diǎn) 所以設(shè)置 FatherID 字段以標(biāo)識(shí)上級(jí)知識(shí)點(diǎn) 也方便在 treeview 等樹(shù)形控件中呈現(xiàn) 知識(shí)點(diǎn)表 的設(shè)計(jì)如表 3 6 所示 表 3 6 知識(shí)點(diǎn)表 YZF PointID 字段名類型長(zhǎng)度主鍵約束說(shuō)明 IDInt not null 是標(biāo)識(shí)增量用戶角色 ID NameNvarchar 50 not null 否角色 ID FatherIDInt not null 否父知識(shí)點(diǎn) ID TimeStampdatetime 否修改時(shí)間 3 4 7 試題表設(shè)計(jì) 試題表的設(shè)計(jì)是數(shù)據(jù)庫(kù)設(shè)計(jì)的主要部分 每一道試題都其唯一的編號(hào) 該編號(hào)在 試題錄入時(shí)自動(dòng)生成 為了簡(jiǎn)化數(shù)據(jù)庫(kù)的設(shè)計(jì) 所有題型的題目都保存在一個(gè)表上 其中 ID PointID TypeID Context Level Differential Time Count Keywords 和 TimeStamp 為公共屬性 Selections 和 Answer 字段只有單選題和多選題才有值 File 字段只有上 機(jī)操作題才有值 試題表中比較關(guān)鍵的屬性是 Level 字段和 Differential 字段 其中 Level 字段代表的是試題的難度系數(shù) 通常用未通過(guò)率來(lái)表示 即一次考試中未答對(duì) 某道試題的考生數(shù)在其總體中所占的比例 一般來(lái)說(shuō) 難度系數(shù)值為 0 5 時(shí) 是中等 難度 如果小于 0 3 試題太簡(jiǎn)單 如果大于 0 7 試題太難 如果考生都會(huì)做或都不會(huì) 做 則難度系數(shù)為 0 或?yàn)?1 Differential 表示試題的區(qū)分度 指某道題對(duì)不同水平考 生加以區(qū)分的能力 區(qū)分度高的試題 對(duì)學(xué)生水平有較好的鑒別力 試題表的設(shè)計(jì)如 表 3 7 所示 表 3 7 試題表 YZF Question 字段名類型長(zhǎng)度主鍵約束說(shuō)明 IDInt not null 是標(biāo)識(shí)增量試題 ID PointIDint not null 否外鍵知識(shí)點(diǎn) ID TypeIDInt not null 否外鍵題型 ID ContextNvarchar max not null4000 否試題 RTF FileNvarchar 200 null200 否文件 LevelReal not null 否難度系數(shù) DifferentialReal not null 否區(qū)分度 TimeInt not null 否作答時(shí)間 CountInt not null 否默認(rèn) 0出現(xiàn)次數(shù) AnswerNvarchar 50 null50 否答案 KeyWordsNvarchar 50 not null50 否關(guān)鍵字 SelectionsNvarchar 500 null500 否選項(xiàng) TimeStampdatetime 否修改時(shí)間 3 4 8 試卷表設(shè)計(jì) 試卷表保存手動(dòng)組卷或自動(dòng)組卷的每份試卷 Context 保存試題以及每種題型的 分?jǐn)?shù) 其值是一個(gè) XML 結(jié)構(gòu)的字符串 Level 難度系數(shù)的計(jì)算公式是 P Di Si Si 其中 i 1 2 N N 是試卷所含的題目數(shù) Di Si分別是第 i 題的 難度系數(shù)和分?jǐn)?shù) 試題表的設(shè)計(jì)如表 3 8 所示 表 3 8 試卷表 YZF Examination 字段名類型長(zhǎng)度主鍵約束說(shuō)明 IDInt not null 是標(biāo)識(shí)增量試卷 ID TotalValueint not null 否總分 TotalTimeInt not null 否總作答時(shí)間 Levelreal not null 否難度系數(shù) ContextNvarchar max null4000 否試題 IsCreateByTchbit not null 否創(chuàng)建者 TitleNvarchar 50 not null50 否試卷標(biāo)題 TimeStampDatetime null 否修改時(shí)間 GenerateTimeDatetime null 否 getdate 生成時(shí)間 3 4 9 題型表設(shè)計(jì) 題型表的每個(gè)記錄代表一種題型 系統(tǒng)不能修改此表 只能通過(guò)數(shù)據(jù)庫(kù)新增記錄 題型表的設(shè)計(jì)如表 3 9 所示 表 3 9 題型表 YZF Type 字段名類型長(zhǎng)度主鍵約束說(shuō)明 IDInt not null 是標(biāo)識(shí)增量題型 ID NameNvarchar 20 null20 否題型名稱 3 4 10 試題操作記錄表設(shè)計(jì) 用戶對(duì)試題的每一個(gè)操作 增 改 刪 都將被記錄在此表 試題操作記錄表的設(shè) 計(jì)如表 3 10 所示 表 3 10 試題操作記錄表 YZF Log 字段名類型長(zhǎng)度主鍵約束說(shuō)明 IDInt not null 是標(biāo)識(shí)增量記錄 ID QuestionIDInt not null 否外鍵約束試題 ID UserIDInt not null 否外鍵約束用戶 ID TimeDatetime not null 否 Getdate 操作試卷 OperationNvarchar 10 not null10 否 Delete modify add 操作類型 4 4 詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)詳細(xì)設(shè)計(jì)與實(shí)現(xiàn) 4 1 開(kāi)發(fā)環(huán)境及技術(shù)選擇 本系統(tǒng)的開(kāi)發(fā)環(huán)境是基于 Windows 7 操作系統(tǒng) 采用 Microsoft Visual Studio 2008 Microsoft Expression Blend3 編程工具開(kāi)發(fā) 后臺(tái)數(shù)據(jù)是 Microsoft SQL Server 2005 采用的查詢語(yǔ)言是 SQL 為了讓用戶有豐富的媒體體驗(yàn)和交互式應(yīng)用 本系統(tǒng)選擇微軟力推的 RIA 技術(shù) Silverlight 在數(shù)據(jù)操作方面 采用的是 LINQ 技術(shù) 微軟 Silverlight 是一個(gè)跨瀏覽器 跨客戶平臺(tái)的技術(shù) 能夠設(shè)計(jì) 開(kāi)發(fā)和發(fā)布有 多媒體體驗(yàn)與富交互 RIA Rich Interface Application 的網(wǎng)絡(luò)交互程序 因?yàn)?Silverlight 提供了一個(gè)強(qiáng)大的平臺(tái) 能夠開(kāi)發(fā)出具有專業(yè)圖形 音頻和視頻 的 Web 應(yīng)用程序 增強(qiáng)了用戶體驗(yàn) 所以 SilverLight 吸引了設(shè)計(jì)人員和開(kāi)發(fā)人員的 眼球 同時(shí) Silverlight 還提供了強(qiáng)大的工具來(lái)提高他們的工作效率 Silverlight 能創(chuàng) 建一種具有很高藝術(shù)性的應(yīng)用程序 具有以下的特點(diǎn) 1 一種跨瀏覽器 跨平臺(tái)的技術(shù) 可以在所有流行的瀏覽器中運(yùn)行 2 無(wú)論在哪運(yùn)行 都能提供一致的用戶體驗(yàn) 3 只需要下載很小的文件 以安裝支持 4 它的視頻和音頻流 視頻質(zhì)量無(wú)論從移動(dòng)設(shè)備還是桌面瀏覽器都是 720p HDTV video 模式 5 用戶可在瀏覽器中直接對(duì)其進(jìn)行控制 可以拖動(dòng) 翻轉(zhuǎn) 放大的圖片 6 它讀取數(shù)據(jù)并且更新外觀 但不會(huì)通過(guò)刷新整體頁(yè)面來(lái)打斷用戶操作 語(yǔ)言集成查詢 LINQ 是一組技術(shù)的名稱 這些技術(shù)建立在將查詢功能直接集成 到 C 語(yǔ)言 和可能的任何其他 NET 語(yǔ)言 中 借助于 LINQ 查詢現(xiàn)在已是高級(jí) 語(yǔ)言構(gòu)造 就如同類 方法 事件等等 LINQ 最明顯的 語(yǔ)言集成 部分是查詢表 達(dá)式 查詢表達(dá)式是使用 C 3 0 中引入的聲明性查詢語(yǔ)法編寫的 通過(guò)使用查詢語(yǔ) 法 我們可以使用最少的代碼對(duì)數(shù)據(jù)源執(zhí)行復(fù)雜的篩選 排序和分組操作 同時(shí)使用 相同的基本查詢表達(dá)式模式來(lái)查詢和轉(zhuǎn)換 SQL 數(shù)據(jù)庫(kù) ADO NET 數(shù)據(jù)集 XML 文檔和流以及 NET 集合中的數(shù)據(jù) 4 2 系統(tǒng)架構(gòu) 系統(tǒng)采用的架構(gòu)是經(jīng)典的 Web 三層架構(gòu) 所謂的三層架構(gòu) 即數(shù)據(jù)訪問(wèn)層 業(yè) 務(wù)邏輯層 還有表現(xiàn)層 以往采用 Web 三層開(kāi)發(fā)需要建立相應(yīng)的類庫(kù) 諸如實(shí)體類 類庫(kù) 數(shù)據(jù)庫(kù)工具類庫(kù)等 這樣是相當(dāng)費(fèi)時(shí)費(fèi)力的 即使有了第三方的自動(dòng)生成工具 也要作大量的修改 所以我借助 LINQ 提供 LINQ TO SQL 設(shè)計(jì)器 只要設(shè)置好數(shù)據(jù) 源 然后在可視化界面直接把表拖動(dòng)到 LINQ TO SQL 設(shè)計(jì)器 設(shè)計(jì)器就會(huì)自動(dòng)檢測(cè) 主外鍵等約束關(guān)系 然后為每個(gè)表建立實(shí)體類并建立關(guān)系 并封裝了每個(gè)表的 CRUD 方法 從而完成了數(shù)據(jù)訪問(wèn)層的工作 在業(yè)務(wù)邏輯層 由于 Silverlight 不能直接讀取 數(shù)據(jù)庫(kù) 所有與數(shù)據(jù)庫(kù)的交互都必須通過(guò) WebService WCF 或 RIA Service 等方法間 接訪問(wèn) 最后選擇相對(duì)簡(jiǎn)單的 WebService 來(lái)充當(dāng)業(yè)務(wù)邏輯層 之所以不再新建一個(gè) 業(yè)務(wù)邏輯類庫(kù) 是因?yàn)榧偃缭侔褬I(yè)務(wù)邏輯方法封裝在一個(gè)類庫(kù)里 那業(yè)務(wù)方法的調(diào)用 過(guò)程就是從表現(xiàn)層調(diào)用 Webservice 方法 Webservice 再調(diào)用業(yè)務(wù)類庫(kù)的方法 那就顯 得太多余了 所以我把業(yè)務(wù)邏輯層都放在一個(gè) Webservice 里 在 Webservice 里 我 實(shí)例化了一個(gè) Datacontext 對(duì)象 DataContext 對(duì)象管理著當(dāng)前處理的數(shù)據(jù)庫(kù)中的所有 事務(wù) 每一個(gè)業(yè)務(wù)邏輯方法都要用到 Datacontext 對(duì)象以操作數(shù)據(jù)庫(kù) 最后在 Silverlight 中調(diào)用 Webservice 來(lái)完成對(duì)數(shù)據(jù)庫(kù)的操作 系統(tǒng)架構(gòu)如圖 4 1 所示 圖 4 1 系統(tǒng)架構(gòu)圖 4 3 主要功能設(shè)計(jì)與實(shí)現(xiàn) 主要介紹試題添加功能 試題修改刪除功能 自動(dòng)組卷功能 手動(dòng)組卷功能以及 試卷修改刪除功能的設(shè)計(jì)和實(shí)現(xiàn)方法 4 3 1 試題添加功能 本功能完成的功能是把題目錄入到數(shù)據(jù)庫(kù) 不同的題型錄入需要不同的模板 每 個(gè)模板對(duì)應(yīng)一個(gè)頁(yè)面 所有的題目添加都必須選擇知識(shí)點(diǎn) 輸入題目 難度 區(qū)分度 作答時(shí)間和關(guān)鍵字 除此之外 單選題和多選題還必須輸入 ABCD 四個(gè)選項(xiàng)和答案 而上機(jī)題則必須上傳有關(guān)文件 其中知識(shí)點(diǎn)選擇是通過(guò)一個(gè) Combox 控件選擇的 頁(yè) 面加載時(shí) 首先實(shí)例化一個(gè) Webservice 實(shí)例 為 GetAllPointsCompleted 和 SaveQuestionCompleted 事件注冊(cè)方法 然后調(diào)用 Webservice 的 GetAllPointsAsync 方法從數(shù)據(jù)庫(kù)異步讀取所有知識(shí)點(diǎn) 當(dāng)數(shù)據(jù)讀取完成后加載到相應(yīng)的知識(shí)點(diǎn)下拉列表 由于試題內(nèi)容可能存在圖片或者其他信息 所以系統(tǒng)采用 Richtextbox 來(lái)作為試題的 編輯器 這是由于 Richtextbox 支持 RTF 富文本格式 使試題不但能夠插入圖片 而 且文本內(nèi)容還能設(shè)置不同的樣式 最后保存在數(shù)據(jù)庫(kù)也是以 rtf 文本格式保存 文件 上傳方面 也是通過(guò) Webservice 完成的 首先選擇要上傳的文件 然后創(chuàng)建上傳文件 的只讀 Filestream 然后從讀取 Filestream 里所有的字節(jié)序列 最后調(diào)用 Webservice 的相應(yīng)方法上傳到服務(wù)器 輸入完所有必要屬性后 點(diǎn)擊提交按鈕 系統(tǒng)會(huì)檢查所有 的試題屬性值是否符合要求 只有全部都符合要求時(shí)才能新增題目 例如新增單選題 時(shí)如圖 4 2 示 圖 4 2 單選題新增圖 4 3 2 試題修改刪除功能 試題修改和刪除都須先進(jìn)行試題的檢索才能操作 用戶只需輸入知識(shí)點(diǎn) 題型 難度 關(guān)鍵字等多個(gè)條件的某個(gè)或多個(gè)組合就能從數(shù)據(jù)庫(kù)檢索出相應(yīng)的題目 然后在 DataGrid 控件上顯示 DataGrid 控件的每一行代表一條試題記錄 每一行都會(huì)有一 個(gè)刪除和修改按鈕以操作試題 試卷的修改通過(guò)彈出窗口進(jìn)行 當(dāng)點(diǎn)擊修改按鈕后 系統(tǒng)會(huì)自動(dòng)獲得所要修改的題型 然后加載相應(yīng)的修改模板進(jìn)行編輯 修改完成后 系統(tǒng)更新題庫(kù)并在網(wǎng)頁(yè)上顯示出來(lái) 試題刪除的實(shí)現(xiàn)方法是當(dāng)用戶點(diǎn)擊刪除按鈕的時(shí) 候 系統(tǒng)會(huì)把 DataGrid 該行的數(shù)據(jù)實(shí)體傳遞給 WebService 然后根據(jù)該實(shí)體刪除數(shù) 據(jù)庫(kù)的相應(yīng)試題 用戶也可以選擇多條試題批量刪除 若有試卷關(guān)聯(lián)著試題 則會(huì)報(bào) 錯(cuò) 并提示出錯(cuò)試題關(guān)聯(lián)的試卷號(hào) 界面如圖 4 3 所示 圖 4 3 題庫(kù)管理圖 4 3 3 自動(dòng)組卷功能 自動(dòng)組卷是系統(tǒng)的核心 用戶只須輸入難度 作答時(shí)間 各個(gè)題型的題數(shù)和分值 所考知識(shí)點(diǎn) 然后點(diǎn)擊生成即可調(diào)用相應(yīng)算法從數(shù)據(jù)庫(kù)中抽取試題組合試卷 系統(tǒng)采 用的組卷策略是遺傳算法 遺傳算法是模擬達(dá)爾文的遺傳選擇和自然淘汰的生物進(jìn)化 過(guò)程的計(jì)算模型 是一種通過(guò)模擬自然進(jìn)化過(guò)程搜索最優(yōu)解的方法 它用于解決多約 束條件下的最優(yōu)問(wèn)題 遺傳算法有三個(gè)基本操作 選擇 交叉 變異 這些操作又有 不同的方法來(lái)實(shí)現(xiàn) 1 選擇 選擇用于確定在下一代種群有哪些個(gè)體組成 選擇的依據(jù)是個(gè)體的 適應(yīng)度 即首先計(jì)算每個(gè)個(gè)體的適應(yīng)度 然后以概率方式選擇適應(yīng)度較好的個(gè)體進(jìn)入 下一代種群 通過(guò)選擇操作 父代中的個(gè)體及由交叉和變異形成的新個(gè)體中 適應(yīng)度 好的個(gè)體能以較高的概率存活下來(lái) 2 交叉 交叉是指父代中的兩個(gè)個(gè)體之間進(jìn)行基因片斷的交換 基因片斷在 染色中的位置和長(zhǎng)度的選擇是隨機(jī)的 通過(guò)交叉操作 可以將多個(gè)體中的優(yōu)秀片斷進(jìn) 行重組 形成適應(yīng)度更優(yōu)的個(gè)體 3 變異 交叉之后子代經(jīng)歷的變異 實(shí)際上是子代基因按小概率擾動(dòng)產(chǎn)生的 變化 依據(jù)個(gè)體編碼表示方法的不同 主要包括實(shí)值變異和二進(jìn)制變異兩種方法 自動(dòng)組卷流程分別對(duì)應(yīng)遺傳算法的三個(gè)基本操作 首先調(diào)用 make begin recordset 函數(shù)產(chǎn)生初始種群并對(duì)初始種群執(zhí)行一次交叉和變異操作 種群的每一個(gè)個(gè)體代表一份試卷 試卷初始種群不是采用完全隨機(jī)的方法產(chǎn)生 而是 根據(jù)題型比例 總分 知識(shí)點(diǎn)不重復(fù) 不考章節(jié)等要求隨機(jī)產(chǎn)生 使得初始種群一開(kāi) 始就滿足了題型 總分和知識(shí)點(diǎn)等要求 這樣可加快遺傳算法的收斂并減少迭代次數(shù) 在編碼方面 采用實(shí)數(shù)編碼 以克服以往采用二進(jìn)制編碼搜索空間過(guò)大和編碼長(zhǎng)度過(guò) 長(zhǎng)的缺點(diǎn) 同時(shí)取消了個(gè)體的解碼時(shí)間 提高了求解速度 然后進(jìn)入選擇操作 在選 擇之前 首先調(diào)用 product wheel 函數(shù) 其作用是根據(jù)適應(yīng)度生成輪盤表 然后調(diào) 用 choose arithmetic operators 函數(shù)進(jìn)入選擇過(guò)程 選擇過(guò)程主要根據(jù)試卷個(gè)體 的適應(yīng)程度決定試卷在下一代是被淘汰還是被復(fù)制 選擇過(guò)程結(jié)束后 然后調(diào)用 cross 函數(shù)進(jìn)入交叉過(guò)程 由于在編碼時(shí)采用的是分段實(shí)數(shù)編碼 所以在進(jìn)行交叉 時(shí)采用分段單點(diǎn)交叉 按題型分段來(lái)進(jìn)行交叉 整個(gè)染色體就表現(xiàn)為多點(diǎn)交叉 交 叉的實(shí)現(xiàn)過(guò)程 將群體中的染色體任意進(jìn)行兩兩配對(duì) 對(duì)每對(duì)染色體產(chǎn)生一個(gè) 0 1 的 隨機(jī)數(shù) r 若 r pc pc 取值范圍是 0 6 0 8 則分段隨機(jī)產(chǎn)生一個(gè)交叉點(diǎn) 然后分 段進(jìn)行互換以得到下一代 最后調(diào)用 mutation 進(jìn)入變異過(guò)程 在遺傳算法中 變異 概率一般較小 這里只對(duì)某段上的某個(gè)基因進(jìn)行變異 對(duì)某個(gè)染色體 隨機(jī)生成一個(gè) 0 1 范圍內(nèi)的實(shí)數(shù) r 若 r 0 01 則對(duì)該染色體進(jìn)行變異 否則不進(jìn)行變異 變異 的操作如下 循環(huán)讀取每個(gè)題段 若變異幾率 p 0 01 則對(duì)該題進(jìn)行變異 變異基因 的選擇原則與原基因題型相同 在三個(gè)基本操作完成之后 調(diào)用 save best policy 函 數(shù)保存最優(yōu)策略函數(shù) 由此循環(huán)若干 最大 200 次后 結(jié)束遺傳算法 返回生成試 卷 其算法流程圖如圖 4 4 所示 圖 4 4 組卷算法流程圖 4 3 4 手工組卷功能 盡管自動(dòng)組卷為用戶帶來(lái)了極大的便利 但手工組卷仍然有它不可取代的優(yōu)勢(shì) 通過(guò)手工組卷 用戶可以自由地確定題目 以保證試卷的質(zhì)量 為了能使用戶方便地 進(jìn)行手工組卷 系統(tǒng)在手工組卷頁(yè)面放置了 7 個(gè) DataGrid 控件 其中 6 個(gè) DataGrid 分別對(duì)應(yīng) 6 種題型的列表 點(diǎn)擊題型可對(duì)相應(yīng)的 DataGrid 進(jìn)行折疊或展開(kāi) 第 7 個(gè) DataGrid 為當(dāng)前已選題目列表 每選擇一個(gè)題目 該題目會(huì)自動(dòng)出現(xiàn)在已選列表上 并且統(tǒng)計(jì)試卷分?jǐn)?shù)難度和時(shí)間 用戶可以隨時(shí)對(duì)試卷進(jìn)行預(yù)覽 最后只要輸入試卷標(biāo) 題即刻保存試卷 4 3 5 試卷修改刪除功能 試卷修改和刪除都須先進(jìn)行試卷的檢索才能操作 用戶只需輸入試卷的難度 分 數(shù) 時(shí)間 生成時(shí)間等多個(gè)條件的單個(gè)或多個(gè)組合就能從數(shù)據(jù)庫(kù)檢索出相應(yīng)的試卷 然后在 DataGrid 控件上顯示 DataGrid 控件的每一行代表一份試卷記錄 每一行都會(huì) 有一個(gè)刪除和修改按鈕以操作試卷 試卷的修改通過(guò)彈出窗口進(jìn)行 試卷的修改只能 修改選中試卷的標(biāo)題和題型分值 修改完成后 系統(tǒng)更新題庫(kù)并在網(wǎng)頁(yè)上顯示出來(lái) 試題刪除的實(shí)現(xiàn)方法是當(dāng)用戶點(diǎn)擊刪除按鈕的時(shí)候 系統(tǒng)會(huì)把選中的試卷號(hào)傳遞給相 應(yīng)的 WebService 方法進(jìn)行刪除 5 5 畢業(yè)設(shè)計(jì)心得與收獲畢業(yè)設(shè)計(jì)心得與收獲 通過(guò)對(duì)試題庫(kù)系統(tǒng)的研究 探討了試題庫(kù)系統(tǒng)的數(shù)據(jù)庫(kù)設(shè)計(jì) 組卷模式選擇 用 戶角色管理 考點(diǎn)管理 試題管理和試卷管理等模塊的設(shè)計(jì) 并結(jié)合 Silverlight 和 LINQ 等技術(shù)成功地開(kāi)發(fā)出在 Web 模式下基于數(shù)據(jù)庫(kù)的試題庫(kù)管理系統(tǒng) 由于系統(tǒng)設(shè)計(jì)所用到的技術(shù)很多是以前從沒(méi)接觸過(guò)的 所以一切都要從自學(xué)開(kāi)始 一邊自學(xué)一邊做設(shè)計(jì) 由于學(xué)的東西是越來(lái)越多 也越來(lái)越深 所以在畢業(yè)設(shè)計(jì)中 相同功能可能用了不同的做法 相比在系統(tǒng)設(shè)計(jì)中使用最新的技術(shù) 個(gè)人覺(jué)得系統(tǒng)模 塊劃分在系統(tǒng)設(shè)計(jì)中占有非常重要的比重 剛開(kāi)始劃分系統(tǒng)模塊 由于對(duì)系統(tǒng)功能把 握得不夠好 所以模塊的劃分顯得比較混亂 在界面設(shè)計(jì)階段 由于采用了微軟的 Silverlight 技術(shù) 面對(duì)的再不是熟悉的 html 標(biāo)簽 而是全新的 XAML 所以剛開(kāi)始 時(shí)頁(yè)面布局時(shí)要經(jīng)常查閱 MSDN 幫助 在設(shè)計(jì)工作的后期 隨著知識(shí)的積累越來(lái)越豐富 編碼速度和程序質(zhì)量都有明顯 提高 用的控件也越來(lái)越豐富 在某些頁(yè)面甚至添加了一些簡(jiǎn)單的動(dòng)畫效果以使用戶 界面更加友好 雖然系統(tǒng)最后能夠完成 但是由于工作實(shí)習(xí)原因和時(shí)間關(guān)系 所以系統(tǒng)仍存在很 多不足 1 由于系統(tǒng)是通過(guò) WebService 對(duì)數(shù)據(jù)庫(kù)進(jìn)行異步操作的 由于 WebService 本來(lái)速度就不高 所以當(dāng)傳輸數(shù)據(jù)量比較大 如數(shù)百個(gè)題目 時(shí) 會(huì)有明顯的操作延 遲 雖然系統(tǒng)提供了人性化的等待提示 但根本的解決辦法還是改進(jìn)與數(shù)據(jù)庫(kù)的連接 通信 2 試題編輯采用的是 Richtextbox 控件 微軟在 Silverlight3 并沒(méi)有提供類 似 Richtextbox 的富文本編輯器 系統(tǒng)里所采用的 Richtextbox 是一個(gè)免費(fèi)第三方控 件 在添加圖片及文本格式控制等方面還需另寫代碼 不過(guò)微軟已經(jīng)在 Silverlight4 新增了 Richtextbox 控件 所以到時(shí)候這個(gè)問(wèn)題也會(huì)迎刃而解 3 組卷算法有待進(jìn)一步完善 雖然系統(tǒng)采用的算法能夠滿足用戶的一般要求 但有時(shí)仍會(huì)出現(xiàn)組卷失敗或出錯(cuò)的現(xiàn)象 總的來(lái)說(shuō) 通過(guò)這次畢業(yè)設(shè)計(jì) 不僅鞏固和擴(kuò)充了原有的專業(yè)知識(shí) 而且分析 問(wèn)題和編碼能力也有顯著的提高 參考文獻(xiàn) 1 McGrawHill Oracle Database 10g SQL 2002 p314 316 2 Rampant TechAdvanced SQL Database Programmers 2003 p234 236 3 殷榮慶 題庫(kù)系統(tǒng)的設(shè)計(jì)于研究 J 安徽教育學(xué)院學(xué)報(bào) 2004 22 6 36 40 4 張建棟 許錦標(biāo) 基于 Web 的試題庫(kù)組卷系統(tǒng)的研究與開(kāi)發(fā) CNKI SUN DNZS 0 2008 10 040 5 夏愛(ài)月 基于遺傳算法的自動(dòng)組卷系統(tǒng)研究與實(shí)現(xiàn) CNKI SUN DNBC 0 2009 02 038 6 魏德志 林麗娜 吳 旭 遺傳算法在智能組卷系統(tǒng)中的設(shè)計(jì)與實(shí)現(xiàn) CNKI SUN CJDL 0 2008 01 084 7 羅江英 遺傳算法的研究與應(yīng)用 CNKI SUN DNZS 0 2008 14 058 8 崔欣 Silverlight 技術(shù)的發(fā)展與應(yīng)用 CNKI SUN DNZS 0 2009 22 049 9 孫超 鐘珞 基于 Silverlight 的富界面應(yīng)用研究 CNKI SUN WHGY 0 2008 12 023 10 付坤 探討 SilverLight 技術(shù)在增強(qiáng)客戶體驗(yàn)方面的應(yīng)用 CNKI SUN KJXX 0 2009 05 582 11 田江 淺談 LINQ 訪問(wèn)技術(shù) CNKI SUN KJXH 0 2009 07 236 12 史紅軍 快速開(kāi)發(fā)基于 Linq to Sql 的三層 Web 應(yīng)用 CNKI SUN ZXLJ 0 2009 24 017 13 王炯煒 胡宏偉 基于 LINQ 的三層體系結(jié)構(gòu)應(yīng)用 CNKI SUN KJXI 0 2008 21 352 致 謝 在本文完成之際 謹(jǐn)向 學(xué)院計(jì)算 機(jī)科學(xué)與技術(shù)系的全體教師致以衷心的感謝 特別要感謝 我的導(dǎo)師 潘章明老師 本論文是在 潘老師的精心指導(dǎo) 和關(guān)懷下完成 的 從論文的選題 方案設(shè)計(jì) 到論文的撰寫和修改 都傾注了潘老師的心血 和汗水 在學(xué)習(xí)期間 他的言傳身教將使我終生受益 他認(rèn)真嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度 豁達(dá)寬廣的胸懷 平易近人的處事風(fēng)格是我一生的楷模 值此提交論文之時(shí) 在此再向潘老師表達(dá)衷心的感謝 附錄 系統(tǒng)使用說(shuō)明 1 系統(tǒng)登錄 圖 1 登錄界面 如圖 1 所示 正確輸入賬號(hào)名稱和密碼后點(diǎn)擊登錄或者按回車就可跳轉(zhuǎn)到系統(tǒng)主 界面 密碼和賬號(hào)名稱都區(qū)分大小寫 2 主界面 圖 2 主界面 登錄成功后 系統(tǒng)自動(dòng)進(jìn)入主界面 如圖 2 所示 主界面的左側(cè)是導(dǎo)航欄 包含 系統(tǒng)所有的操作鏈接 用戶可根據(jù)需要選擇菜單 然后在右側(cè)區(qū)域進(jìn)行操作 3 用戶管理 用戶管理只能由超級(jí)管理員進(jìn)行操作 超級(jí)管理員可以使用系統(tǒng)的所有功能 1 用戶添加 圖 3 用戶添加 選擇 用戶管理 添加用戶 菜單即可進(jìn)入添加用戶的界面 如圖 3 所示 只要正確地全部輸入資料即可添加用戶 2 角色管理 圖 4 用戶角色管理 選擇 用戶管理 角色管理 菜單即可進(jìn)入用戶角色管理界面 如圖 4 所示 在用戶角色管理界面的用戶角色列表上 點(diǎn)擊更換角色即可將所選用戶的角色更改為 角色下拉列表所選角色 點(diǎn)擊刪除用戶按鈕即可刪除用戶 在新增角色文本框中輸入 角色名就可新增一個(gè)角色組 在刪除角色處選擇所要?jiǎng)h除的角色就會(huì)刪除所選角色組 包括屬于此角色的用戶也會(huì)同時(shí)刪除 3 權(quán)限管理 圖 5 角色權(quán)限管理 選擇 用戶管理 權(quán)限管理 菜單即可進(jìn)入角色權(quán)限管理界面 如圖 5 所示 角色列表的選擇角色發(fā)生變化時(shí) 權(quán)限列表也會(huì)自動(dòng)更新 在權(quán)限列表勾選相應(yīng)的權(quán) 限即可把權(quán)限賦予選中角色 4 考點(diǎn)管理 圖 6 知識(shí)點(diǎn)管理 選擇 考點(diǎn)管理 考點(diǎn)管理 菜單即可進(jìn)入知識(shí)點(diǎn)管理界面 如圖 6 所示 所有的知識(shí)點(diǎn)都會(huì)用一個(gè) Treeview 表示 選中知識(shí)點(diǎn)時(shí)右面的修改菜單也會(huì)綁定該知 識(shí)點(diǎn)的數(shù)據(jù)并同時(shí)顯示出來(lái) 用戶只要按更改按鈕就可完成更改 在新增菜單 只要 選擇父知識(shí)點(diǎn) 父知識(shí)點(diǎn)為空時(shí)為頂級(jí)知識(shí)點(diǎn) 和輸入名稱即可新增知識(shí)點(diǎn) 5 試題管理 1 試題添加 圖 7 試題添加 在 試題管理 菜單下 選擇不同的題型就會(huì)出現(xiàn)相應(yīng)的新增模板 以上為單選 題新增模板 如圖 7 所示 只要正確填入所有信息即可添加試題到數(shù)據(jù)庫(kù) 2 試題管理 圖 8 試題管理 選擇 試題管理 試題查詢修改 菜單即可進(jìn)入試題管理界面 如圖 8 所示 輸入一個(gè)或多個(gè)查詢條件即可進(jìn)行試題的檢索 檢索完成后可以點(diǎn)擊列表上的修改或 刪除按鈕進(jìn)行操作 也可進(jìn)行批量刪除 6 試卷管理 1 自動(dòng)組卷 圖 9 自動(dòng)組卷 選擇 試卷管理 自動(dòng)組卷 菜單即可進(jìn)入自動(dòng)組卷界面 輸入試卷的各個(gè) 屬性然后單擊生成即可進(jìn)行自動(dòng)組卷 自動(dòng)組卷的所需時(shí)間一般在 10 秒以內(nèi) 然后 可以單擊預(yù)覽查看整份試卷 最后點(diǎn)擊保存按鈕把試卷保存在數(shù)據(jù)庫(kù) 2 手工組卷 圖 10 手動(dòng)組卷 選擇 試卷管理 手工組卷 菜單即可進(jìn)入自動(dòng)組卷界面 如圖 10 所示 頁(yè)面加載時(shí)由于要從數(shù)據(jù)庫(kù)讀取題目 所以會(huì)出現(xiàn)等待工具條 頁(yè)面加載完成后會(huì)把 各個(gè)題型的題目分別加載到 6 個(gè) Datagrid 控件里 用戶只需點(diǎn)擊相應(yīng)的題型就會(huì)出 現(xiàn)相應(yīng)列表 然后就可以選擇題目 每選擇一條題目 該題目都會(huì)出現(xiàn)在最下

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論