教室管理系統(tǒng)設(shè)計與實現(xiàn)本科畢業(yè)設(shè)計論文.doc

上傳人:good****022 文檔編號:116791568 上傳時間:2022-07-06 格式:DOC 頁數(shù):99 大小:2.18MB
收藏 版權(quán)申訴 舉報 下載
教室管理系統(tǒng)設(shè)計與實現(xiàn)本科畢業(yè)設(shè)計論文.doc_第1頁
第1頁 / 共99頁
教室管理系統(tǒng)設(shè)計與實現(xiàn)本科畢業(yè)設(shè)計論文.doc_第2頁
第2頁 / 共99頁
教室管理系統(tǒng)設(shè)計與實現(xiàn)本科畢業(yè)設(shè)計論文.doc_第3頁
第3頁 / 共99頁

下載文檔到電腦,查找使用更方便

20 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《教室管理系統(tǒng)設(shè)計與實現(xiàn)本科畢業(yè)設(shè)計論文.doc》由會員分享,可在線閱讀,更多相關(guān)《教室管理系統(tǒng)設(shè)計與實現(xiàn)本科畢業(yè)設(shè)計論文.doc(99頁珍藏版)》請在裝配圖網(wǎng)上搜索。

1、本科畢業(yè)設(shè)計(論文)基于APM的教室管理系統(tǒng)的設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)原創(chuàng)性聲明和使用授權(quán)說明原創(chuàng)性聲明本人鄭重承諾:所呈交的畢業(yè)設(shè)計(論文),是我個人在指導(dǎo)教師的指導(dǎo)下進行的研究工作及取得的成果。盡我所知,除文中特別加以標(biāo)注和致謝的地方外,不包含其他人或組織已經(jīng)發(fā)表或公布過的研究成果,也不包含我為獲得 及其它教育機構(gòu)的學(xué)位或?qū)W歷而使用過的材料。對本研究提供過幫助和做出過貢獻的個人或集體,均已在文中作了明確的說明并表示了謝意。作 者 簽 名: 日 期: 指導(dǎo)教師簽名: 日期: 使用授權(quán)說明本人完全了解 大學(xué)關(guān)于收集、保存、使用畢業(yè)設(shè)計(論文)的規(guī)定,即:按照學(xué)校要求提交畢業(yè)設(shè)計(論文)的印刷

2、本和電子版本;學(xué)校有權(quán)保存畢業(yè)設(shè)計(論文)的印刷本和電子版,并提供目錄檢索與閱覽服務(wù);學(xué)校可以采用影印、縮印、數(shù)字化或其它復(fù)制手段保存論文;在不以贏利為目的前提下,學(xué)??梢怨颊撐牡牟糠只蛉績?nèi)容。作者簽名: 日 期: 學(xué)位論文原創(chuàng)性聲明本人鄭重聲明:所呈交的論文是本人在導(dǎo)師的指導(dǎo)下獨立進行研究所取得的研究成果。除了文中特別加以標(biāo)注引用的內(nèi)容外,本論文不包含任何其他個人或集體已經(jīng)發(fā)表或撰寫的成果作品。對本文的研究做出重要貢獻的個人和集體,均已在文中以明確方式標(biāo)明。本人完全意識到本聲明的法律后果由本人承擔(dān)。作者簽名: 日期: 年 月 日學(xué)位論文版權(quán)使用授權(quán)書本學(xué)位論文作者完全了解學(xué)校有關(guān)保留、使

3、用學(xué)位論文的規(guī)定,同意學(xué)校保留并向國家有關(guān)部門或機構(gòu)送交論文的復(fù)印件和電子版,允許論文被查閱和借閱。本人授權(quán) 大學(xué)可以將本學(xué)位論文的全部或部分內(nèi)容編入有關(guān)數(shù)據(jù)庫進行檢索,可以采用影印、縮印或掃描等復(fù)制手段保存和匯編本學(xué)位論文。涉密論文按學(xué)校規(guī)定處理。作者簽名:日期: 年 月 日導(dǎo)師簽名: 日期: 年 月 日指導(dǎo)教師評閱書指導(dǎo)教師評價:一、撰寫(設(shè)計)過程1、學(xué)生在論文(設(shè)計)過程中的治學(xué)態(tài)度、工作精神 優(yōu) 良 中 及格 不及格2、學(xué)生掌握專業(yè)知識、技能的扎實程度 優(yōu) 良 中 及格 不及格3、學(xué)生綜合運用所學(xué)知識和專業(yè)技能分析和解決問題的能力 優(yōu) 良 中 及格 不及格4、研究方法的科學(xué)性;技術(shù)線

4、路的可行性;設(shè)計方案的合理性 優(yōu) 良 中 及格 不及格5、完成畢業(yè)論文(設(shè)計)期間的出勤情況 優(yōu) 良 中 及格 不及格二、論文(設(shè)計)質(zhì)量1、論文(設(shè)計)的整體結(jié)構(gòu)是否符合撰寫規(guī)范? 優(yōu) 良 中 及格 不及格2、是否完成指定的論文(設(shè)計)任務(wù)(包括裝訂及附件)? 優(yōu) 良 中 及格 不及格三、論文(設(shè)計)水平1、論文(設(shè)計)的理論意義或?qū)鉀Q實際問題的指導(dǎo)意義 優(yōu) 良 中 及格 不及格2、論文的觀念是否有新意?設(shè)計是否有創(chuàng)意? 優(yōu) 良 中 及格 不及格3、論文(設(shè)計說明書)所體現(xiàn)的整體水平 優(yōu) 良 中 及格 不及格建議成績: 優(yōu) 良 中 及格 不及格(在所選等級前的內(nèi)畫“”)指導(dǎo)教師: (簽名)

5、 單位: (蓋章)年 月 日評閱教師評閱書評閱教師評價:一、論文(設(shè)計)質(zhì)量1、論文(設(shè)計)的整體結(jié)構(gòu)是否符合撰寫規(guī)范? 優(yōu) 良 中 及格 不及格2、是否完成指定的論文(設(shè)計)任務(wù)(包括裝訂及附件)? 優(yōu) 良 中 及格 不及格二、論文(設(shè)計)水平1、論文(設(shè)計)的理論意義或?qū)鉀Q實際問題的指導(dǎo)意義 優(yōu) 良 中 及格 不及格2、論文的觀念是否有新意?設(shè)計是否有創(chuàng)意? 優(yōu) 良 中 及格 不及格3、論文(設(shè)計說明書)所體現(xiàn)的整體水平 優(yōu) 良 中 及格 不及格建議成績: 優(yōu) 良 中 及格 不及格(在所選等級前的內(nèi)畫“”)評閱教師: (簽名) 單位: (蓋章)年 月 日 教研室(或答辯小組)及教學(xué)系意見

