排課系統(tǒng).doc_第1頁
排課系統(tǒng).doc_第2頁
排課系統(tǒng).doc_第3頁
排課系統(tǒng).doc_第4頁
排課系統(tǒng).doc_第5頁
免費(fèi)預(yù)覽已結(jié)束,剩余52頁可下載查看

下載本文檔

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

文檔簡介

摘 要 I 排課系統(tǒng) 摘 要 排課問題是所有教育行業(yè)都要面對的問題 尤其針對高校紛繁復(fù)雜的課程和專業(yè) 一直沒有 很好解決方法 但這又是每個學(xué)校在每個學(xué)期都會碰到的必修課 本文在相關(guān)理論的指導(dǎo)下 在分 析以往一些排課軟件的基礎(chǔ)上 提出一種排課系統(tǒng)的設(shè)計方法 對一些具體的問題給出相應(yīng)解決方 案 希望對于相關(guān)部門有所幫助 此系統(tǒng)主要被分為三個部分 界面的設(shè)計 排課算法的設(shè)計 以 及報表的自動生成 縱觀全局 我們確定用 Visual Basic 語言作為程序設(shè)計語言以及運(yùn)用 SQL Server 2000 數(shù)據(jù)庫作為后臺的數(shù)據(jù)庫支持 關(guān)鍵詞 關(guān)鍵詞 排課 排課系統(tǒng) 設(shè)計 高校 學(xué)院工學(xué)學(xué)士學(xué)位論文ABSTRACT II Abstract Course arranging Problem is a problem which working in the development of education is facing Especially there is no a good solution for this matter of the college However it is also a necessary administration task for every school in every semester This essay with the correlative theory s guidance on the basis of analyzing some courses arraying software proposes a design method of commonly used courses arraying information system in college and solves some of the certain problems Hoping it is useful for the relative department The system consist of three parts the interface design the algorithm of Course Timetable system and printing the tables On the whole we decided to use VB computer language to design and SQL Server 2000 Data Base to support Key Words courses arranging courses arrangement management system design college 學(xué)院工學(xué)學(xué)士學(xué)位論文 摘要 1 目 錄 摘 要 I ABSTRACT II 第一章 引言 1 第二章 可行性研究 3 2 1 系統(tǒng)目標(biāo)及任務(wù) 3 2 2 開發(fā)工具的選擇和介紹 3 2 3 對現(xiàn)有的排課系統(tǒng)的分析 5 2 4 系統(tǒng)的邏輯模型 6 2 4 1 系統(tǒng)結(jié)構(gòu)圖 6 2 4 2 系統(tǒng)流程圖 6 2 4 3 數(shù)據(jù)字典 7 2 5 系統(tǒng)的可行性 8 2 5 1 經(jīng)濟(jì)可行性分析 8 2 5 2 操作可行性分析 9 2 5 3 技術(shù)可行性分析 9 2 6 成本效益分析 9 第三章 需求分析 10 3 1 系統(tǒng)的運(yùn)行環(huán)境要求 10 3 1 1 硬件要求 10 3 1 2 軟件要求 10 3 2 系統(tǒng)的功能要求 10 3 3 系統(tǒng)的性能要求 11 3 3 1 E R 圖 11 第四章 總體設(shè)計 13 4 1 模塊設(shè)計 13 學(xué)院工學(xué)學(xué)士學(xué)位論文 摘要 2 4 2 功能分解 14 4 3 數(shù)據(jù)庫設(shè)計 14 4 3 1 定義屬性表 14 4 4 排課系統(tǒng)總構(gòu)架 16 第五章 詳細(xì)設(shè)計 17 5 1 用戶界面設(shè)計 17 5 1 1 簡單易用和個性化需求 17 5 1 2 對數(shù)據(jù)的查詢 17 5 1 3 系統(tǒng)菜單功能 17 5 2 課程表的生成 19 5 2 1 班級課程表查詢打印設(shè)計 19 5 2 2 教師課程表查詢打印設(shè)計 25 5 2 3 教室課程表查詢打印設(shè)計 31 第六章 測試 37 6 1 排課系統(tǒng)功能測試 37 6 2 排課系統(tǒng)課表合理性測試 37 6 3 該系統(tǒng)的不足和改進(jìn)方案 37 第七章 總結(jié) 39 7 1 軟件設(shè)計小結(jié) 39 參考文獻(xiàn) 40 附 錄 41 SURVEY REPORT 45 學(xué)院工學(xué)學(xué)士學(xué)位論文 第一章 引言 第 1 頁 共 50 頁 第一章 引言 隨著信息技術(shù)的飛速發(fā)展 各個行業(yè)的信息化勢在必行 正所謂 科學(xué)技術(shù)是第一 生產(chǎn)力 科技的進(jìn)步大大地提高了生產(chǎn)率 然而 在高校這個知識密集的地方 如何 才能提高辦學(xué)效率 更好地完成教學(xué)任務(wù) 跟上社會發(fā)展步伐 這是一個擺在教學(xué)工 作者面前的一個迫切的問題 應(yīng)用信息化來改造傳統(tǒng)的教學(xué)管理模式是一個重要途徑 近幾年來 隨著各高校辦公自動化工作的推進(jìn) 教務(wù)管理自動化也被擺上了日程 在教務(wù)工作中占有很大比重的一項就是每學(xué)期的課程排定工作 由于教工 教室和設(shè) 備的相對緊張 如何進(jìn)行合理地安排和分配 從而充分利用教學(xué)資源是我們不得不面 對的問題 排課系統(tǒng)正是為了減輕教務(wù)人員的工作量 實現(xiàn)教務(wù)工作自動化 解決排課這一老大難問題 的教務(wù)辦公軟件 尤其針對高校的排課一直都沒有很好的解決方法 但是此問題又是每個學(xué)校在每 個學(xué)期都會碰到的必要行政作業(yè) 本文在相關(guān)理論的指導(dǎo)下 在分析以往一些排課軟件的基礎(chǔ)上 提出一個高校通用排課系統(tǒng)的設(shè)計方法 并對一些具體的問題給出相應(yīng)解決方案 但是 由于技術(shù) 經(jīng)驗的有限和數(shù)據(jù)量過大 目前我們很難做出一個滿足所有需要的排課系統(tǒng) 因為它不僅要考慮到 教室沖突問題和教師沖突問題 還要考慮到分段課 單雙周課時的資源利用問題 另外由于高校的 教學(xué)特點 還要處理合班課 分班課 體育課與選修課等特殊課程 針對這些問題 在此專門對數(shù) 據(jù)庫設(shè)計作了一些探索 并于架構(gòu)的選擇和模塊的劃分上經(jīng)過精心調(diào)整 在菜單的設(shè)計上也體現(xiàn)了 人性化的操作 該設(shè)計貼近用戶需求 功能完整 架構(gòu)合理 并用大量的框圖模型體現(xiàn)了系統(tǒng)的規(guī) 劃 本軟件使用 Microsoft Basic 6 0 進(jìn)行編寫和 SQL Server 2000 數(shù)據(jù)庫相連接 數(shù)據(jù)庫的特點 1 實現(xiàn)數(shù)據(jù)共享 2 實現(xiàn)數(shù)據(jù)獨(dú)立 3 減少了數(shù)據(jù)冗余度 4 避免了數(shù)據(jù)不一致性 5 加強(qiáng)了對數(shù)據(jù)的保護(hù) 一個數(shù)據(jù)庫應(yīng)用系統(tǒng)通常是由數(shù)據(jù)庫和應(yīng)用程序兩部分組成 它們是在數(shù)據(jù)庫管理系統(tǒng)支持下設(shè)計 和開發(fā)出來的 學(xué)院工學(xué)學(xué)士學(xué)位論文 第二章 可行性研究 第 2 頁 共 50 頁 第二章 可行性研究 2 1 系統(tǒng)目標(biāo)及任務(wù) 本軟件主要是適用于高等學(xué)校教務(wù)部門的辦公軟件 運(yùn)用此軟件 可以免去工作人員繁忙而 枯燥的手工排課過程 直接通過計算機(jī)進(jìn)行排課 我的任務(wù)是完成排課系統(tǒng)的界面設(shè)計以及排課后 報表的生成 2 2 開發(fā)工具的選擇和介紹 針對目前世界上流行的大量軟件和開發(fā)工具 經(jīng)過認(rèn)真分析其優(yōu)缺點 結(jié)合排課系統(tǒng)的需要 和目前的硬件環(huán)境 我們選用微軟 WINDOWS 平臺下的 Visual Basic 6 0 簡寫為 VB6 0 作為軟件 開發(fā)工具和 SQL Server 2000 數(shù)據(jù)庫進(jìn)行連接 作為數(shù)據(jù)庫系統(tǒng)的開發(fā) Visual Basic 是一個非常理想選擇 Visual Basic 是一種可視化的 面 對對象和條用事件驅(qū)動方式的結(jié)構(gòu)化高級程序設(shè)計 可用于開發(fā) Windows 環(huán)境下的應(yīng)用程序 它 簡單易學(xué) 效率高 且功能強(qiáng)大 可以與 Windows 的專業(yè)開發(fā)工具 SDK 相媲美 而且程序開發(fā)人 員不必具有 C C 編程基礎(chǔ) 在 Visual Basic 環(huán)境下 利用事件驅(qū)動的編程機(jī)制 新穎易用的可視 化設(shè)計工具 使用 Windows 內(nèi)部的應(yīng)用程序接口 API 函數(shù) 以及動態(tài)鏈接庫 DLL 動態(tài)數(shù)據(jù)交 換 DDE 對象的鏈接與嵌入 OLE 開放式數(shù)據(jù)訪問 ODBC 等技術(shù) 可以高效 快速地開發(fā)出 Windows 環(huán)境下功能強(qiáng)大 圖形界面豐富的應(yīng)用軟件系統(tǒng) 總的來說 Visual Basic 具有以下特點 1 可視化編程 可視化編程 用傳統(tǒng)程序設(shè)計語言設(shè)計程序時 都是通過編寫程序代碼來設(shè)計用戶界面 在設(shè)計過程中看 不到界面的實際顯示效果 必須編譯后運(yùn)行程序才能觀察 如果對界面的效果不滿意 還要回到程 序中修改 有時候 這種編程 編譯 修改的操作可能要反復(fù)多次 大大影響了軟件開發(fā)效率 Visual Basic 提供了可視化設(shè)計工具 把 Windows 界面設(shè)計的復(fù)雜性 封裝 起來 開發(fā)人員不必為 界面設(shè)計而編寫大量程序代碼 只需要按設(shè)計要求的屏幕布局 用系統(tǒng)提供的工具 在屏幕上畫出 各種 部件 即圖形對象 并設(shè)置這些圖形對象的屬性 Visual Basic 自動產(chǎn)生界面設(shè)計代碼 程 序設(shè)計人員只需要編寫實現(xiàn)程序功能的那部分代碼 從而可以大大提高程序設(shè)計的效率 2 面向?qū)ο蟮某绦蛟O(shè)計 面向?qū)ο蟮某绦蛟O(shè)計 學(xué)院工學(xué)學(xué)士學(xué)位論文 第二章 可行性研究 第 3 頁 共 50 頁 4 0 版 以后的 Visual Basic 支持面向?qū)ο蟮某绦蛟O(shè)計 但它與一般的面向?qū)ο蟮某绦蛟O(shè)計語言 C 不完全相同 在一般的面向?qū)ο蟪绦蛟O(shè)計語言中 對象由程序代碼和數(shù)據(jù)組成 是抽象的概 念 而 Visual Basic 則是應(yīng)用面向?qū)ο蟮某绦蛟O(shè)計方法 OOP 把程序和數(shù)據(jù)封裝起來作為一個對 象 并為每個對象賦予應(yīng)有的屬性 使對象成為實在的東西 在設(shè)計對象時 不必編寫建立和描述 每個對象的程序代碼 而是用工具畫在界面上 Visual Basic 自動生成對象的程序代碼并封裝起來 每個對象以圖形方式顯示在界面上 都是可視的 3 結(jié)構(gòu)化程序設(shè)計語言 結(jié)構(gòu)化程序設(shè)計語言 Visual Basic 是在 BASIC 語言的基礎(chǔ)上發(fā)展起來的 具有高級程序設(shè)計語言的語句結(jié)構(gòu) 接 近于自然語言和人類的邏輯思維方式 Visual Basic 語句簡單易懂 其編輯器支持彩色代碼 可自 動進(jìn)行語法錯誤檢查 同時具有功能強(qiáng)大且使用靈活的調(diào)試器和編譯器 Visual Basic 是解釋型語 言 在輸入代碼的同時 解釋系統(tǒng)將高級語言分解翻譯成計算機(jī)可以識別的機(jī)器指令 并判斷每個 語句的語法錯誤 在設(shè)計 Visual Basic 程序的過程中 隨時可以運(yùn)行程序 而在整個程序設(shè)計好之 后 可以編譯生成可執(zhí)行文件 EXE 脫離 Visual Basic 環(huán)境 直接在 Windows 環(huán)境下運(yùn)行 4 事件驅(qū)動編程機(jī)制 事件驅(qū)動編程機(jī)制 Visual Basic 通過事件來執(zhí)行對象的操作 一個對象可能會產(chǎn)生多個事件 每個事件都可以通 過一段程序來響應(yīng) 例如 命令按鈕是一個對象 當(dāng)用戶單擊該按鈕時 將產(chǎn)生一個 單擊 CLICK 事件 而在產(chǎn)生該事件時將執(zhí)行一段程序 用來實現(xiàn)指定的操作 在用 Visual Basic 設(shè)計大型應(yīng)用軟件時 不必建立具有明顯開始和結(jié)束的程序 而是編寫若干 個微小的子程序 即過程 這些過程分別面向不同的對象 由用戶操作引發(fā)某個事件來驅(qū)動完成某 種特定的功能 或者由事件驅(qū)動程序調(diào)用通用過程來執(zhí)行指定的操作 這樣可以方便編程人員 提 高效率 5 訪問數(shù)據(jù)庫 訪問數(shù)據(jù)庫 Visual Basic 具有強(qiáng)大的數(shù)據(jù)庫管理功能 利用數(shù)據(jù)控件和數(shù)據(jù)庫管理窗口 可以直接建立或 處理 SQL Server 2000 數(shù)據(jù)庫 并提供了強(qiáng)大的數(shù)據(jù)存儲功能 Visual Basic 提供開放式數(shù)據(jù)連接 即 ODBC 功能 可通過直接訪問或建立連接的方式使用并操作后臺大型網(wǎng)絡(luò)數(shù)據(jù)庫 如 SQL Server Oracle 等 在應(yīng)用程序中 可以使用結(jié)構(gòu)化查詢語言 SQL 數(shù)據(jù)標(biāo)準(zhǔn) 直接訪問服務(wù)器上的 數(shù)據(jù)庫 6 對象的鏈接與嵌入 對象的鏈接與嵌入 OLE 對象的鏈接與嵌入 OLE 將每個應(yīng)用程序都看作是一個對象 object 將不同的對象鏈接 link 起來 再嵌入 embed 某個應(yīng)用程序中 從而可以得到具有聲音 影像 圖像 動畫 文字等各種 學(xué)院工學(xué)學(xué)士學(xué)位論文 第二章 可行性研究 第 4 頁 共 50 頁 信息的集合式的文件 OLE 技術(shù)是 Microsoft 公司對象技術(shù)的戰(zhàn)略 它把多個應(yīng)用程序合為一體 將每個應(yīng)用程序看作是一個對象進(jìn)行鏈接和嵌入 是一種應(yīng)用程序一體化的技術(shù) 利用 OLE 技術(shù) 可以方便地建立復(fù)合式文檔 compound document 這種文檔由來自多個不同應(yīng)用程序的對象組成 文檔中的每個對象都與原來的應(yīng)用程序相聯(lián)系 并可執(zhí)行與原來應(yīng)用程序完全相同的操作 7 動態(tài)鏈接庫 動態(tài)鏈接庫 DLL Visual Basic 是一種高級程序設(shè)計語言 不具備低級語言的功能 對訪問機(jī)器硬件的操作不太 容易實現(xiàn) 但它可以通過動態(tài)鏈接庫技術(shù)將 C C 或匯編語言編寫的程序加入到 Visual Basic 應(yīng)用 程序中 可以像調(diào)用內(nèi)部函數(shù)一樣調(diào)用其他語言編寫的函數(shù) 此外 通過動態(tài)鏈接庫 還可以調(diào)用 Windows 應(yīng)用程序接口 API 函數(shù) 實現(xiàn) SDK 所具有的功能 2 3 對現(xiàn)有的排課系統(tǒng)的分析 隨著我國市場經(jīng)濟(jì)的快速發(fā)展和信息化水平的不斷提高 如何利用先進(jìn)的管理手 段 提高教育單位教學(xué)排課管理的水平 是當(dāng)今社會所面臨的一個課題 提高教育管 理水平 必須全方位地提高教育管理意識 只有高標(biāo)準(zhǔn) 高質(zhì)量的管理才能滿足教育 事業(yè)的發(fā)展需求 面對信息時代的挑戰(zhàn) 利用高科技手段來提高教學(xué)排課管理無疑是 一條行之有效的途徑 在某種意義上 信息與科技在教學(xué)管理與現(xiàn)代化建設(shè)中顯現(xiàn)出 越來越重要的地位 教學(xué)排課管理方面的信息化與科學(xué)化 已成為現(xiàn)代化生活水平步 入高臺階的重要標(biāo)志 有關(guān)排課管理系統(tǒng)的軟件市面上有不少 教學(xué)管理人員也試用過一些 但總覺得不是很好用 不能完全滿足我們的要求 所以都放棄用這些軟件了 改為每次輸入數(shù)據(jù)后 用手工更改數(shù)據(jù)庫存 量和安排課程 另外課表也無法用限制條件自動生成 以及直接導(dǎo)出到 EXCLE 表中 所以 迫切希 望有一套完全適合排課管理應(yīng)用的軟件 以減輕管理人員的工作負(fù)擔(dān) 另一方面由于這類軟件大多數(shù)是單機(jī)版的 現(xiàn)在也有不少是網(wǎng)絡(luò)板的 但大部份都是在本地 網(wǎng)絡(luò)上運(yùn)行的 因此系統(tǒng)的開發(fā)方向應(yīng)當(dāng)是面向網(wǎng)絡(luò)版的排課管理系統(tǒng)開發(fā) 這點在今后的學(xué)習(xí)中 將不斷完善 學(xué)院工學(xué)學(xué)士學(xué)位論文 第二章 可行性研究 第 5 頁 共 50 頁 2 4 系統(tǒng)的邏輯模型 2 4 1 系統(tǒng)結(jié)構(gòu)圖 圖 2 1 系統(tǒng)結(jié)構(gòu)圖 Chart 2 1 Structure system 2 4 2 系統(tǒng)流程圖 為了實現(xiàn)管理信息系統(tǒng)的計算機(jī)化 僅僅用文字來描述信息的流動和存儲還遠(yuǎn)遠(yuǎn)不夠 還要 進(jìn)一步調(diào)查分析舍去物質(zhì)流 抽象出信息流 繪制出數(shù)據(jù)流程圖 并對各種數(shù)據(jù)的屬性和各項處理 功能進(jìn)行詳細(xì)分析 系統(tǒng)分析的主要成果是系統(tǒng)的邏輯模型 本系統(tǒng)主要是以數(shù)據(jù)流圖 數(shù)據(jù)字典 和 E R 圖為主要描述工具來勾畫系統(tǒng)的概貌 數(shù)據(jù)流圖 DFD data flow diagram 是描述數(shù)據(jù)處理過程的有力工具 數(shù)據(jù)流圖從數(shù)據(jù)傳遞 和加工的角度 以圖形的方式刻畫數(shù)據(jù)流從輸入到輸出的移動變換過程 用戶登錄身份驗證 正確用戶 讀數(shù)據(jù) 用戶 登錄 功能 模塊 的使 用 數(shù)據(jù)庫 排課系 統(tǒng) 排課編 輯 自動生成 課表 查詢打印 課表 系統(tǒng)數(shù)據(jù)初始 化 退出系統(tǒng) 幫助 編輯班級 信息編輯教室 信息編輯教師 信息編輯教學(xué) 計劃 查詢班級 課程表查詢教室 課程表 表 查詢教師 課程表 學(xué)院工學(xué)學(xué)士學(xué)位論文 第二章 可行性研究 第 6 頁 共 50 頁 寫數(shù)據(jù) 圖 2 2 系統(tǒng)流程圖 Chart 2 2 System diagram 2 4 3 數(shù)據(jù)字典 名字 班級編號 描述 唯一地標(biāo)識班級庫表中一個特定班級的關(guān)鍵域 定義 班級編號 10 char 位置 編輯班級信息 課程信息 教學(xué)計劃 班級課程表 名字 教室編號 描述 唯一地標(biāo)識教室?guī)毂碇幸粋€特定教室的關(guān)鍵域 定義 教室編號 10 char 位置 編輯教室信息 教室課程表 名字 教師編號 描述 唯一地標(biāo)識教師庫表中一個特定教師的關(guān)鍵域 定義 教師編號 10 char 位置 編輯教師信息 教學(xué)計劃 教師課程表 名字 學(xué)院編號 描述 唯一地標(biāo)識學(xué)院庫表中一個特定學(xué)院的關(guān)鍵域 定義 學(xué)院編號 10 char 位置 編輯教師信息 名字 班級課程表 描述 每學(xué)期一個確定班級的上課情況信息表 學(xué)院工學(xué)學(xué)士學(xué)位論文 第二章 可行性研究 第 7 頁 共 50 頁 定義 班級課程表 班級名稱 課程名稱 上課地點 位置 輸出到打印機(jī) 名字 課程編號 描述 唯一地標(biāo)識課程庫表中一門特定課程的關(guān)鍵域 定義 課程編號 10 char 位置 編輯課程信息 教學(xué)計劃 名字 教室課程表 描述 每學(xué)期一個確定教室的上課時間安排情況信息表 定義 教室課程表 教室名稱 班級名稱 位置 輸出到打印機(jī) 名稱 教師課程表 描述 每學(xué)期每個教師的上課情況信息表 定義 教師課程表 教師姓名 課程名稱 班級名稱 教室名稱 位置 輸出到打印機(jī) 2 5 系統(tǒng)的可行性 2 5 1 經(jīng)濟(jì)可行性分析 本系統(tǒng)開發(fā)簡單但要耗去一定的時間 所用的開發(fā)工具和軟件都差不多是免費(fèi)的 本系統(tǒng)在以后的使用中對于教育辦公自動化管理 節(jié)省教育人力 物力資源等都有很 大的幫助 由此可見 開發(fā)此系統(tǒng)在經(jīng)濟(jì)上是完全可行的 2 5 2 操作可行性分析 如今的計算機(jī)已經(jīng)走進(jìn)千家萬戶 硬件成本的下降 導(dǎo)致計算機(jī)購買成本的降低 我的這套系 統(tǒng)是利用自己的計算機(jī)加微軟的集成開發(fā)環(huán)境 Microsoft Visual Basic6 0 作為軟件的開發(fā)平臺和 SQL 學(xué)院工學(xué)學(xué)士學(xué)位論文 第二章 可行性研究 第 8 頁 共 50 頁 Server 2000 數(shù)據(jù)庫連接 使開發(fā)出來的系統(tǒng)有直觀的用戶界面 有良好的安全性設(shè)置 有詳細(xì)的操 作說明書 這樣更使各類用戶很快地掌握系統(tǒng)的使用方法和操作 因此在操作上是可行的 2 5 3 技術(shù)可行性分析 從目前 IT 業(yè)界比較流行的數(shù)據(jù)庫開發(fā) 管理軟件來看 對于比較簡單的中小型數(shù)據(jù)庫 VB 和 SQL Server 2000 的結(jié)合無疑是在實際應(yīng)用中較為成功的一種解決方案 為用戶提供了業(yè)界軟件 開發(fā)一直堅持的操作簡單的用戶界面 完善強(qiáng)大的數(shù)據(jù)庫操作功能和簡潔明了的數(shù)據(jù)庫接口 所以 技術(shù)實行起來相對會容易 2 6 成本效益分析 本系統(tǒng)的開發(fā)平臺和開發(fā)工具都是免費(fèi)提供的 所以不存在經(jīng)濟(jì)成本問題 由于本軟件還處 于開發(fā)初期 所開發(fā)出的軟件需要不斷的修改和維護(hù) 就效益而言 它取代了傳統(tǒng)的手工排課方式 節(jié)省了人力和時間 如果要創(chuàng)造更高的效益需要對系統(tǒng)進(jìn)行更多的優(yōu)化 學(xué)院工學(xué)學(xué)士學(xué)位論文 第三章 需求分析 第 9 頁 共 50 頁 第三章 需求分析 3 1 系統(tǒng)的運(yùn)行環(huán)境要求 3 1 1 硬件要求 1 486 DX66Mhz 以上 CPU 2 內(nèi)存 16M 以上 使用 Windows NT 需要 32M 以上內(nèi)存 3 硬盤容量 1GB 以上 典型安裝需要 128MB 硬盤空間 完全安裝須要 147MB 硬盤空間 外加 Microsoft 開發(fā)者文檔 67MB 硬盤空間 4 VGA 以上分辨率的顯示器 5 一個 CD ROM 驅(qū)動器 6 鼠標(biāo) 打印機(jī) 3 1 2 軟件要求 1 操作系統(tǒng)應(yīng)使用 Microsoft Windows95 及以上版本或者更高版本 2 安裝有 Visual Basic 語言及 SQL Server2000 數(shù)據(jù)庫 3 2 系統(tǒng)的功能要求 利用計算機(jī)實現(xiàn)計算機(jī)自動排課管理勢在必行 對于教育單位來說 利用計算機(jī)支持其高效 率完成排課管理的日常事務(wù) 是適應(yīng)現(xiàn)代教學(xué)制度要求 推動教學(xué)管理走向科學(xué)化 規(guī)范化的必要 條件 而排課管理是一項瑣碎 復(fù)雜而又十分細(xì)致的工作 課表信息錄入 教師授課安排 限制條件 輸入 課表的自動生成等管理 一般不允許出錯 如果實行手工操作 須手工填制大量的表格 這就會耗 費(fèi)教育工作人員大量的時間和精力 計算機(jī)進(jìn)行排課工作的管理 不僅能夠保證各項信息準(zhǔn)確無誤 快速輸出 同時計算機(jī)具有手工管理所無法比擬的優(yōu)點 例如 檢索迅速 查找方便 可靠性高 存 儲量大 保密性好 壽命長 成本低等 這些優(yōu)點能夠極大地提高排課管理的效率 也是教育的科 學(xué)化 正規(guī)化管理 與世界接軌的重要條件 學(xué)院工學(xué)學(xué)士學(xué)位論文 第三章 需求分析 第 10 頁 共 50 頁 3 3 系統(tǒng)的性能要求 本系統(tǒng)在性能上應(yīng)達(dá)到如下要求 系統(tǒng)軟件運(yùn)行應(yīng)該速度快 穩(wěn)定 可靠 具有很高的健壯性和容錯 糾錯能力 系統(tǒng)軟件操作上應(yīng)簡單 方便 界面簡潔明了 美觀 系統(tǒng)軟件應(yīng)能具有較高的安全性 對內(nèi)對外都有嚴(yán)格的身份認(rèn)證和數(shù)據(jù)保密的措施 系統(tǒng)軟件在結(jié)構(gòu)上應(yīng)具有很好的可擴(kuò)展性 便于將來的功能擴(kuò)展和維護(hù) 數(shù)據(jù)計算準(zhǔn)確無誤 精確度符合業(yè)務(wù)的需要 3 3 1 E R 圖 1 教師 E R 圖 圖 3 1 教師 E R Chart 3 1 the diagram of teacher s E R 2 班級 E R 圖 教師 教師編號姓名職稱 班級 學(xué)院 班級編號 專業(yè) 班級人數(shù) 學(xué)院工學(xué)學(xué)士學(xué)位論文 第三章 需求分析 第 11 頁 共 50 頁 圖 3 2 班級 E R Chart 3 2 the diagram of class E R 3 課程 E R 圖 圖 3 3 課程 E R Chart 3 3 the diagram of course s E R 4 教室 E R 圖 圖 3 4 教室 E R Chart 3 4 the diagram of classroom s E R 課程 課名學(xué)時 課程編號 教室名稱 容納人數(shù) 教室編號 教室 學(xué)院工學(xué)學(xué)士學(xué)位論文 第四章 總體設(shè)計 第 12 頁 共 50 頁 第四章 總體設(shè)計 4 1 模塊設(shè)計 模塊是軟件結(jié)構(gòu)的基礎(chǔ) 軟件結(jié)構(gòu)的好壞完全由模塊的屬性體現(xiàn)出來 把軟件模塊化的目的 是為了降低軟件復(fù)雜性 使軟件設(shè)計 測試 調(diào)試 維護(hù)等工作變得簡易 但隨著模塊數(shù)目的增加 通過接口連接這些模塊的工作量也隨之增加 從這些特性可得出如圖的一條總的成本 或工作量 曲線 在考慮模塊化時 應(yīng)盡量使模塊數(shù)接近于圖中的 M 它使得研制成本最小 而且應(yīng)盡量避免 不足的模塊化或超量 圖 4 1 模塊與成本關(guān)系圖 Chart 4 1 Relation between module and cost 基于上述原因 在進(jìn)行總體規(guī)劃的初步設(shè)想中 以高校各種資源和資源的分配為依據(jù) 綜合 多種相關(guān)因素 將該系統(tǒng)劃分成以下六個子功能模塊 基本信息管理子系統(tǒng) 用戶管理子系統(tǒng) 數(shù) 據(jù)管理子系統(tǒng) 教學(xué)計劃管理子系統(tǒng) 排課管理子系統(tǒng) 課表查詢子系統(tǒng) 在數(shù)據(jù)庫設(shè)計上 遵循 功能分離 數(shù)據(jù)共享 的原則 將數(shù)據(jù)庫分成基礎(chǔ)數(shù)據(jù)庫及目標(biāo)數(shù)據(jù)庫兩大部分 其中 基礎(chǔ)數(shù)據(jù) 庫又可分為初始設(shè)置信息庫 基本信息庫 用戶信息庫三個功能子庫 目標(biāo)庫主要存放系統(tǒng)運(yùn)行過 程中的動態(tài)數(shù)據(jù) 目標(biāo)方案等 4 2 功能分解 基本信息管理子系統(tǒng)功能 班級信息 教室信息和教室信息的添加 保存 編輯和刪除 學(xué)院工學(xué)學(xué)士學(xué)位論文 第四章 總體設(shè)計 第 13 頁 共 50 頁 1 用戶管理子系統(tǒng)功能 用戶密碼的設(shè)置和修改 用戶權(quán)限的設(shè)置 用戶重新登陸 2 數(shù)據(jù)管理子系統(tǒng)功能 包括對教室 教師 班級 教學(xué)計劃和課表數(shù)據(jù)的保存 查詢 更 新 刪除 3 教學(xué)計劃管理子系統(tǒng)功能 某一確定的學(xué)期的教學(xué)工作計劃 對于班級而言 每門課程的 學(xué)時 開始周 結(jié)束周以及每門課程的任課教師 該子系統(tǒng)對教學(xué)計劃進(jìn)行管理和完善 4 排課管理子系統(tǒng)功能 包括自動排課 手動排課兩個部分 5 課表查詢子系統(tǒng)功能 對于具體的班級 教師 教室進(jìn)行課表查詢 打印 4 3 數(shù)據(jù)庫設(shè)計 排課管理系統(tǒng)是一項復(fù)雜的系統(tǒng)工程 其間需要大量的數(shù)據(jù)來支撐 從某種程度上來講 排 課管理系統(tǒng)的設(shè)計過程 其實也就是一個規(guī)范和完整的數(shù)據(jù)庫設(shè)計過程 經(jīng)過多年的發(fā)展 關(guān)系型 數(shù)據(jù)庫系統(tǒng) RDBMS 是最成熟的一種數(shù)據(jù)庫管理模式 也是當(dāng)前最流行的數(shù)據(jù)庫管理系統(tǒng) 故 在此也采用該模式 在加一些關(guān)系數(shù)據(jù)庫的介紹 4 3 1 定義屬性表 1 bClass 表 字段名稱字段名稱類類 型型字段大小字段大小說說 明明 ClassID字 符班級編號 ClassName文 本16班級名稱 DepID文 本16學(xué)院編號 SpecID文 本16專業(yè)編號 ClassStuNum整 型4班級人數(shù) 圖 4 2 班級表 Chart 4 2 Class table 2 bClassRoom 表 字段名稱字段名稱類類 型型說說 明明 ClassRoomID字 符教室編號 字段大小 10 ClassRoomName文 本教室名稱 字段大小 16 學(xué)院工學(xué)學(xué)士學(xué)位論文 第四章 總體設(shè)計 第 14 頁 共 50 頁 ClassTypeID字 符教室類型 字段大小 16 ClassRoomStuNum整 型容納人數(shù) 字段大小 4 BuildingID字 符教學(xué)樓編號 字段大小 10 ClassRoomFlag整 型教室標(biāo)識符 字段大小 4 圖 4 3 教室表 Chart 4 3 Classroom table 3 bCourse 表 字段名稱字段名稱類類 型型說說 明明 CourseID字 符課程編號 字段大小 10 CourseName字 符課程名稱 字段大小 20 CourseYXJ字 符課程優(yōu)先級 字段大小 10 ClassID字 符班級編號 字段大小 10 CourseFlag整 型課程標(biāo)識符 字段大小 4 圖 4 4 課程表 Chart 4 4 Course table 4 bTeacher 表 字段名稱字段名稱類類 型型說說 明明 TeacherID字 符教師編號 字段大小 10 TeacherName文 本教師名稱 字段大小 16 DepID文 本學(xué)院編號 字段大小 16 CourseID字 符課程編號 字段大小 10 圖 4 5 教師表 Chart 4 5 Teacher table 5 bTeachPlan 表 字段名稱字段名稱類類 型型說說 明明 CourseID字 符課程編號 字段大小 10 學(xué)院工學(xué)學(xué)士學(xué)位論文 第四章 總體設(shè)計 第 15 頁 共 50 頁 CourseName文 本課程名稱 字段大小 16 TeacherID字 符教師編號 字段大小 10 TeacherName文 本教師名稱 字段大小 16 WeekNum字 符周學(xué)時 字段大小 10 CourseNum字 符總學(xué)時 字段大小 10 圖 4 6 教師計劃表 Chart 4 6 Reach plan table 6 bTempTable 表 字段名稱字段名稱類類 型型說說 明明 ClassID字 符班級編號 字段大小 10 CourseID字 符課程編號 字段大小 10 TeacherID字 符教師編號 字段大小 10 ClassRoomID字 符教室編號 字段大小 10 TTime整 型時間標(biāo)識 字段大小 4 Week整 型周數(shù) 字段大小 4 圖 4 7 臨時表 Chart 4 7 Temporary table 4 4 排課系統(tǒng)總構(gòu)架 基本信息錄入 資源要求設(shè)置 開始排課 優(yōu)先級高先排 檢查排課沖突 學(xué)院工學(xué)學(xué)士學(xué)位論文 第四章 總體設(shè)計 第 16 頁 共 50 頁 圖 4 8 系統(tǒng)總架構(gòu) Chart 4 8 System frame 生成課表查詢課表 打印課表 學(xué)院工學(xué)學(xué)士學(xué)位論文 第五章 詳細(xì)設(shè)計 第 17 頁 共 50 頁 第五章 詳細(xì)設(shè)計及代碼設(shè)計 5 1 用戶界面設(shè)計 隨著視窗操作系統(tǒng)的全面推廣和流行 如今 GUI 已經(jīng)成為業(yè)界用戶接口的一個標(biāo)準(zhǔn) 在本系 統(tǒng)的設(shè)計過程中 也按照 GUI 的設(shè)計原則來設(shè)計用戶接口 給用戶提供一個友好的人機(jī)交互界面 具體來說 將按照以下幾點原則來設(shè)計 5 1 1 簡單易用和個性化需求 無論什么系統(tǒng) 面向什么使用者 都應(yīng)該以簡單易用而不顯枯燥為標(biāo)準(zhǔn) 本系統(tǒng)使用圖形化 的用戶界面 整個界面功能鍵的設(shè)定和窗體布局 完全具有獨(dú)特統(tǒng)一的風(fēng)格 5 1 2 對數(shù)據(jù)的查詢 查詢是信息系統(tǒng)中不可缺少的功能 本系統(tǒng)設(shè)計的是一種可對任意指定的表 按所有字段進(jìn) 行的查詢 查詢的結(jié)果 在本系統(tǒng)中用數(shù)據(jù)窗口對象顯示輸出 對于查詢的結(jié)果 用戶也可以根據(jù) 自己的需求 選擇顯示的字段和設(shè)計自己的視圖 當(dāng)然 系統(tǒng)下一步應(yīng)該提供的功能就是根據(jù)查詢 結(jié)果 生成各式各類的報表 5 1 3 系統(tǒng)菜單功能 在實際的系統(tǒng)設(shè)計中 菜單可分為兩種類型 即下拉式菜單和彈出式菜單 下拉式菜單系統(tǒng)中 一 般有一個主菜單 其中包括若干個選擇項 主菜單單的每一項又可下拉出下一級子菜單 這樣用一個個 的窗口的形式彈出在屏幕上 它是通過菜單編輯器建立 其步驟如下 1 選取要建立菜單的窗體 2 從 工具 菜單中 選取 菜單編輯器 建立如下圖所示的系統(tǒng)主菜單 學(xué)院工學(xué)學(xué)士學(xué)位論文 第五章 詳細(xì)設(shè)計 第 18 頁 共 50 頁 圖 5 1 菜單編輯 Chart 5 1 Menu edit 基本信息輸入 基本信息輸入菜單是讓錄入員輸入和修改課程信息 班級信息 教師信息 教室信息基 本數(shù)據(jù) 數(shù)據(jù)管理包括課程 班級 教師 教室 課表數(shù)據(jù)的查詢 打印 班級信息中包括班級編號 班級名稱 班級人數(shù)以及添加 保存 查詢 編輯 刪除等 功能 如下為班級信息的界面 圖 5 2 班級信息界面 學(xué)院工學(xué)學(xué)士學(xué)位論文 第五章 詳細(xì)設(shè)計 第 19 頁 共 50 頁 Chart 5 2 Interface of class information 教師信息中包括教師編號 教師姓名 職稱以及添加 保存 查詢 5 2 課程表的生成 5 2 1 班級課程表查詢打印設(shè)計 經(jīng)過信息錄入和復(fù)雜的排課過程 終于到了生成課程表的輸出后期階段 顯示出完整的課程 表是我們的最終目的 本系統(tǒng)是直接將課程表到入 EXCEL 表格中 使表格的形式更加美觀 所用 工具用戶非常熟悉 如下是班級課表查詢界面 圖 5 3 班級課表查詢界面 Chart 5 3 Interface of inquire class table 通過輸入確定的班級編號 來搜索某一具體班級的課程表 若你忘記班級的編號 可以通過 界面上的班級編號與班級名稱對照表查詢班級編號 當(dāng)確定好你所要查詢的班級后 點擊 查詢課 程表 按鈕 就可以查詢該班的課程表了 學(xué)院工學(xué)學(xué)士學(xué)位論文 第五章 詳細(xì)設(shè)計 第 20 頁 共 50 頁 圖 5 4 班級課程表界面 Chart 5 4 Interface of class table 上圖就是最終生成的班級課程表 其主要代碼如下 Private Sub Command1 Click Dim strCourseID As String Dim strClassRoomID As String Dim i As Integer j As Integer If Combo1 Text Then MsgBox 請輸入要查詢的班級編號 Exit Sub End If strSQL SELECT FROM bTempTableA where classid it simplifies a problem by identifying values that cannot participate in a solution This way the search space gets pruned and search becomes easier In practice most constraint based timetabling systems either do not support soft constraints or use a branch and bound search instead of chronological backtracking Branch and bound starts out from a solution and requires the next solution to be better Quality is measured by a suitable cost function that depends on the set of violated soft constraints With this approach however soft constraints play no role in selecting variables and values After collecting wishes of teacher and information on the new courses a first proposal is developed with the timetable of the previous year as a starting point This is done by using free slots in the timetable left by courses not taking place again for new courses offered by the same people whereas wishes of teachers take precedence over the timetable of the previous year After handing out the proposal to all teachers evaluations and new wishes are collected With the current proposal as a starting point a new proposal is developed incorporating the responses on the current proposal again changing as little as possible and so on Creating a new timetable is thus a multistage incremental process Relying on the timetable of the previous year and changing as little as possible by incremental scheduling drastically reduces the amount of work necessary for creating a new timetable and ensures acceptance of the new timetable by keeping the weekly course of events people are accustomed to Note that the assignment of rooms is done elsewhere Nevertheless conflicting requirements for space or certain equipment may be a cause for changing the timetable The general constraints are due to physical laws academic reasons and personal preferences of teachers 學(xué)院工學(xué)學(xué)士學(xué)位論文 附 錄 第 44 頁 共 50 頁 A teacher cannot be in two places at the same time so avoid clashing the courses of a teacher There should be at least a one hour break between two courses of a teacher Some teachers prefer certain times or days for teaching Monday afternoon is reserved for professors meetings Do not schedule professors courses for Monday afternoon The department consists of five units each dedicated to a certain area of research Most courses are held by members of a single unit while only a few courses are held by members of different units Courses held by members of a certain unit must not clash with courses held by other members of the same unit An offering typically consists of two lectures and a tutorial per week There should be a day break between the lectures of an offering The tutorial should not take place on a day on which a lecture of the same offering takes place All courses should be scheduled between9 a m and6 p m No lectures should be scheduled for Friday afternoon No tutorials should be scheduled for late Friday afternoon Only few of the courses are mandatory for and dedicated to students of a certain term while most courses are optional and open to all students For each term of the undergraduate studies there is a set of mandatory courses the attendance of which is highly recommended Courses of the graduate studies only rely on the knowledge provided by courses of the undergraduate studies There is no recommended order of attendance Undergraduate courses of a term must not clash while undergraduate courses of different terms are allowed to clash Graduate courses should not clash First observations made clear that existing timetables do not meet the requirements stated e g courses of a unit or graduate courses clash or a lecture of an offering and a tutorial of the same offering are scheduled for the same day Furthermore considering the number of graduate courses offered over the years it became clear that there is too little space to schedule all graduate courses without clashes This is due to the following reason As mentioned before undergraduate courses are mandatory and there is a recommended order of attendance This way it is possible to distinguish students of the first term from students of the third term and students of the second term from students of the fourth term which makes it possible to allow clashing of undergraduate courses of different terms The graduate courses only rely on the knowledge provided by the undergraduate courses There is no recommended order of attendance thus making it impossible to distinguish students of the fifth term from students of the seventh term which makes it necessary to disallow clashing of graduate courses in some way So we faced two problems The demand for incremental scheduling by basing the new timetable on the timetable of the previous year and changing as little as possible made it necessary to handle old timetables which do not meet the requirements stated From a scheduler s point of view the graduate studies lack structure taking freedom and leading to over constrained timetable specifications Tackling the second problem by removing selected no clash constraints turned out to be laborious and time consuming and therefore i

溫馨提示

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

評論

0/150

提交評論