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

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

摘 要 I 排課系統(tǒng) 摘 要 排課問題是所有教育行業(yè)都要面對的問題 尤其針對高校紛繁復雜的課程和專業(yè) 一直沒有 很好解決方法 但這又是每個學校在每個學期都會碰到的必修課 本文在相關理論的指導下 在分 析以往一些排課軟件的基礎上 提出一種排課系統(tǒng)的設計方法 對一些具體的問題給出相應解決方 案 希望對于相關部門有所幫助 此系統(tǒng)主要被分為三個部分 界面的設計 排課算法的設計 以 及報表的自動生成 縱觀全局 我們確定用 Visual Basic 語言作為程序設計語言以及運用 SQL Server 2000 數據庫作為后臺的數據庫支持 關鍵詞 關鍵詞 排課 排課系統(tǒng) 設計 高校 學院工學學士學位論文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 學院工學學士學位論文 摘要 1 目 錄 摘 要 I ABSTRACT II 第一章 引言 1 第二章 可行性研究 3 2 1 系統(tǒng)目標及任務 3 2 2 開發(fā)工具的選擇和介紹 3 2 3 對現有的排課系統(tǒng)的分析 5 2 4 系統(tǒng)的邏輯模型 6 2 4 1 系統(tǒng)結構圖 6 2 4 2 系統(tǒng)流程圖 6 2 4 3 數據字典 7 2 5 系統(tǒng)的可行性 8 2 5 1 經濟可行性分析 8 2 5 2 操作可行性分析 9 2 5 3 技術可行性分析 9 2 6 成本效益分析 9 第三章 需求分析 10 3 1 系統(tǒng)的運行環(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 第四章 總體設計 13 4 1 模塊設計 13 學院工學學士學位論文 摘要 2 4 2 功能分解 14 4 3 數據庫設計 14 4 3 1 定義屬性表 14 4 4 排課系統(tǒng)總構架 16 第五章 詳細設計 17 5 1 用戶界面設計 17 5 1 1 簡單易用和個性化需求 17 5 1 2 對數據的查詢 17 5 1 3 系統(tǒng)菜單功能 17 5 2 課程表的生成 19 5 2 1 班級課程表查詢打印設計 19 5 2 2 教師課程表查詢打印設計 25 5 2 3 教室課程表查詢打印設計 31 第六章 測試 37 6 1 排課系統(tǒng)功能測試 37 6 2 排課系統(tǒng)課表合理性測試 37 6 3 該系統(tǒng)的不足和改進方案 37 第七章 總結 39 7 1 軟件設計小結 39 參考文獻 40 附 錄 41 SURVEY REPORT 45 學院工學學士學位論文 第一章 引言 第 1 頁 共 50 頁 第一章 引言 隨著信息技術的飛速發(fā)展 各個行業(yè)的信息化勢在必行 正所謂 科學技術是第一 生產力 科技的進步大大地提高了生產率 然而 在高校這個知識密集的地方 如何 才能提高辦學效率 更好地完成教學任務 跟上社會發(fā)展步伐 這是一個擺在教學工 作者面前的一個迫切的問題 應用信息化來改造傳統(tǒng)的教學管理模式是一個重要途徑 近幾年來 隨著各高校辦公自動化工作的推進 教務管理自動化也被擺上了日程 在教務工作中占有很大比重的一項就是每學期的課程排定工作 由于教工 教室和設 備的相對緊張 如何進行合理地安排和分配 從而充分利用教學資源是我們不得不面 對的問題 排課系統(tǒng)正是為了減輕教務人員的工作量 實現教務工作自動化 解決排課這一老大難問題 的教務辦公軟件 尤其針對高校的排課一直都沒有很好的解決方法 但是此問題又是每個學校在每 個學期都會碰到的必要行政作業(yè) 本文在相關理論的指導下 在分析以往一些排課軟件的基礎上 提出一個高校通用排課系統(tǒng)的設計方法 并對一些具體的問題給出相應解決方案 但是 由于技術 經驗的有限和數據量過大 目前我們很難做出一個滿足所有需要的排課系統(tǒng) 因為它不僅要考慮到 教室沖突問題和教師沖突問題 還要考慮到分段課 單雙周課時的資源利用問題 另外由于高校的 教學特點 還要處理合班課 分班課 體育課與選修課等特殊課程 針對這些問題 在此專門對數 據庫設計作了一些探索 并于架構的選擇和模塊的劃分上經過精心調整 在菜單的設計上也體現了 人性化的操作 該設計貼近用戶需求 功能完整 架構合理 并用大量的框圖模型體現了系統(tǒng)的規(guī) 劃 本軟件使用 Microsoft Basic 6 0 進行編寫和 SQL Server 2000 數據庫相連接 數據庫的特點 1 實現數據共享 2 實現數據獨立 3 減少了數據冗余度 4 避免了數據不一致性 5 加強了對數據的保護 一個數據庫應用系統(tǒng)通常是由數據庫和應用程序兩部分組成 它們是在數據庫管理系統(tǒng)支持下設計 和開發(fā)出來的 學院工學學士學位論文 第二章 可行性研究 第 2 頁 共 50 頁 第二章 可行性研究 2 1 系統(tǒng)目標及任務 本軟件主要是適用于高等學校教務部門的辦公軟件 運用此軟件 可以免去工作人員繁忙而 枯燥的手工排課過程 直接通過計算機進行排課 我的任務是完成排課系統(tǒng)的界面設計以及排課后 報表的生成 2 2 開發(fā)工具的選擇和介紹 針對目前世界上流行的大量軟件和開發(fā)工具 經過認真分析其優(yōu)缺點 結合排課系統(tǒng)的需要 和目前的硬件環(huán)境 我們選用微軟 WINDOWS 平臺下的 Visual Basic 6 0 簡寫為 VB6 0 作為軟件 開發(fā)工具和 SQL Server 2000 數據庫進行連接 作為數據庫系統(tǒng)的開發(fā) Visual Basic 是一個非常理想選擇 Visual Basic 是一種可視化的 面 對對象和條用事件驅動方式的結構化高級程序設計 可用于開發(fā) Windows 環(huán)境下的應用程序 它 簡單易學 效率高 且功能強大 可以與 Windows 的專業(yè)開發(fā)工具 SDK 相媲美 而且程序開發(fā)人 員不必具有 C C 編程基礎 在 Visual Basic 環(huán)境下 利用事件驅動的編程機制 新穎易用的可視 化設計工具 使用 Windows 內部的應用程序接口 API 函數 以及動態(tài)鏈接庫 DLL 動態(tài)數據交 換 DDE 對象的鏈接與嵌入 OLE 開放式數據訪問 ODBC 等技術 可以高效 快速地開發(fā)出 Windows 環(huán)境下功能強大 圖形界面豐富的應用軟件系統(tǒng) 總的來說 Visual Basic 具有以下特點 1 可視化編程 可視化編程 用傳統(tǒng)程序設計語言設計程序時 都是通過編寫程序代碼來設計用戶界面 在設計過程中看 不到界面的實際顯示效果 必須編譯后運行程序才能觀察 如果對界面的效果不滿意 還要回到程 序中修改 有時候 這種編程 編譯 修改的操作可能要反復多次 大大影響了軟件開發(fā)效率 Visual Basic 提供了可視化設計工具 把 Windows 界面設計的復雜性 封裝 起來 開發(fā)人員不必為 界面設計而編寫大量程序代碼 只需要按設計要求的屏幕布局 用系統(tǒng)提供的工具 在屏幕上畫出 各種 部件 即圖形對象 并設置這些圖形對象的屬性 Visual Basic 自動產生界面設計代碼 程 序設計人員只需要編寫實現程序功能的那部分代碼 從而可以大大提高程序設計的效率 2 面向對象的程序設計 面向對象的程序設計 學院工學學士學位論文 第二章 可行性研究 第 3 頁 共 50 頁 4 0 版 以后的 Visual Basic 支持面向對象的程序設計 但它與一般的面向對象的程序設計語言 C 不完全相同 在一般的面向對象程序設計語言中 對象由程序代碼和數據組成 是抽象的概 念 而 Visual Basic 則是應用面向對象的程序設計方法 OOP 把程序和數據封裝起來作為一個對 象 并為每個對象賦予應有的屬性 使對象成為實在的東西 在設計對象時 不必編寫建立和描述 每個對象的程序代碼 而是用工具畫在界面上 Visual Basic 自動生成對象的程序代碼并封裝起來 每個對象以圖形方式顯示在界面上 都是可視的 3 結構化程序設計語言 結構化程序設計語言 Visual Basic 是在 BASIC 語言的基礎上發(fā)展起來的 具有高級程序設計語言的語句結構 接 近于自然語言和人類的邏輯思維方式 Visual Basic 語句簡單易懂 其編輯器支持彩色代碼 可自 動進行語法錯誤檢查 同時具有功能強大且使用靈活的調試器和編譯器 Visual Basic 是解釋型語 言 在輸入代碼的同時 解釋系統(tǒng)將高級語言分解翻譯成計算機可以識別的機器指令 并判斷每個 語句的語法錯誤 在設計 Visual Basic 程序的過程中 隨時可以運行程序 而在整個程序設計好之 后 可以編譯生成可執(zhí)行文件 EXE 脫離 Visual Basic 環(huán)境 直接在 Windows 環(huán)境下運行 4 事件驅動編程機制 事件驅動編程機制 Visual Basic 通過事件來執(zhí)行對象的操作 一個對象可能會產生多個事件 每個事件都可以通 過一段程序來響應 例如 命令按鈕是一個對象 當用戶單擊該按鈕時 將產生一個 單擊 CLICK 事件 而在產生該事件時將執(zhí)行一段程序 用來實現指定的操作 在用 Visual Basic 設計大型應用軟件時 不必建立具有明顯開始和結束的程序 而是編寫若干 個微小的子程序 即過程 這些過程分別面向不同的對象 由用戶操作引發(fā)某個事件來驅動完成某 種特定的功能 或者由事件驅動程序調用通用過程來執(zhí)行指定的操作 這樣可以方便編程人員 提 高效率 5 訪問數據庫 訪問數據庫 Visual Basic 具有強大的數據庫管理功能 利用數據控件和數據庫管理窗口 可以直接建立或 處理 SQL Server 2000 數據庫 并提供了強大的數據存儲功能 Visual Basic 提供開放式數據連接 即 ODBC 功能 可通過直接訪問或建立連接的方式使用并操作后臺大型網絡數據庫 如 SQL Server Oracle 等 在應用程序中 可以使用結構化查詢語言 SQL 數據標準 直接訪問服務器上的 數據庫 6 對象的鏈接與嵌入 對象的鏈接與嵌入 OLE 對象的鏈接與嵌入 OLE 將每個應用程序都看作是一個對象 object 將不同的對象鏈接 link 起來 再嵌入 embed 某個應用程序中 從而可以得到具有聲音 影像 圖像 動畫 文字等各種 學院工學學士學位論文 第二章 可行性研究 第 4 頁 共 50 頁 信息的集合式的文件 OLE 技術是 Microsoft 公司對象技術的戰(zhàn)略 它把多個應用程序合為一體 將每個應用程序看作是一個對象進行鏈接和嵌入 是一種應用程序一體化的技術 利用 OLE 技術 可以方便地建立復合式文檔 compound document 這種文檔由來自多個不同應用程序的對象組成 文檔中的每個對象都與原來的應用程序相聯(lián)系 并可執(zhí)行與原來應用程序完全相同的操作 7 動態(tài)鏈接庫 動態(tài)鏈接庫 DLL Visual Basic 是一種高級程序設計語言 不具備低級語言的功能 對訪問機器硬件的操作不太 容易實現 但它可以通過動態(tài)鏈接庫技術將 C C 或匯編語言編寫的程序加入到 Visual Basic 應用 程序中 可以像調用內部函數一樣調用其他語言編寫的函數 此外 通過動態(tài)鏈接庫 還可以調用 Windows 應用程序接口 API 函數 實現 SDK 所具有的功能 2 3 對現有的排課系統(tǒng)的分析 隨著我國市場經濟的快速發(fā)展和信息化水平的不斷提高 如何利用先進的管理手 段 提高教育單位教學排課管理的水平 是當今社會所面臨的一個課題 提高教育管 理水平 必須全方位地提高教育管理意識 只有高標準 高質量的管理才能滿足教育 事業(yè)的發(fā)展需求 面對信息時代的挑戰(zhàn) 利用高科技手段來提高教學排課管理無疑是 一條行之有效的途徑 在某種意義上 信息與科技在教學管理與現代化建設中顯現出 越來越重要的地位 教學排課管理方面的信息化與科學化 已成為現代化生活水平步 入高臺階的重要標志 有關排課管理系統(tǒng)的軟件市面上有不少 教學管理人員也試用過一些 但總覺得不是很好用 不能完全滿足我們的要求 所以都放棄用這些軟件了 改為每次輸入數據后 用手工更改數據庫存 量和安排課程 另外課表也無法用限制條件自動生成 以及直接導出到 EXCLE 表中 所以 迫切希 望有一套完全適合排課管理應用的軟件 以減輕管理人員的工作負擔 另一方面由于這類軟件大多數是單機版的 現在也有不少是網絡板的 但大部份都是在本地 網絡上運行的 因此系統(tǒng)的開發(fā)方向應當是面向網絡版的排課管理系統(tǒng)開發(fā) 這點在今后的學習中 將不斷完善 學院工學學士學位論文 第二章 可行性研究 第 5 頁 共 50 頁 2 4 系統(tǒng)的邏輯模型 2 4 1 系統(tǒng)結構圖 圖 2 1 系統(tǒng)結構圖 Chart 2 1 Structure system 2 4 2 系統(tǒng)流程圖 為了實現管理信息系統(tǒng)的計算機化 僅僅用文字來描述信息的流動和存儲還遠遠不夠 還要 進一步調查分析舍去物質流 抽象出信息流 繪制出數據流程圖 并對各種數據的屬性和各項處理 功能進行詳細分析 系統(tǒng)分析的主要成果是系統(tǒng)的邏輯模型 本系統(tǒng)主要是以數據流圖 數據字典 和 E R 圖為主要描述工具來勾畫系統(tǒng)的概貌 數據流圖 DFD data flow diagram 是描述數據處理過程的有力工具 數據流圖從數據傳遞 和加工的角度 以圖形的方式刻畫數據流從輸入到輸出的移動變換過程 用戶登錄身份驗證 正確用戶 讀數據 用戶 登錄 功能 模塊 的使 用 數據庫 排課系 統(tǒng) 排課編 輯 自動生成 課表 查詢打印 課表 系統(tǒng)數據初始 化 退出系統(tǒng) 幫助 編輯班級 信息編輯教室 信息編輯教師 信息編輯教學 計劃 查詢班級 課程表查詢教室 課程表 表 查詢教師 課程表 學院工學學士學位論文 第二章 可行性研究 第 6 頁 共 50 頁 寫數據 圖 2 2 系統(tǒng)流程圖 Chart 2 2 System diagram 2 4 3 數據字典 名字 班級編號 描述 唯一地標識班級庫表中一個特定班級的關鍵域 定義 班級編號 10 char 位置 編輯班級信息 課程信息 教學計劃 班級課程表 名字 教室編號 描述 唯一地標識教室?guī)毂碇幸粋€特定教室的關鍵域 定義 教室編號 10 char 位置 編輯教室信息 教室課程表 名字 教師編號 描述 唯一地標識教師庫表中一個特定教師的關鍵域 定義 教師編號 10 char 位置 編輯教師信息 教學計劃 教師課程表 名字 學院編號 描述 唯一地標識學院庫表中一個特定學院的關鍵域 定義 學院編號 10 char 位置 編輯教師信息 名字 班級課程表 描述 每學期一個確定班級的上課情況信息表 學院工學學士學位論文 第二章 可行性研究 第 7 頁 共 50 頁 定義 班級課程表 班級名稱 課程名稱 上課地點 位置 輸出到打印機 名字 課程編號 描述 唯一地標識課程庫表中一門特定課程的關鍵域 定義 課程編號 10 char 位置 編輯課程信息 教學計劃 名字 教室課程表 描述 每學期一個確定教室的上課時間安排情況信息表 定義 教室課程表 教室名稱 班級名稱 位置 輸出到打印機 名稱 教師課程表 描述 每學期每個教師的上課情況信息表 定義 教師課程表 教師姓名 課程名稱 班級名稱 教室名稱 位置 輸出到打印機 2 5 系統(tǒng)的可行性 2 5 1 經濟可行性分析 本系統(tǒng)開發(fā)簡單但要耗去一定的時間 所用的開發(fā)工具和軟件都差不多是免費的 本系統(tǒng)在以后的使用中對于教育辦公自動化管理 節(jié)省教育人力 物力資源等都有很 大的幫助 由此可見 開發(fā)此系統(tǒng)在經濟上是完全可行的 2 5 2 操作可行性分析 如今的計算機已經走進千家萬戶 硬件成本的下降 導致計算機購買成本的降低 我的這套系 統(tǒng)是利用自己的計算機加微軟的集成開發(fā)環(huán)境 Microsoft Visual Basic6 0 作為軟件的開發(fā)平臺和 SQL 學院工學學士學位論文 第二章 可行性研究 第 8 頁 共 50 頁 Server 2000 數據庫連接 使開發(fā)出來的系統(tǒng)有直觀的用戶界面 有良好的安全性設置 有詳細的操 作說明書 這樣更使各類用戶很快地掌握系統(tǒng)的使用方法和操作 因此在操作上是可行的 2 5 3 技術可行性分析 從目前 IT 業(yè)界比較流行的數據庫開發(fā) 管理軟件來看 對于比較簡單的中小型數據庫 VB 和 SQL Server 2000 的結合無疑是在實際應用中較為成功的一種解決方案 為用戶提供了業(yè)界軟件 開發(fā)一直堅持的操作簡單的用戶界面 完善強大的數據庫操作功能和簡潔明了的數據庫接口 所以 技術實行起來相對會容易 2 6 成本效益分析 本系統(tǒng)的開發(fā)平臺和開發(fā)工具都是免費提供的 所以不存在經濟成本問題 由于本軟件還處 于開發(fā)初期 所開發(fā)出的軟件需要不斷的修改和維護 就效益而言 它取代了傳統(tǒng)的手工排課方式 節(jié)省了人力和時間 如果要創(chuàng)造更高的效益需要對系統(tǒng)進行更多的優(yōu)化 學院工學學士學位論文 第三章 需求分析 第 9 頁 共 50 頁 第三章 需求分析 3 1 系統(tǒng)的運行環(huán)境要求 3 1 1 硬件要求 1 486 DX66Mhz 以上 CPU 2 內存 16M 以上 使用 Windows NT 需要 32M 以上內存 3 硬盤容量 1GB 以上 典型安裝需要 128MB 硬盤空間 完全安裝須要 147MB 硬盤空間 外加 Microsoft 開發(fā)者文檔 67MB 硬盤空間 4 VGA 以上分辨率的顯示器 5 一個 CD ROM 驅動器 6 鼠標 打印機 3 1 2 軟件要求 1 操作系統(tǒng)應使用 Microsoft Windows95 及以上版本或者更高版本 2 安裝有 Visual Basic 語言及 SQL Server2000 數據庫 3 2 系統(tǒng)的功能要求 利用計算機實現計算機自動排課管理勢在必行 對于教育單位來說 利用計算機支持其高效 率完成排課管理的日常事務 是適應現代教學制度要求 推動教學管理走向科學化 規(guī)范化的必要 條件 而排課管理是一項瑣碎 復雜而又十分細致的工作 課表信息錄入 教師授課安排 限制條件 輸入 課表的自動生成等管理 一般不允許出錯 如果實行手工操作 須手工填制大量的表格 這就會耗 費教育工作人員大量的時間和精力 計算機進行排課工作的管理 不僅能夠保證各項信息準確無誤 快速輸出 同時計算機具有手工管理所無法比擬的優(yōu)點 例如 檢索迅速 查找方便 可靠性高 存 儲量大 保密性好 壽命長 成本低等 這些優(yōu)點能夠極大地提高排課管理的效率 也是教育的科 學化 正規(guī)化管理 與世界接軌的重要條件 學院工學學士學位論文 第三章 需求分析 第 10 頁 共 50 頁 3 3 系統(tǒng)的性能要求 本系統(tǒng)在性能上應達到如下要求 系統(tǒng)軟件運行應該速度快 穩(wěn)定 可靠 具有很高的健壯性和容錯 糾錯能力 系統(tǒng)軟件操作上應簡單 方便 界面簡潔明了 美觀 系統(tǒng)軟件應能具有較高的安全性 對內對外都有嚴格的身份認證和數據保密的措施 系統(tǒng)軟件在結構上應具有很好的可擴展性 便于將來的功能擴展和維護 數據計算準確無誤 精確度符合業(yè)務的需要 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 圖 教師 教師編號姓名職稱 班級 學院 班級編號 專業(yè) 班級人數 學院工學學士學位論文 第三章 需求分析 第 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 課程 課名學時 課程編號 教室名稱 容納人數 教室編號 教室 學院工學學士學位論文 第四章 總體設計 第 12 頁 共 50 頁 第四章 總體設計 4 1 模塊設計 模塊是軟件結構的基礎 軟件結構的好壞完全由模塊的屬性體現出來 把軟件模塊化的目的 是為了降低軟件復雜性 使軟件設計 測試 調試 維護等工作變得簡易 但隨著模塊數目的增加 通過接口連接這些模塊的工作量也隨之增加 從這些特性可得出如圖的一條總的成本 或工作量 曲線 在考慮模塊化時 應盡量使模塊數接近于圖中的 M 它使得研制成本最小 而且應盡量避免 不足的模塊化或超量 圖 4 1 模塊與成本關系圖 Chart 4 1 Relation between module and cost 基于上述原因 在進行總體規(guī)劃的初步設想中 以高校各種資源和資源的分配為依據 綜合 多種相關因素 將該系統(tǒng)劃分成以下六個子功能模塊 基本信息管理子系統(tǒng) 用戶管理子系統(tǒng) 數 據管理子系統(tǒng) 教學計劃管理子系統(tǒng) 排課管理子系統(tǒng) 課表查詢子系統(tǒng) 在數據庫設計上 遵循 功能分離 數據共享 的原則 將數據庫分成基礎數據庫及目標數據庫兩大部分 其中 基礎數據 庫又可分為初始設置信息庫 基本信息庫 用戶信息庫三個功能子庫 目標庫主要存放系統(tǒng)運行過 程中的動態(tài)數據 目標方案等 4 2 功能分解 基本信息管理子系統(tǒng)功能 班級信息 教室信息和教室信息的添加 保存 編輯和刪除 學院工學學士學位論文 第四章 總體設計 第 13 頁 共 50 頁 1 用戶管理子系統(tǒng)功能 用戶密碼的設置和修改 用戶權限的設置 用戶重新登陸 2 數據管理子系統(tǒng)功能 包括對教室 教師 班級 教學計劃和課表數據的保存 查詢 更 新 刪除 3 教學計劃管理子系統(tǒng)功能 某一確定的學期的教學工作計劃 對于班級而言 每門課程的 學時 開始周 結束周以及每門課程的任課教師 該子系統(tǒng)對教學計劃進行管理和完善 4 排課管理子系統(tǒng)功能 包括自動排課 手動排課兩個部分 5 課表查詢子系統(tǒng)功能 對于具體的班級 教師 教室進行課表查詢 打印 4 3 數據庫設計 排課管理系統(tǒng)是一項復雜的系統(tǒng)工程 其間需要大量的數據來支撐 從某種程度上來講 排 課管理系統(tǒng)的設計過程 其實也就是一個規(guī)范和完整的數據庫設計過程 經過多年的發(fā)展 關系型 數據庫系統(tǒng) RDBMS 是最成熟的一種數據庫管理模式 也是當前最流行的數據庫管理系統(tǒng) 故 在此也采用該模式 在加一些關系數據庫的介紹 4 3 1 定義屬性表 1 bClass 表 字段名稱字段名稱類類 型型字段大小字段大小說說 明明 ClassID字 符班級編號 ClassName文 本16班級名稱 DepID文 本16學院編號 SpecID文 本16專業(yè)編號 ClassStuNum整 型4班級人數 圖 4 2 班級表 Chart 4 2 Class table 2 bClassRoom 表 字段名稱字段名稱類類 型型說說 明明 ClassRoomID字 符教室編號 字段大小 10 ClassRoomName文 本教室名稱 字段大小 16 學院工學學士學位論文 第四章 總體設計 第 14 頁 共 50 頁 ClassTypeID字 符教室類型 字段大小 16 ClassRoomStuNum整 型容納人數 字段大小 4 BuildingID字 符教學樓編號 字段大小 10 ClassRoomFlag整 型教室標識符 字段大小 4 圖 4 3 教室表 Chart 4 3 Classroom table 3 bCourse 表 字段名稱字段名稱類類 型型說說 明明 CourseID字 符課程編號 字段大小 10 CourseName字 符課程名稱 字段大小 20 CourseYXJ字 符課程優(yōu)先級 字段大小 10 ClassID字 符班級編號 字段大小 10 CourseFlag整 型課程標識符 字段大小 4 圖 4 4 課程表 Chart 4 4 Course table 4 bTeacher 表 字段名稱字段名稱類類 型型說說 明明 TeacherID字 符教師編號 字段大小 10 TeacherName文 本教師名稱 字段大小 16 DepID文 本學院編號 字段大小 16 CourseID字 符課程編號 字段大小 10 圖 4 5 教師表 Chart 4 5 Teacher table 5 bTeachPlan 表 字段名稱字段名稱類類 型型說說 明明 CourseID字 符課程編號 字段大小 10 學院工學學士學位論文 第四章 總體設計 第 15 頁 共 50 頁 CourseName文 本課程名稱 字段大小 16 TeacherID字 符教師編號 字段大小 10 TeacherName文 本教師名稱 字段大小 16 WeekNum字 符周學時 字段大小 10 CourseNum字 符總學時 字段大小 10 圖 4 6 教師計劃表 Chart 4 6 Reach plan table 6 bTempTable 表 字段名稱字段名稱類類 型型說說 明明 ClassID字 符班級編號 字段大小 10 CourseID字 符課程編號 字段大小 10 TeacherID字 符教師編號 字段大小 10 ClassRoomID字 符教室編號 字段大小 10 TTime整 型時間標識 字段大小 4 Week整 型周數 字段大小 4 圖 4 7 臨時表 Chart 4 7 Temporary table 4 4 排課系統(tǒng)總構架 基本信息錄入 資源要求設置 開始排課 優(yōu)先級高先排 檢查排課沖突 學院工學學士學位論文 第四章 總體設計 第 16 頁 共 50 頁 圖 4 8 系統(tǒng)總架構 Chart 4 8 System frame 生成課表查詢課表 打印課表 學院工學學士學位論文 第五章 詳細設計 第 17 頁 共 50 頁 第五章 詳細設計及代碼設計 5 1 用戶界面設計 隨著視窗操作系統(tǒng)的全面推廣和流行 如今 GUI 已經成為業(yè)界用戶接口的一個標準 在本系 統(tǒng)的設計過程中 也按照 GUI 的設計原則來設計用戶接口 給用戶提供一個友好的人機交互界面 具體來說 將按照以下幾點原則來設計 5 1 1 簡單易用和個性化需求 無論什么系統(tǒng) 面向什么使用者 都應該以簡單易用而不顯枯燥為標準 本系統(tǒng)使用圖形化 的用戶界面 整個界面功能鍵的設定和窗體布局 完全具有獨特統(tǒng)一的風格 5 1 2 對數據的查詢 查詢是信息系統(tǒng)中不可缺少的功能 本系統(tǒng)設計的是一種可對任意指定的表 按所有字段進 行的查詢 查詢的結果 在本系統(tǒng)中用數據窗口對象顯示輸出 對于查詢的結果 用戶也可以根據 自己的需求 選擇顯示的字段和設計自己的視圖 當然 系統(tǒng)下一步應該提供的功能就是根據查詢 結果 生成各式各類的報表 5 1 3 系統(tǒng)菜單功能 在實際的系統(tǒng)設計中 菜單可分為兩種類型 即下拉式菜單和彈出式菜單 下拉式菜單系統(tǒng)中 一 般有一個主菜單 其中包括若干個選擇項 主菜單單的每一項又可下拉出下一級子菜單 這樣用一個個 的窗口的形式彈出在屏幕上 它是通過菜單編輯器建立 其步驟如下 1 選取要建立菜單的窗體 2 從 工具 菜單中 選取 菜單編輯器 建立如下圖所示的系統(tǒng)主菜單 學院工學學士學位論文 第五章 詳細設計 第 18 頁 共 50 頁 圖 5 1 菜單編輯 Chart 5 1 Menu edit 基本信息輸入 基本信息輸入菜單是讓錄入員輸入和修改課程信息 班級信息 教師信息 教室信息基 本數據 數據管理包括課程 班級 教師 教室 課表數據的查詢 打印 班級信息中包括班級編號 班級名稱 班級人數以及添加 保存 查詢 編輯 刪除等 功能 如下為班級信息的界面 圖 5 2 班級信息界面 學院工學學士學位論文 第五章 詳細設計 第 19 頁 共 50 頁 Chart 5 2 Interface of class information 教師信息中包括教師編號 教師姓名 職稱以及添加 保存 查詢 5 2 課程表的生成 5 2 1 班級課程表查詢打印設計 經過信息錄入和復雜的排課過程 終于到了生成課程表的輸出后期階段 顯示出完整的課程 表是我們的最終目的 本系統(tǒng)是直接將課程表到入 EXCEL 表格中 使表格的形式更加美觀 所用 工具用戶非常熟悉 如下是班級課表查詢界面 圖 5 3 班級課表查詢界面 Chart 5 3 Interface of inquire class table 通過輸入確定的班級編號 來搜索某一具體班級的課程表 若你忘記班級的編號 可以通過 界面上的班級編號與班級名稱對照表查詢班級編號 當確定好你所要查詢的班級后 點擊 查詢課 程表 按鈕 就可以查詢該班的課程表了 學院工學學士學位論文 第五章 詳細設計 第 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 學院工學學士學位論文 附 錄 第 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)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論