6、教研室(或答辯小組)評價:一、答辯過程1、畢業(yè)論文(設(shè)計)的基本要點和見解的敘述情況 優(yōu) 良 中 及格 不及格2、對答辯問題的反應(yīng)、理解、表達情況 優(yōu) 良 中 及格 不及格3、學(xué)生答辯過程中的精神狀態(tài) 優(yōu) 良 中 及格 不及格二、論文(設(shè)計)質(zhì)量1、論文(設(shè)計)的整體結(jié)構(gòu)是否符合撰寫規(guī)范? 優(yōu) 良 中 及格 不及格2、是否完成指定的論文(設(shè)計)任務(wù)(包括裝訂及附件)? 優(yōu) 良 中 及格 不及格三、論文(設(shè)計)水平1、論文(設(shè)計)的理論意義或?qū)鉀Q實際問題的指導(dǎo)意義 優(yōu) 良 中 及格 不及格2、論文的觀念是否有新意?設(shè)計是否有創(chuàng)意? 優(yōu) 良 中 及格 不及格3、論文(設(shè)計說明書)所體現(xiàn)的整體水平

7、 優(yōu) 良 中 及格 不及格評定成績: 優(yōu) 良 中 及格 不及格(在所選等級前的內(nèi)畫“”)教研室主任(或答辯小組組長): (簽名)年 月 日教學(xué)系意見:系主任: (簽名)年 月 日燕山大學(xué)畢業(yè)設(shè)計(論文)任務(wù)書學(xué)院:信息科學(xué)與工程學(xué)院 系級教學(xué)單位:計算機科學(xué)與技術(shù) 學(xué)號學(xué)生姓名專 業(yè)班 級題目題目名稱基于APM的教室管理系統(tǒng)的設(shè)計與實現(xiàn)題目性質(zhì)1.理工類:工程設(shè)計 ( );工程技術(shù)實驗研究型( );理論研究型( );計算機軟件型( );綜合型( )。2.文管類( );3.外語類( );4.藝術(shù)類( )。題目類型1.畢業(yè)設(shè)計( ) 2.論文( )題目來源科研課題( ) 生產(chǎn)實際( )自選題目(

8、) 主要內(nèi)容1、搭建Apache + PHP + MySQL集成開發(fā)環(huán)境。2、完成教室管理系統(tǒng)的需求分析和設(shè)計。3、實現(xiàn)教室管理系統(tǒng)的基本功能。4、研究根據(jù)課表和教室情況等已知條件,自動分配教室的算法。5、根據(jù)上述算法,在系統(tǒng)中實現(xiàn)教室自動分配功能?;疽?、開發(fā)環(huán)境:Apache + PHP + MySQL集成開發(fā)環(huán)境。2、要求實現(xiàn)教室管理系統(tǒng)的基本功能,軟件界面要友好。3、要求實現(xiàn)教室自動分配功能。參考資料1、在線文檔. MySQL5.1參考手冊.http:/ PHP手冊.http:/ 高校自動排課系統(tǒng)的算法研究與實現(xiàn). 重慶:重慶大學(xué)碩士學(xué)位論文, 2006周 次14周58周912周1

9、316周1718周應(yīng)完成的內(nèi)容查閱文獻,進行需求分析和總體設(shè)計 實現(xiàn)教室管理系統(tǒng)的基本功能 研究教室自動分配的算法 實現(xiàn)教室自動分配功能,整個系統(tǒng)調(diào)試撰寫論文、準(zhǔn)備答辯指導(dǎo)教師:焦移山職稱:講師 2011年3 月 5 日系級教學(xué)單位審批: 年 月 日摘要摘要在信息化的今天,使用信息管理系統(tǒng)對數(shù)據(jù)進行管理已經(jīng)代替了手工管理的方式,該論文研究的高校教室管理作為教務(wù)信息管理系統(tǒng)的一部分,旨在設(shè)計一個基于B/S模式的具有管理系統(tǒng)基本功能和自動排課功能的教室管理系統(tǒng)。系統(tǒng)的開發(fā)過程中采用了軟件工程傳統(tǒng)方法學(xué)中的快速原型法,論文中首先介紹了開發(fā)的背景、目的和確定采用APM(Apache + PHP + M

10、ySQL)集成開發(fā)環(huán)境;其次對該系統(tǒng)進行了需求分析,從用戶角度描述系統(tǒng)的功能要求;再次論述對系統(tǒng)的總體設(shè)計,確定系統(tǒng)的所有的功能模塊并對數(shù)據(jù)庫進行了設(shè)計;最后描述了各個模塊的具體功能并介紹了程序中的主要算法,附帶了系統(tǒng)主要界面的圖片。系統(tǒng)開發(fā)使用了PHP和HTML分別作為后臺和前臺開發(fā)語言,通過禁忌搜索和回溯方法實現(xiàn)了自動排課算法,最終實現(xiàn)了教室管理系統(tǒng)的設(shè)計。關(guān)鍵詞教室管理系統(tǒng);APM;排課算法;禁忌搜索I 燕山大學(xué)本科生畢業(yè)設(shè)計(論文)AbstractIn the information today, using information management system of data

11、management has replaced manual management, this paper studies the way the college classroom management as part of the academic information management, which aims to design a based on B/S model classroom management system with basic function of management system and automatic course arrangement. This

12、 system is adopted in the development process of software engineering traditional methods of rapid prototyping method, this paper firstly introduces the background, the system development objectives and sure to use APM ( Apache + PHP + MySQL) integrated development environment; Second of the system

13、from the requirement analysis, this paper describes the function of the system user requirements; For system discussed again, the overall design system is determined by the function module and all to a database design; Finally, it is describes the specific function of each module, and introduces the

14、 most main algorithms, and program with system mainly interface pictures. System development using PHP and HTML back ends and front desk development respectively as language, through tabu search and retrospective method realizes the automatic course arrangement algorithm, and finally achieved the de

15、sign of classroom management system.Keywords Classroom Management System; APM; Arrangement Algorithm;Tabu SearchI 目 錄摘要IAbstractII第1章 緒論11.1課題背景11.2 國內(nèi)外研究現(xiàn)狀21.3 課題目的及意義31.4 課題研究主要內(nèi)容3第2章 相關(guān)技術(shù)與理論52.1 開發(fā)環(huán)境與工具52.1.1 APM平臺52.1.2 HTML CSS和JavaScript62.1.3 Dreamweaver編輯器62.2 相關(guān)理論72.2.1 啟發(fā)式搜索72.2.2 禁忌搜索72.2

16、.3 回溯法82.3 本章小結(jié)8第3章 需求分析93.1 問題定義93.1.1 學(xué)生使用系統(tǒng)的功能要求93.1.2 教師使用系統(tǒng)的功能要求93.1.3 管理員使用系統(tǒng)的功能要求103.2 可行性分析103.3 需求分析113.3.1 系統(tǒng)功能需求113.3.2 安全性與完整性需求123.3.3 數(shù)據(jù)流程圖與功能劃分133.3.4 數(shù)據(jù)字典153.4 本章小結(jié)17第4章 數(shù)據(jù)庫設(shè)計184.1 數(shù)據(jù)庫設(shè)計184.2 數(shù)據(jù)庫表194.3 本章小結(jié)24第5章 總體設(shè)計255.1 系統(tǒng)模塊設(shè)計255.1.1 公共模塊255.1.2 學(xué)生功能模塊275.1.3 教師功能模塊285.1.4 管理員功能模塊2

17、95.2 本章小結(jié)30第6章 系統(tǒng)詳細設(shè)計316.1 公共模塊設(shè)計316.2 排課算法的詳細設(shè)計326.3 本章小結(jié)36第7章 系統(tǒng)實現(xiàn)377.1 系統(tǒng)實現(xiàn)377.2 本章小結(jié)42結(jié)論43參考文獻44致謝46附錄1 開題報告47附錄2 文獻綜述51附錄3 中期報告54附錄4 外文原文57附錄5 外文譯文68III第1章 緒論 第1章 緒論1.1課題背景隨著信息化的高度發(fā)展,大學(xué)中遠程在線課堂授課的教學(xué)方式已經(jīng)出現(xiàn),但這種非面對面交互的教育方式存在著很多的弊病1,因此目前在我國絕大部分大學(xué)還是以教室中面對面的授課方式為主。綜合考慮大學(xué)授課中多方面的特殊性,大學(xué)授課對教室的安排與義務(wù)教育階段大不相

18、同,對某個班級的課程安排不再局限于某一個教室,并且可能會出現(xiàn)多個班級在一個教室中上課的情況。從使用角度上看,這樣的教室安排制度增大了教室使用的自由度,尤其是在如今大學(xué)中教室少班級多課程多的現(xiàn)狀下,這樣的教室使用方案更能充分利用教室資源,使教室得到合理的分配。但從教室的管理角度來說,教室使用越自由,教室的管理的難度就越大。管理的難度主要體現(xiàn)在對教室排課問題上。眾所周知,大學(xué)中每個專業(yè)需要修的課程都有很多,大部分課程都能在一個學(xué)期內(nèi)學(xué)習(xí)完畢,這樣就導(dǎo)致每個學(xué)期初都要進行一次教室分配。分配過程不僅要考慮教室本身是否會發(fā)生使用上的空間沖突(同一教室同一時間安排了兩門或兩門以上課程),而且還要考慮參與授

19、課過程的教師學(xué)生是否會發(fā)生時間沖突(同一學(xué)生或教師同一時間不能出席兩門或兩門以上的課程)。而且就目前而言,我國高等教育己進入大眾化發(fā)展階段,各高校的招生數(shù)量急劇增加,給高等教育帶來了深刻的變革。面對跨越式的發(fā)展速度和招生數(shù)量的大幅度增加,不少高校教室資源短缺的問題逐漸凸現(xiàn)出來??茖W(xué)、高效、合理地管理和使用高校教室資源,保證學(xué)生正常的學(xué)習(xí)環(huán)境,成為目前高校教學(xué)資源管理研究的一項重要課題。以燕山大學(xué)為例,燕山大學(xué)東校區(qū)共四座教學(xué)樓,共近200間大小不等類型不一的教室,要分配九個學(xué)院41個專業(yè)的課程,這些專業(yè)四個年級共有大約450余個班,有近11000余名學(xué)生。所有的班級總共要在東區(qū)安排近1200門

20、課程,每門課程每周上課節(jié)數(shù)不等。如果手工安排所有課程的話大概需要花費一個月左右的時間,而且手工排課不能從全局考慮教室分配的平均性。綜合以上論述來看,一個學(xué)校需要一個優(yōu)秀的教室管理軟件勢在必行。一個教室管理系統(tǒng)不僅能方便工作人員對教室資源的管理和安排,大大減輕他們的工作量,還更能為學(xué)生和老師查詢自身與教室的相關(guān)信息提供方便,并且還可以提供給教師部分教室占用權(quán)限,分擔(dān)管理人員的一部分工作。1.2 國內(nèi)外研究現(xiàn)狀上個世紀(jì)中葉,西方學(xué)術(shù)界就有人開始研究大學(xué)排課問題。二十世紀(jì)六十年代,Gotlieb曾為排課問題創(chuàng)建了一個數(shù)學(xué)模型2,最終使用部圖匹配解決了排課問題。在此之后,人們開始在Goflieb的數(shù)學(xué)

21、模型基礎(chǔ)之上對課表問題的算法、解的存在性等問題做了很多深入研究。人們嘗試用各種方法求解排課問題,有些人嘗試把排課問題歸結(jié)為求一組O-1變量的解,但工作量十分龐大,而且這種技術(shù)只能適用于課程較少的情況;二十世紀(jì)八十年代Mihoe提出排課問題可以看作是一個優(yōu)化問題;接下來Tripathy發(fā)表論文使用整數(shù)線性編程方法求解排課問題并提出了相應(yīng)的數(shù)學(xué)模型;之后又有人提出可以使用圖論中的方法解決排課問題,比如二部圖匹配方法。直到遺傳算法的提出,人們又開始研究使用遺傳算法將排課問題看作是優(yōu)化問題來解決。直到如今仍然有許多人在研究遺傳算法,比較有代表性的有印度的Vastapur大學(xué)管理學(xué)院的Arabinda

22、Tripathy、加拿大Montreal大學(xué)的Jean Aubin和Jacques Fe rland等。在課表安排中使用過的算法有:(1)關(guān)聯(lián)規(guī)則FPgrowth算法。(2)基于時間位圖迭加匹配的算法。(3)基于資源匹配的算法。(4)分組優(yōu)化決策算法。(5)分支定界法。(6)有限回溯法。(7)拉格朗日松弛法。(8)二次分配型法等多種方法。由于排課問題面臨時間空間各個方面的資源約束,完全用數(shù)學(xué)方法進行問題描述而忽略計算機硬件條件總結(jié)出來的解決排課問題的方法雖然理論上可以解決排課問題,但是當(dāng)使用具體編程語言實現(xiàn)時又會面臨各種障礙。外國的研究表明,解決大規(guī)模課表編排問題單純靠數(shù)學(xué)方法是行不通的,而利

23、用運籌學(xué)中分層規(guī)劃的思想將問題分解,將是一個有望成功的辦法。在我國對排課問題的研究始于八十年代時期,從今天來看具有代表性的有:南京工學(xué)院的UTSS(A University Timetable Scheduling System)系統(tǒng)3、清華大學(xué)的TISER系統(tǒng)、大連理工大學(xué)的智能教學(xué)組織管理與課程調(diào)度系統(tǒng)、西南交通大學(xué)提出的以課元相關(guān)運算和課元的候選時空片計算為核心的計算機排課算法,延邊大學(xué)根據(jù)人手工排課的方法設(shè)計了計算機自動排課的數(shù)據(jù)結(jié)構(gòu)與算法;沈陽電力高等專科學(xué)校研制了基于ClientServer的開放式智能排課系統(tǒng)等。1.3 課題目的及意義研究該課題的主要目的是設(shè)計出一個具有良好交互性

24、的可供學(xué)生、教師以及教室管理人員使用的具有增、刪、改、查功能的管理類網(wǎng)站,同時設(shè)計出一個具有實際意義且可以用PHP語言實現(xiàn)的排課算法。該算法對現(xiàn)有規(guī)模的排課問題應(yīng)在可以接受的時間內(nèi)執(zhí)行完畢,算法能實現(xiàn)全部的硬性條件約束和部分軟約束并且可以完成對絕大部分課程的安排。研究該課題的意義在于可以使教室管理信息化,便于與教務(wù)管理其他模塊進行數(shù)據(jù)交換并且可以作為教務(wù)管理的一部分并入教務(wù)管理系統(tǒng)。就教室管理本身而言,設(shè)計這樣的一個系統(tǒng)可以大大減輕教務(wù)人員對教師信息管理工作量,尤其是可以大大減少手工排課所花費的時間,并且從整體而言能獲得比手工排課更加合理的教室分配方案。而就其他用戶而言,該系統(tǒng)可以簡化教師申請

25、使用教室的流程,同時方便了學(xué)生對教室信息的查看。而且作為一個B/S模式的管理系統(tǒng),可以為教師和教務(wù)人員發(fā)布與教室相關(guān)的信息提供方便。1.4 課題研究主要內(nèi)容該課題主要研究主要內(nèi)容有:(1)確定系統(tǒng)開發(fā)語言和平臺,選取適當(dāng)?shù)拈_發(fā)工具。(2)對該課題進行需求分析 根據(jù)用戶使用需求和現(xiàn)有業(yè)務(wù)流程對系統(tǒng)進行分析并對系統(tǒng)各個功能的實現(xiàn)方式進行構(gòu)思和設(shè)計。接下來通過分析現(xiàn)有的手工排課流程設(shè)計系統(tǒng)數(shù)據(jù)流程圖,對系統(tǒng)和人的應(yīng)完成工作進行分工,明確系統(tǒng)功能。將將系統(tǒng)數(shù)據(jù)流程圖中出現(xiàn)的實體抽象化規(guī)范化,然后對這些實體設(shè)計數(shù)據(jù)字典,明確每一對象的屬性。(3)對數(shù)據(jù)庫進行設(shè)計 考慮系統(tǒng)中所有會出現(xiàn)并且需要保存的數(shù)據(jù),

26、充分考慮數(shù)據(jù)之間的關(guān)系,本著盡量減少冗余的規(guī)則設(shè)計數(shù)據(jù)庫表,并確定表之間的關(guān)聯(lián)關(guān)系。(4)對系統(tǒng)進行整體設(shè)計 根據(jù)需求分析中對問題的定義將系統(tǒng)分為具體功能的模塊,使模塊之間高內(nèi)聚低耦合。然后根據(jù)現(xiàn)有技術(shù)和開發(fā)語言的特性對每一個模塊進行設(shè)計。(5)對系統(tǒng)進行詳細設(shè)計 在整體設(shè)計結(jié)束的基礎(chǔ)上對系統(tǒng)中反復(fù)出現(xiàn)的功能模塊進行詳細設(shè)計,然后分析排課過程中出現(xiàn)的各種問題并提出解決方案,敘述排課算法的流程。(6)系統(tǒng)實現(xiàn) 該部分主要以運行界面截圖的方式講述各個功能模塊的實現(xiàn)方式以及系統(tǒng)如何操作。 77 第2章 相關(guān)技術(shù)與理論 第2章 相關(guān)技術(shù)與理論2.1 開發(fā)環(huán)境與工具 根據(jù)當(dāng)前主流技術(shù)的發(fā)展應(yīng)用趨勢,本系

27、統(tǒng)的開發(fā)選取了Apache + PHP + MySQL經(jīng)典組合作為開發(fā)平臺。其中Apache是系統(tǒng)運行的服務(wù)器,可以滿足中小型網(wǎng)站的使用需求;PHP作為系統(tǒng)后臺腳本開發(fā)語言,完成系統(tǒng)中控制和處理部分的功能;開發(fā)本系統(tǒng)采用MySQL數(shù)據(jù)庫儲存數(shù)據(jù)主要是考慮MySQL數(shù)據(jù)庫與PHP語言的完美兼容性。系統(tǒng)的前臺開發(fā)使用了HTML文本標(biāo)記語言,頁面設(shè)計使用了CSS層疊樣式表,前臺處理使用了JavaScript腳本語言。系統(tǒng)開發(fā)使用的主要工具為Macromedia公司的Dreamweaver可視化網(wǎng)頁編輯器,下面分別對其進行簡要介紹。2.1.1 APM平臺 Apache是世界使用排名第一的Web服務(wù)器軟

28、件。它可以運行在幾乎所有廣泛使用的計算機平臺上。Apache HTTP Server(簡稱Apache)是Apache軟件基金會的一個開放源碼的網(wǎng)頁服務(wù)器,可以在大多數(shù)計算機操作系統(tǒng)中運行,由于其多平臺和安全性被廣泛使用,是最流行的Web服務(wù)器端軟件之一。PHP是一個嵌套的縮寫名稱,它是英文超文本預(yù)處理語言(Hypertext Preprocessor)的縮寫,只要用途是處理動態(tài)頁面。PHP是一種HTML內(nèi)嵌式的語言,語言風(fēng)格類似于C語言,語法混合了C、Java、Perl以及部分自創(chuàng)語法,可以比CGI或者Perl更快速的執(zhí)行動態(tài)網(wǎng)頁。PHP屬于解釋執(zhí)行語言,嵌入在HTML文檔中執(zhí)行,具有較高的

29、效率。其與ASP和JSP最大的不同點就是源代碼是開源的,而且具有良好的跨平臺性。MySQL是一個小型關(guān)系型數(shù)據(jù)庫管理系統(tǒng),由于其體積小速度快的因素被廣泛用于Internet的中小型網(wǎng)站中。MySQL具有運行速度快、支持多種平臺和支持多種開發(fā)語言的特點。與其他數(shù)據(jù)庫相比,MySQL是一個開源的軟件,因此用戶可以免費使用MySQL數(shù)據(jù)庫。選取Apache + PHP + MySQL的組合有兩個原因:(1)Apache和MySQL對PHP有很好的兼容性,能很好的支持PHP的一些擴展功能。(2)三個軟件全部是開源軟件,使用它們能在不侵犯版權(quán)的情況下降低開發(fā)成本。2.1.2 HTML CSS和JavaS

30、criptHTML(Hyper Text Mark-up Language)即超文本標(biāo)記語言或超文本鏈接標(biāo)示語言,是目前網(wǎng)絡(luò)上應(yīng)用最為廣泛的語言,也是構(gòu)成網(wǎng)頁文檔的主要語言。HTML文本是由HTML命令組成的描述性文本,HTML命令可以說明文字、圖形、動畫、聲音、表格、鏈接等。HTML的結(jié)構(gòu)包括頭部(Head)、主體(Body)兩大部分,其中頭部描述瀏覽器所需的信息,而主體則包含所要說明的具體內(nèi)容。CSS(Cascading Style Sheet,可譯為“層疊樣式表”或“級聯(lián)樣式表”)是一組格式設(shè)置規(guī)則,用于控制Web頁面的外觀。通過使用CSS樣式設(shè)置頁面的格式,可將頁面的內(nèi)容與表現(xiàn)形式分離

31、。頁面內(nèi)容存放在HTML文檔中,而用于定義表現(xiàn)形式的CSS規(guī)則存放在另一個文件中或HTML文檔的某一部分,通常為文件頭部分。將內(nèi)容與表現(xiàn)形式分離,不僅可使維護站點的外觀更加容易,而且還可以使HTML文檔代碼更加簡練,縮短瀏覽器的加載時間。JavaScript是一種基于對象和事件驅(qū)動并具有相對安全性的客戶端腳本語言。同時也是一種廣泛用于客戶端Web開發(fā)的腳本語言,常用來給HTML網(wǎng)頁添加動態(tài)功能,比如響應(yīng)用戶的各種操作。它最初由網(wǎng)景公司設(shè)計,是一種動態(tài)、弱類型、基于原型的語言,內(nèi)置支持類。使用JavaScript可以在客戶端進行一些動態(tài)處理并且可以提供一些對瀏覽器的操作,減少客戶端與服務(wù)器端的交

32、互,使系統(tǒng)得到優(yōu)化。2.1.3 Dreamweaver編輯器Dreamweaver是在網(wǎng)頁設(shè)計與制作領(lǐng)域中用戶最多、應(yīng)用最廣、功能最強大的軟件。它集網(wǎng)頁設(shè)計、網(wǎng)站開發(fā)和站點管理功能于一身,具有可視化、支持多平臺和跨瀏覽器的特性,是目前網(wǎng)站設(shè)計、開發(fā)、制作的首選工具。Dreamweaver具有靈活編寫網(wǎng)頁的特點,不但將“設(shè)計”和“代碼”編輯器合二為一,而且在設(shè)計窗口中還精化了源代碼,能幫助用戶按工作需要定制自己的用戶界面4。選用Dreamweaver作為開發(fā)工具的主要原因是:(1)該軟件屬于所見以所得的可視化開發(fā)工具,能減輕系統(tǒng)前臺開發(fā)的工作量。(2)軟件支持Frame框架、JavaScript

33、腳本、CSS樣式表以及DIV模塊的可視化開發(fā),可以系統(tǒng)開發(fā)的功能滿足需求。(3)PHP語言屬于解釋執(zhí)行語言,不需要編譯即可執(zhí)行,Dreamweaver軟件可以完成PHP腳本的編寫。2.2 相關(guān)理論 設(shè)計排課算法時,為了使教師以及學(xué)生在同一時間最多只能出席一門課程,使用了圖論中的無向圖來體現(xiàn)課程之間的沖突關(guān)系;在為課程尋找合適的教室時,開始使用了啟發(fā)式理論逐門安排課程,使每門課程都能滿足硬約束,當(dāng)課程安排失敗時對課程的調(diào)整又使用了回溯理論以及禁忌搜索理論,其具體使用過程見第5章詳細設(shè)計,現(xiàn)在對以上理論進行簡要介紹。 2.2.1 啟發(fā)式搜索啟發(fā)式搜索就是在狀態(tài)空間中的搜索對每一個搜索的位置進行評估

34、,得到最好的位置,再從這個位置進行搜索直到目標(biāo)。這樣可以省略大量無謂的搜索路徑,提高了效率。啟發(fā)式算法則試圖一次提供一個或全部目標(biāo)。它常能發(fā)現(xiàn)很不錯的解,因此將啟發(fā)式搜索方法用于課程的初次安排中,這樣可以降低初次安排課程的時間。2.2.2 禁忌搜索禁忌搜索是局部鄰域搜索算法的推廣,它從一個初始可行解出發(fā),選擇一系列的特定搜索方向(移動)作為試探,選擇實現(xiàn)讓特定的目標(biāo)函數(shù)值變化最多的移動。為了避免陷入局部最優(yōu)解,TS搜索中采用了一種靈活的“記憶”技術(shù),對已經(jīng)進行的優(yōu)化過程進行記錄和選擇,指導(dǎo)下一步的搜索方向,這就是所謂的禁忌表。當(dāng)課程安排失敗時,使用禁忌搜索法在沖突圖中尋找與該課程可能發(fā)生沖突的

35、課程,對其進行回溯排課。2.2.3 回溯法回溯法(探索與回溯法)是一種選優(yōu)搜索法,按選優(yōu)條件向前搜索,以達到目標(biāo)。但當(dāng)探索到某一步時,發(fā)現(xiàn)原先選擇并不優(yōu)或達不到目標(biāo),就退回一步重新選擇,這種走不通就退回再走的技術(shù)為回溯法,而滿足回溯條件的某個狀態(tài)的點稱為“回溯點”。因為回溯之前進行了禁忌搜索,為防止回溯時間過長,為回溯設(shè)置回溯長度以及回溯半徑,用以限制回溯過程規(guī)模。2.3 本章小結(jié)本章主要介紹研究該課題過程中使用到的一些技術(shù)及其理論。計算機的軟件的開發(fā)離不開計算機編程語言以及相關(guān)軟件的支持,所以首先確定了開發(fā)過程中使用的開發(fā)平臺環(huán)境,然后對其特性和優(yōu)點進行簡要的介紹,說明選擇Apache +

36、PHP + MySQL作為開發(fā)平臺的理由是其良好的兼容性以及代碼開源性。本章第二節(jié)羅列出研究過程中使用到的一些理論,簡要介紹了什么是啟發(fā)式搜索、禁忌搜索和回溯法,并且簡單的說明在課題研究中的那些部分需要使用該理論。第3章 需求分析 第3章 需求分析3.1 問題定義 本系統(tǒng)是一個基于B/S模式的多用戶系統(tǒng),最終面向的是所有在校的教師、學(xué)生和系統(tǒng)管理人員,下面分別從這三個角度對系統(tǒng)進行定義。3.1.1 學(xué)生使用系統(tǒng)的功能要求(1)每個在校學(xué)生都可以訪問該系統(tǒng),學(xué)生畢業(yè)之后不可以在使用該系統(tǒng)。(2)在校學(xué)生可以通過該系統(tǒng)查看并可以打印本學(xué)期的個人課表。(3)學(xué)生可以對本學(xué)期每一天公共教室的使用情況進

37、行查詢,方便上自習(xí)教室的查找。(4)學(xué)生可以對自己感興趣的課程或感興趣的教師開設(shè)的課程的上課教室進行查找,對課程的查找應(yīng)該支持模糊查詢。(5)學(xué)生可以對本學(xué)期自己所修課程的考試信息進行查看,前提是本門課程已經(jīng)安排了考試。(6)學(xué)生可以更改自己的系統(tǒng)登錄密碼。(7)學(xué)生可以查看由教務(wù)人員發(fā)布的關(guān)于教室占用、教學(xué)樓開放或關(guān)閉等信息和教師發(fā)布的關(guān)于課程補課教室或課程更改上課教室的信息。3.1.2 教師使用系統(tǒng)的功能要求(1)每個在職教師都可以訪問該系統(tǒng),教師離職之后不可以再使用該系統(tǒng)。(2)在職教師可以通過該系統(tǒng)查看和打印本學(xué)期的個人任課課表。(3)教師可以根據(jù)教室類型大小和使用的時間對符合條件的教

38、室進行查找,對查找結(jié)果可以申請占用,占用時間最多為四個課時,教室的申請應(yīng)該在對教室使用時間的前一天或前幾天進行。(4)教師可以對自己占用教室的歷史進行查看,對于尚未發(fā)生的占用,教師可以取消該次占用。(5)教師可以對本學(xué)期自己任課的課程進行考試安排,可以查看已經(jīng)安排過的考試的信息。(6)教師可以發(fā)布關(guān)于課程補課或課程更改上課教室的信息。(7)教師可以更改自己的系統(tǒng)登錄密碼。3.1.3 管理員使用系統(tǒng)的功能要求(1)該系統(tǒng)應(yīng)該存在至少一個管理人員,對教室及其相關(guān)信息進行管理。(2)管理員可以對教室的基本信息進行管理,包括教學(xué)樓的查找添加和刪除、教學(xué)樓中教室的查找添加修改刪除。管理員可以對本學(xué)期每間

39、教室的課程表進行查看與打印。(4)管理員可以對本學(xué)期考試安排教室的信息進行查看和取消。(5)管理員可以申請教室的占用,并且可以對本學(xué)期所有教室占用的信息進行查看,對尚未發(fā)生的占用管理員有權(quán)刪除占用信息。(6)管理員可以在學(xué)期初對本學(xué)期起止時間等相關(guān)信息進行設(shè)置。(7)管理員學(xué)期初可以清除畢業(yè)離校學(xué)生以及離職教師的登錄權(quán)限并且可以刪除上學(xué)期與課程安排有關(guān)的信息。(8)管理員可以對本學(xué)期課程安排等相關(guān)數(shù)據(jù)進行導(dǎo)入。(9)管理員可以發(fā)布與教室有關(guān)的占用信息。(10)管理員在學(xué)期初可以通過系統(tǒng)對所有課程的上課時間和地點進行安排。(11)管理員可以備份以及恢復(fù)數(shù)據(jù)庫內(nèi)容。(12)管理員可以對所有用戶進行

40、注冊和密碼修改。3.2 可行性分析為了研究設(shè)計該系統(tǒng)的方案是否可行,接下來從技術(shù)可行性、操作可行性、經(jīng)濟可行性和法律可行性四個角度對開發(fā)該系統(tǒng)進行可行性分析5。(1)技術(shù)可行性分析 根據(jù)問題定義階段對問題的描述以及當(dāng)今理論技術(shù)的發(fā)展現(xiàn)狀來看,該系統(tǒng)可以通過已選定的開發(fā)環(huán)境進行開發(fā)。經(jīng)過對排課算法的初步學(xué)習(xí)和調(diào)研,使用PHP語言可以在有限時間開發(fā)出一個具有實際意義可以滿足用戶要求的對課程進行自動安排的算法。(2)操作可行性分析 該系統(tǒng)性質(zhì)上屬于信息管理系統(tǒng),因此開發(fā)過程中可以參照其他成功的基于B/S模式的管理系統(tǒng)對該系統(tǒng)進行操作界面的設(shè)計,由于開發(fā)語言與所選數(shù)據(jù)庫具有很好的兼容性,所以對數(shù)據(jù)庫的

41、操作基本也可以全都在系統(tǒng)功能界面實現(xiàn)。綜合以上考慮,對互聯(lián)網(wǎng)有基本的了解曾經(jīng)使用或訪問過類似網(wǎng)站的人都有能力對系統(tǒng)進行操作,管理員對系統(tǒng)的操作可以在軟件開發(fā)結(jié)束之后通過與開發(fā)者的溝通進行進一步的了解。(3)經(jīng)濟可行性分析 由于軟件開發(fā)所使用的環(huán)境基本都屬于開源軟件,都可以通過正當(dāng)途徑免費獲得其使用權(quán)限,因此從經(jīng)濟角度上說開發(fā)該系統(tǒng)是可行的。(4)法律可行性分析 本軟件為自主創(chuàng)新的智力活動,所使用工具都是通過合法途徑獲得,系統(tǒng)中不存在侵犯他人所有權(quán)的內(nèi)容存在,軟件的調(diào)研背景為本學(xué)校,所有數(shù)據(jù)來源都屬于自己調(diào)查和統(tǒng)計,產(chǎn)品的目標(biāo)為進行課題研究不屬于任何商業(yè)活動,軟件所涉及內(nèi)容也與法律無任何沖突,因

42、此從法律角度講開發(fā)該軟件是可行的。3.3 需求分析3.3.1 系統(tǒng)功能需求對系統(tǒng)的大部分功能需求在問題定義階段已經(jīng)描述清楚,這里主要對排課功能進行詳細的分析。課程安排過程需要滿足兩種需求6,硬性需求和軟需求,其中硬性需求如下:(1)所有課程都必須被安排。(2)所選課程的出席人數(shù)不能超過該教室的容量。(3)同一個教師的不同課程不可以發(fā)生在同一個時間。(4)同一個班級的不同課程不可以安排在同一個時間。(5)一個教室的同一個時間不可以安排兩門或兩門以上的課程。(6)上課的教室類型符合課程的需求。軟性條件如下:(1)課程應(yīng)該均勻的安排在整個學(xué)期。(2)一門課的多個課節(jié)最好安排在一個教室。(3)一門課一

43、天不可以出現(xiàn)兩次或兩次以上。(4)對每個教室的排課量應(yīng)該大體保持一致。(5)對每個班級和教師而言,課程安排最好均勻分布在一周中。硬性要求是排課過程中必須遵循的要求,每門課程安排過程中都必須遵循以上要求,如果不能滿足應(yīng)該做相應(yīng)的調(diào)整。軟性要求是在對課程的安排滿足所有硬性條件的前提下最好可以滿足的需求,當(dāng)條件不允許時軟性要求可以適當(dāng)?shù)姆艑挕?.3.2 安全性與完整性需求由于該系統(tǒng)的開發(fā)基于B/S模式,就B/S模式的管理系統(tǒng)的工作模式而言,對軟件進行安全性和完整性進行考慮是系統(tǒng)中必不可少的一步,這直接關(guān)系到軟件使用是否可靠和安全,關(guān)系到系統(tǒng)使用過程中是否會出現(xiàn)重大問題而造成其他重大損失7。就管理系統(tǒng)

44、而言還不得不考慮信息數(shù)據(jù)的完整性需求,因此接下來將從訪問權(quán)限的安全性系統(tǒng)的容錯能力以及系統(tǒng)數(shù)據(jù)的完整性進行分析,確定系統(tǒng)安全性和完整性的需求。(1)訪問權(quán)限的設(shè)置由于B/S模式的管理系統(tǒng)的訪問一般是通過瀏覽器發(fā)送URL地址對相應(yīng)頁面進行訪問,因此系統(tǒng)必須具有一個訪問權(quán)限核實的模塊,在每個頁面加載前進行調(diào)用,防止有其他動機的不良用戶通過URL訪問其無權(quán)訪問的頁面進而對系統(tǒng)數(shù)據(jù)進行修改對系統(tǒng)造成損失,其中權(quán)限核實的內(nèi)容應(yīng)包括兩個部分:無任何權(quán)限的用戶試圖跳過登錄步驟直接訪問功能界面和具有某種權(quán)限的用戶登陸后試圖通過服務(wù)器中以保存的身份信息訪問其他無權(quán)訪問的頁面。每個用戶登錄后其訪問權(quán)限應(yīng)有時間限制

45、,如果用戶長時間(其時間暫定為10分鐘)對系統(tǒng)操作無任何操作,再次訪問系統(tǒng)時,系統(tǒng)給出相應(yīng)的提示后自動跳轉(zhuǎn)到登陸頁面要求用戶再次登錄。(2)系統(tǒng)的容錯能力由于該系統(tǒng)許多模塊的功能都與時間有關(guān),因此容錯主要從時間沖突角度考慮。由于系統(tǒng)用戶都屬于學(xué)校成員,因此系統(tǒng)中關(guān)于時間的設(shè)定都是基于學(xué)周的,當(dāng)用戶對教室資源進行占用或取消占用時,要對用戶所選時間與當(dāng)前時間進行比對,用戶占用教室時選擇的占用時間應(yīng)該在當(dāng)前時間之后,用戶取消教室相關(guān)使用信息時,取消動作發(fā)生的時間應(yīng)該在使用動作落實之前。對于可以由用戶輸入內(nèi)容的模塊,要對用戶輸入內(nèi)容進行核實,以免因為用戶操作失誤或者好奇輸入非法內(nèi)容而使系統(tǒng)產(chǎn)生不可預(yù)知

46、的錯誤。 (3)數(shù)據(jù)完整性管理系統(tǒng)離不開對數(shù)據(jù)的操作,因此對數(shù)據(jù)的完整性關(guān)系到系統(tǒng)運轉(zhuǎn)是否正確,因此要求數(shù)據(jù)相互聯(lián)系正確,數(shù)據(jù)記錄完整數(shù)據(jù)項,相同的數(shù)據(jù)在不同的表格中應(yīng)該一致。其具體內(nèi)容見下一章數(shù)據(jù)庫設(shè)計部分。3.3.3 數(shù)據(jù)流程圖與功能劃分由于學(xué)生以及教師使用該系統(tǒng)的操作相對簡單且功能劃分也相對明確,因此對于學(xué)生和教師功能模塊在此章暫不贅述,具體內(nèi)容將在下兩章講述。而管理員模塊的功能相對來說較為復(fù)雜,無論是數(shù)據(jù)管理還是排課過程都涉及到與外界的數(shù)據(jù)交換,因此對該模塊建立數(shù)據(jù)流程圖,如圖3-1。下面將通過數(shù)據(jù)流程圖對管理員模塊尤其是排課過程進行功能劃分,確定由系統(tǒng)完成的功能以及需要人進行的操作。

47、由于排課過程涉及課程、班級、教師和教室等多方面的信息,因此排課過程不可能由軟件獨立完成,現(xiàn)在對排課流程進行描述,在描述過程中確定系統(tǒng)邊界,明確系統(tǒng)功能。(1)由于排課之前學(xué)校要對本學(xué)期所有應(yīng)該安排的課程進行選定,因此系統(tǒng)應(yīng)生成最新教室資源的統(tǒng)計表,教務(wù)工作者在課程安排時要注意課程安排的總學(xué)時應(yīng)該不超過本學(xué)期教室時間資源總數(shù)的80%,以免課程過多最終導(dǎo)致部分課程無法調(diào)度安排失敗。(2)排課之前教務(wù)人員需要手工做的工作有:確定本學(xué)期所有需要安排的課程;確定每門課程需要出席的班級;確定每門課程的任課教師;確定每門課程上課所需教室的類型;確定每門課程開課的學(xué)周;確定每門課程的總學(xué)時數(shù)。以上數(shù)據(jù)處理完成

48、后將其與本學(xué)期教師變動信息、本學(xué)期所有入學(xué)班級信息、本學(xué)期所有入學(xué)學(xué)生信息輸入至預(yù)先設(shè)定好格式的Excel表格中,之后將表格提交至系統(tǒng)管理員。圖3-1 教室管理系統(tǒng)管理員模塊數(shù)據(jù)流程圖 (3)管理員使用系統(tǒng)將上步中提交的Excel文件導(dǎo)入數(shù)據(jù)庫。在導(dǎo)入數(shù)據(jù)之前,管理員應(yīng)將上學(xué)期已失效的數(shù)據(jù)刪除并設(shè)置本學(xué)期的起始截止時間,該功能由系統(tǒng)實現(xiàn),系統(tǒng)導(dǎo)入結(jié)束顯示導(dǎo)入失敗的信息,由管理員和教務(wù)人員配合對導(dǎo)入失敗的信息進行核對(核對過程屬于人工操作),核對完成后再次將正確的數(shù)據(jù)導(dǎo)入數(shù)據(jù)庫。(4)當(dāng)確定所有數(shù)據(jù)已經(jīng)成功導(dǎo)入后,管理員可以開始使用系統(tǒng)進行排課,排課程序執(zhí)行結(jié)束后,系統(tǒng)生成安排失敗課程的報表,管

49、理員將此表交至教務(wù)人員,然后教務(wù)人員根據(jù)失敗課程的任課教師以及所有出席班級的現(xiàn)有課程通過手工方式安排課程的上課時間,若時間仍無法調(diào)度成功可以考慮更換任課教師或?qū)⒄n程安排至非正常授課時間(如周末或者晚上)。(5)教務(wù)人員將安排信息提交至系統(tǒng)管理員,有管理員使用系統(tǒng)的手工排課功能對課程進行空間安排,若不成功則返回步驟(4)直至全部課程安排成功。3.3.4 數(shù)據(jù)字典在上一節(jié)中通過數(shù)據(jù)流圖對系統(tǒng)進行了邊界劃分,本節(jié)將以數(shù)據(jù)字典的形式具體說明數(shù)據(jù)流圖中的主要數(shù)據(jù)對象的信息,以便開發(fā)過程中的程序設(shè)計及數(shù)據(jù)庫設(shè)計。名字:教學(xué)樓基本信息描述:本校所有教學(xué)樓的信息定義:教學(xué)樓基本信息=教學(xué)樓ID+教學(xué)樓所在校區(qū)

50、+教學(xué)樓名稱位置:保存至數(shù)據(jù)庫名字:教室基本信息描述:本校全部教室的基本信息定義:教室基本信息=教室ID+所屬教學(xué)樓ID+教室類型+教室座位數(shù)位置:保存至數(shù)據(jù)庫名字:統(tǒng)計的教室數(shù)據(jù)別名:教室統(tǒng)計一覽表描述:對本校全部教室按校區(qū)類型和大小進行分類統(tǒng)計定義:教室統(tǒng)計一覽表=教室所在校區(qū)+教室類型+教室大小+該類教室總數(shù)位置:輸出至打印機名字:課程及用戶信息別名:教務(wù)處學(xué)期數(shù)據(jù)報表定義:教務(wù)處學(xué)期數(shù)據(jù)報表=教師表+課程信息表+班級信息表+學(xué)生表位置:Excel文檔名字:課程信息描述:本學(xué)期所有學(xué)要安排的課程信息定義:課程信息=課程ID+課程名+課程起始學(xué)周+課程結(jié)束學(xué)周+課程全部課時+開課學(xué)院+任課

51、教師ID+所需教室類型+出席課程班級位置:保存至數(shù)據(jù)庫 教務(wù)處學(xué)期數(shù)據(jù)表名稱:課程安排信息描述:系統(tǒng)對課程上課地點的安排結(jié)果定義:課程安排信息=安排編號+上課教室編號+上課星期+上課課節(jié)+任課教師ID位置:保存至數(shù)據(jù)庫名稱:課程時間安排信息別名:手工課程安排時間表描述:教務(wù)人員提供的用于課程手動安排的課程時間信息定義:課程時間安排信息=課程ID+教室校區(qū)+教室類型+上課人數(shù)+課程起始學(xué)周+課程結(jié)束學(xué)周+上課星期+上課課節(jié)位置:保存至數(shù)據(jù)庫名稱:用戶信息描述:系統(tǒng)所有用戶的信息定義:用戶信息=教師信息+學(xué)生信息+管理員信息位置:保存至數(shù)據(jù)庫 教務(wù)處學(xué)期數(shù)據(jù)報表名稱:教師信息描述:本學(xué)期所有進行授

52、課的教師的基本信息定義:教師信息=教師ID+教師名稱+教師所屬學(xué)院+個人密碼位置:保存至數(shù)據(jù)庫 教務(wù)處學(xué)期數(shù)據(jù)表名稱:學(xué)生信息描述:所有在校學(xué)生的基本信息定義:學(xué)生信息=學(xué)生ID+學(xué)生姓名+學(xué)生所在班級ID+學(xué)生密碼位置:保存至數(shù)據(jù)庫 教務(wù)處學(xué)期數(shù)據(jù)表名稱:班級信息描述:本校全部班級的信息定義:班級信息=班級ID+班級入學(xué)年份+班級所屬學(xué)院+班級所屬專業(yè)+班級編號+班級學(xué)生人數(shù)位置:保存至數(shù)據(jù)庫 教務(wù)處學(xué)期數(shù)據(jù)表3.4 本章小結(jié)本章的需求分析主要介紹了系統(tǒng)開發(fā)前進行的準(zhǔn)備工作,系統(tǒng)需求分析做的好壞直接關(guān)系到系統(tǒng)開發(fā)過程的難易程度,因此本章從多個角度對系統(tǒng)進行描述,第一節(jié)問題定義的內(nèi)容是開發(fā)者在

53、和用戶進行溝通后從用戶的角度確定系統(tǒng)開發(fā)主要該解決的問題;第二節(jié)可行性分析是綜合考慮各方面的客觀因素確定本系統(tǒng)是否可以去研究開發(fā);第三節(jié)數(shù)據(jù)流程圖及功能劃分的內(nèi)容是在了解用戶的需求后,綜合考慮當(dāng)今技術(shù)背景,通過對整個系統(tǒng)數(shù)據(jù)的流動對系統(tǒng)的邊界進行明確的劃分,確定了那些工作應(yīng)由系統(tǒng)實現(xiàn),那些內(nèi)容需要人配合系統(tǒng)實現(xiàn);最后一節(jié)是對第三節(jié)的補充,以數(shù)據(jù)字典的形式解釋數(shù)據(jù)流程圖中出現(xiàn)的主要的數(shù)據(jù)對象的內(nèi)容。第4章 數(shù)據(jù)庫設(shè)計 第4章 數(shù)據(jù)庫設(shè)計4.1 數(shù)據(jù)庫設(shè)計數(shù)據(jù)庫設(shè)計是系統(tǒng)設(shè)計中必不可少的一個階段,教室管理系統(tǒng)屬于一個信息管理系統(tǒng),而信息管理系統(tǒng)的本質(zhì)就是一個對數(shù)據(jù)進行管理的工具,因此數(shù)據(jù)庫設(shè)計的好

54、壞直接關(guān)系著管理的復(fù)雜程度。對數(shù)據(jù)庫的設(shè)計步驟如下:圖 4-1 教室管理系統(tǒng)數(shù)據(jù)庫總體結(jié)構(gòu)圖(1)確定使用中小型數(shù)據(jù)庫管理系統(tǒng)MySQL作為系統(tǒng)數(shù)據(jù)庫,并使用PHP語言編寫的phpMyAdmin作為數(shù)據(jù)庫可視化操作的工具。(2)根據(jù)系統(tǒng)的需求首先對數(shù)據(jù)庫進行了概念設(shè)計,通過對系統(tǒng)中涉及到的數(shù)據(jù)進行分類聚合和概括,最終對教室、教師、學(xué)生、班級和課程等主體建立了抽象的數(shù)據(jù)模型。(3)然后根據(jù)系統(tǒng)所需實現(xiàn)的功能分析各個主體應(yīng)該具有的屬性,并確定主體之間的聯(lián)系以及聯(lián)系的屬性。(4)本著保證數(shù)據(jù)完整性、盡量減少數(shù)據(jù)冗余的基本原則確定數(shù)據(jù)庫中表的數(shù)量以及表中的數(shù)據(jù)項的劃分。(5)在每個表中定義主鍵,定義過

55、程參照數(shù)據(jù)庫第三范式的要求。(6)對數(shù)據(jù)庫中的部分表做調(diào)整,進一步減少數(shù)據(jù)的冗余。(7)使用可視化操作工具phpMyAdmin創(chuàng)建數(shù)據(jù)庫以及數(shù)據(jù)庫表,聲明表中的主鍵和外鍵,并在表之間添加聯(lián)系,完成數(shù)據(jù)庫的創(chuàng)建。最終確定數(shù)據(jù)庫的結(jié)構(gòu)如圖4-1所示。4.2 數(shù)據(jù)庫表接下來對數(shù)據(jù)庫中的每個表進行介紹,字段之前標(biāo)注星號的是表的主鍵。表4-1為學(xué)院數(shù)據(jù)表,用于保存本校全部的學(xué)院信息。表4-1 學(xué)院信息表字段類型長度備注名稱*academy_idint8學(xué)院編號academy_namevarchar20學(xué)院名academy_areavarchar5學(xué)院所在校區(qū)表4-2為教學(xué)樓表,用于保存全校所有教學(xué)樓的信

56、息。表4-2 教學(xué)樓信息表字段類型長度備注名稱*b_idint8教學(xué)樓編號b_areavarchar5教學(xué)樓所在校區(qū)b_namevarchar20教學(xué)樓名稱表4-3為班級表,用于保存當(dāng)前在校的全部班級的信息。表4-3 班級信息表字段類型長度備注名稱*c_idint16班級編號c_academyint8班級所在學(xué)院c_departmentint8班級所在專業(yè)c_classint8班級c_yearint8入學(xué)年份c_students_numint8學(xué)生總數(shù)表4-4、4-5分別為學(xué)生信息表和教師信息表,保存當(dāng)前在校學(xué)生和教師的信息。表4-4 學(xué)生信息表字段類型長度備注名稱*s_idvarchar12

57、學(xué)生號s_namevarchar10學(xué)生姓名s_classint8所在班級編號s_passwordvarchar16個人密碼表4-5 教師信息表字段類型長度備注名稱*t_idvarchar12教師工號t_namevarchar10教師姓名t_academyint8教師所在學(xué)院t_passwordint16個人密碼表4-6為課程表,用于保存本學(xué)期所需開設(shè)的全部課程的信息。其中,subject_sweek以及subject_eweek的含義分別為課程安排成功之后課程的開課以及結(jié)束學(xué)周;subject_axeam用于標(biāo)記該門課程是否已經(jīng)安排開考試;subject_room_type以及subject_area兩條屬性在課程導(dǎo)入時已經(jīng)定義,分別表示希望課程被安排教室的類型和校區(qū),屬于排課條件,排課結(jié)束之后兩條數(shù)據(jù)再無意義;suject_arr也屬于課程安排輔助信息,用于表示課程是否已經(jīng)被安排教室。表4-6 課程信息表字段類型長度備注名稱*subject_idint16課程編號subject_namevarchar20課程名稱subject_sweekint8課程起始學(xué)周subject_academyint8開課學(xué)院subject_eweekin

展開閱讀全文
溫馨提示:
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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!