


下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、.XX大學畢業(yè)設計(論文)學生綜合管理系統(tǒng)學院(系):專業(yè)班級:學生XX:指導教師:目錄1引言11.1題目簡介11.2選題的意義12系統(tǒng)需求分析22.1設計目的22.2開發(fā)工具介紹22.3技術可行性分析32.4操作可行性分析42.5系統(tǒng)組織框架43總體設計53.1業(yè)務流程分析53.2數據流分析83.3功能樹113.4用例圖134數據庫設計154.1模塊ER圖154.2數據庫邏輯設計194.2.1基礎資料數據庫設計194.2.2教學管理數據庫設計234.2.3宿舍管理數據庫設計264.3數據庫連接275系統(tǒng)詳細設計285.1基礎資料功能設計與實現285.1.1登錄界面的設計285.1.2密碼修改
2、295.1.3基礎信息下拉菜單295.1.4班級和專業(yè)信息維護305.1.5學生信息維護325.1.6課程信息維護345.2教學管理功能設計與實現365.2.1開課申請365.2.2學生選課385.2.3活動申請405.3宿舍管理功能的設計與實現415.3.1宿舍分配415.3.2宿舍檢查416測試446.1單元測試446.1.1登錄模塊測試446.1.2基礎信息模塊測試456.1.3教學管理模塊測試486.2綜合測試497總結51致謝52參考文獻53. v.1引言1.1題目簡介高校大學生管理的內容復雜,它涉及眾多的專業(yè)、年級、班級的學生管理系及學生生活起居的問題,是學校校務管理的一項繁重的任
3、務。隨著大學規(guī)模不斷擴大,人工管理難于實現要求,必須采用自動化、智能化進行管理。面對龐大的信息量,需要有學生管理系統(tǒng)來提高學生管理工作的效率。通過這樣的系統(tǒng),可以做到信息的規(guī)X管理、科學統(tǒng)計和快速的查詢,從而減少管理方面的工作量。現在的時代是網絡普及的時代,學生有條件通過網絡方便快捷的查詢自己的個人信息。所以,高校學生綜合管理系統(tǒng)既能方便學校管理部門的管理,又能方便學生及時查詢個人信息。1.2選題的意義隨著中國信息化的加速發(fā)展,位于教育前沿的學校在辦公自動化上也加快了腳步,為了摒棄傳統(tǒng)的人工對學生的信息進行書面的記錄方式,引進了計算機管理方法,在最大的程度上實現學校的辦公自動化和現代化。雖然現
4、在的學校在學生管理上都使用了計算機進行管理,但是現在市場上流行的學生管理軟件有些并不是針對學校對學生的管理需求研發(fā)的。要根據各個學校的實際情況開發(fā)出適合各個學校學生綜合管理的系統(tǒng),必須要有專業(yè)性,要符合各個學校的特色和具體情況。對于學校的實際情況,本系統(tǒng)在實施后,能使教學管理人員從繁瑣的工作中解脫出來,真正的、全身心投入到教學管理工作中去,集中管理,同時帶動學校管理步入現代化管理階段,節(jié)省了大量的人力,物力,財力和時間,使管理清晰準確,使學籍管理體系更加科學化,規(guī)X化,管理化。基于以上的原因,開發(fā)一套操作簡單、維護方便、適合各個階段學校使用的學生管理系統(tǒng)就顯得十分重要與緊迫。于是提出該課題,解
5、決當今學校亟待解決的學生的管理問題。2系統(tǒng)需求分析2.1設計目的使用計算機對高校學生進行管理與人工管理有無法比擬的優(yōu)點,使用計算機管理克服了效率低、XX性差的困難,還具有查找迅速、方便、可靠、壽命長、成本低等優(yōu)點。另外時間一長,將產生大量的文件和數據,這對于查找、更新和維護都帶來了不少困難。總之,使用計算機管理的主要優(yōu)點是能夠提高管理者的效率,這也是開發(fā)本軟件的重要原因之一。本系統(tǒng)是基于現行的高校學生綜合管理,信息處理量大、更新率高。使用單一的人工管理,管理人員不僅工作量大,工作效率低,而且相當繁瑣,更重要的是不容易管理數據,容易出錯并且交互性差。為了提高高校學生綜合程管理規(guī)X化、系統(tǒng)化和自動
6、化,特開發(fā)設計了這套高校學生綜合管理軟件。本系統(tǒng)針對高校學生綜合程管理的各個環(huán)節(jié)建立相應的功能模塊,高校學生綜合管理在正常運轉中需要對教師信息、學生信息、專業(yè)信息、班級信息、宿舍信息、成績信息、課程信息等諸多信息進行統(tǒng)一的管理,本軟件的開發(fā)正是建立在對這些信息的變更之上,既提高了管理的效率,又減輕了管理員和教師的負擔。2.2開發(fā)工具介紹C+ Builder是由Borland公司推出的一款可視化集成開發(fā)工具。C+ Builder具有快速的可視化開發(fā)環(huán)境:只要簡單地把控件(ponent)拖到窗體(Form)上,定義一下它的屬性,設置一下它的外觀,就可以快速地建立應用程序界面;C+ Builder內
7、置了100多個完全封裝了Windows公用特性且具有完全可擴展性(包括全面支持ActiveX控件)的可重用控件;C+ Builder具有一個專業(yè)C+開發(fā)環(huán)境所能提供的全部功能:快速、高效、靈活的編譯器優(yōu)化,逐步連接,CPU透視,命令行工具等。它實現了可視化的編程環(huán)境和功能強大的編程語言(C+)的完美結合 1。C+ Builder具有可視化集成開發(fā)環(huán)境,以事件驅動、圖形用戶界面等為特點,在設計時有著其獨特的優(yōu)越性。它采用了可視化的、面向對象的程序設計方法,大大簡化了應用系統(tǒng)的開發(fā)過程,并提高了系統(tǒng)的模塊性和緊湊性。C+builder中提供了大量的系統(tǒng)開發(fā)工具和控件,利用MySQL技術開發(fā)數據庫使
8、得操作和管理非常方便,從而使以往費時費力的開發(fā)工作變得輕松自如 2。(1) C+ Builder優(yōu)化的32位原碼(Native Code)編譯器建立在Borland公司久經考驗 的編譯技術基礎之上,提供了高度安全性、可靠性、快速性的編譯優(yōu)化方法,完全 編譯出原始機器碼而非中間碼,軟件執(zhí)行速度大大提高。在編譯和連接過程中,C+ Builder自動忽略未被修改的原代碼和沒有使用的函數,從而大大提高了編譯和連接速度。C+ Builder的CPU透視工具包括五個獨立的小面板,可以對正在運行程序 從內部進行深層次的了解。另外C+ Builder還提供了一個專業(yè)開發(fā)環(huán)境所必需的命令行工具,以幫助建立C+程
9、序或者準備編譯和連接的程序進行更精細的控制。 (2) C+ Builder依靠C/C+語言和Borland公司的技術,提供了高級開發(fā)的能力。C+ Builder在提供簡單易用特性的同時,并沒有為開發(fā)者增加限制。開發(fā)者可以 利用C+ Builder來完成許多高級應用開發(fā),擴展空間幾乎是無限的。從許多優(yōu)秀的 第三方VCL組件中,可以看出C+ Builder強大的開發(fā)能力。所以,C+ Builder不僅能夠讓初學者快速開始應用程序的開發(fā),也可以讓富有經驗的開發(fā)者用來開發(fā)功能強大的軟件3。2.3技術可行性分析C+ Builder依靠C/C+語言和Borland公司的技術,提供了高級開發(fā)的能力。目前,開
10、發(fā)者已經可以使用C+ Builder和Kylix 3來開發(fā)跨平臺(Windows/Linux)的應用程序。相信隨著Linux向桌面操作系統(tǒng)的發(fā)展,Kylix能夠得到更廣泛的使用。另外,對于主流的數據庫開發(fā)、Web應用和Web Services等,C+ Builder都有很好的支持。隨著Borland公司 ALM(Application Lifecycle Management,應用周期管理)的發(fā)展,C+ Builder已有很多的軟件工程支持,包括建模、團隊開發(fā)、配置管理、測試、優(yōu)化等環(huán)節(jié),都無逢集成到優(yōu)秀的軟件工具中,配合C+ Builder,可以在整個軟件開發(fā)周期中為開發(fā)團隊中的各個成員(分
11、析師、架構師、開發(fā)人員、測試人員、分發(fā)團隊和管理者)提供完備的支持。例如,將UML建模集成到C+ Builder中,提供UML和C+Builder程序代碼之間的雙向生成,可以大大加快軟件項目的開發(fā)過程。因此,C+ Builder成了本系統(tǒng)的開發(fā)語言。MySQL數據庫的出現使信息系統(tǒng)的研制從以加工數據的程序為中心轉變?yōu)橐怨蚕頂祿鞛橹行膩磉M行。MySQL數據庫開始是在大公司或機構中進行大規(guī)模數據處理后來隨著計算機的逐漸普及,MySQL數據庫才應用到計算機上。MySQL數據庫發(fā)展到今天,已經是相當成熟的階段,它對大量數據處理的能力在不斷的提高、發(fā)展和完善,因此選擇MySQL數據庫是順理成章的事情。
12、從技術角度分析,MIS系統(tǒng)在理論上對于操作系統(tǒng)并沒有明確的限制,即采用Windows 2000以上的版本;MySQL又是我們學習期間最常用的數據庫管理系統(tǒng),它的穩(wěn)定性和易用型都是我們大家所熟知的。因此在數據管理系統(tǒng)上我采用了MySQL。在開發(fā)工具的選擇上,我選用了C+builder 6.0,它在MIS系統(tǒng)的開發(fā)中也是被大量經常使用的,所以開發(fā)學生管理信息系統(tǒng)在技術上是可行的。2.4操作可行性分析使用C+Builder開發(fā)本系統(tǒng),使得系統(tǒng)具有良好的操作界面,簡單直接的操作界面,具有較強的人機對話能力。并且,嚴格按照需求分析設計的各個獨立的模塊都完全具備其功能,任何人都能方便的操作。再有,本系統(tǒng)適
13、應性強,顯示內容簡單明了,使操作者不必具有較高的計算機專業(yè)知識,也不必進行專門的培訓,稍一接觸就可以上手進行所有操作。2.5系統(tǒng)組織框架本系統(tǒng)運用C+builder和MYSQL數據庫開發(fā)的具有三層結構(數據庫-應用服務器-客戶端)的高校學生綜合管理系統(tǒng)。并且利用各種面向對象的開發(fā)工具, 建立各種模板和系統(tǒng)應用原型,在設計過程中通過實際操作不斷修正和改進,直到形成滿意的可行系統(tǒng)。該系統(tǒng)結構良好、穩(wěn)定性好、使用方便。系統(tǒng)能夠實現基本信息維護(專業(yè)、班級、課程、學生、老師、宿舍等基本信息)、教學管理(開課申請、學生選課、活動、比賽等)、宿舍管理(宿舍分配、宿舍繳費等)等幾大功能,組織框架如圖2-1所
14、示。圖2-1 組織框架3總體設計3.1業(yè)務流程分析(1)課程管理業(yè)務流程在老師開課之前,管理員必須先要錄入全校所有可以開設的課程信息,提供給老師選擇。老師登錄系統(tǒng)后根據課程信息列表選擇合適自己的課程申請,申請時,根據申請表的信息完善所申請開設的課程的基本信息,其中包括開課學期、課程性質、考試時間和考試地點等信息,學分和學時等基本信息會在教師選擇課程后自動給出。課程開設完成后,教師在根據學生在課堂上的表現,記錄學生表現信息,包括考勤、課堂表現、平時作業(yè)以及考試成績等,以此作為成績判定的標準,如圖3-1所示。圖3-1 課程管理業(yè)務流程圖(2)活動申請與組織業(yè)務流程教師先根據學校和學院的自身情況和要
15、求,登錄高校學生管理系統(tǒng),提出活動申請,根據申請窗口的提示,填寫好申請人的基本信息和活動的基本信息(活動名稱、活動性質、活動時間、活動地點、活動級別等),再等待學院和學校審批。學院和學校審批合格后,管理員就會發(fā)布本次活動,學生再根據活動的發(fā)布來查詢和報名,管理員再發(fā)布報名情況,如圖3-2所示。活動過程中,老師還要記錄各個學生的表現,根據表現情況最后給予每個學生相應的成績,最后老師在進行活動總結,上交過后,等待活動評價。 圖3-2 活動管理業(yè)務流程圖(3)比賽管理業(yè)務流程管理員先根據學校和學院的自身情況和要求,收集比賽信息,填寫好比賽基本信息(比賽名稱、主辦單位、活動時間、活動地點、活動級別等)
16、,再等待學院和學校審批。學院和學校審批合格后,管理員就會發(fā)布比賽,學生再根據活動的發(fā)布來查詢和報名,管理員再發(fā)布報名情況。然后根據報名列表,老師再對學生進行賽前專門輔導,輔導完成后即學生參加比賽。最后管理員根據比較結果發(fā)布比賽成績,授予相應的證書和獎勵,同時管理員對這些進行存檔,方便以后校對與查詢,如圖3-3所示。圖3-3 比賽業(yè)務流程圖(4)宿舍管理業(yè)務流程首先宿舍管理員會先根據學院提供的學生初步分配好學生宿舍,然后通過管理員把宿舍分配情況發(fā)布,學生根據宿舍分配情況入住。等學生入住后,宿舍管理員會定期或者不定期的對宿舍進行考勤和宿舍檢查,并做好考勤記錄和衛(wèi)生評分記錄。隔一段時間公布考勤記錄和
17、衛(wèi)生評分,供學生查詢和核對,如果所以信息都能核對上就上交管理員正式發(fā)布;如果不能核對上學生及時向宿舍管理員反饋,管理員及時核實和修正,最后上交系統(tǒng)管理員。等到期末的時候,宿舍管理員就會根據平時的考勤記錄信息和平時衛(wèi)生檢查情況信息對每個寢室和個人評分,再根據評出來的總分進行宿舍分配,分配完成后上交給系統(tǒng)管理員發(fā)布,學生再根據宿舍分配情況調整宿舍,如圖3-4所示。圖3-4 宿舍管理業(yè)務流程圖3.2數據流分析數據流即:只能以事先規(guī)定好的順序被讀取一次的數據的一個序列。本系統(tǒng)主要分析的數據流集中在教學管理模塊和宿舍管理模塊,具體如下。(1)課程管理教師先根據學校和學院的自身情況和要求,登錄高校學生管理
18、系統(tǒng),提出活動申請,根據申請窗口的提示,填寫好申請人的基本信息和活動的基本信息(活動名稱、活動性質、活動時間、活動地點、活動級別等),再等待學院和學校審批。學院和學校審批合格后,管理員就會發(fā)布本次活動,學生再根據活動的發(fā)布來查詢和報名,管理員再發(fā)布報名情況,如圖3-5所示。圖3-5 課程管理數據流圖(2)課堂記錄和成績管理課程開設完成后,教師在根據學生在課堂上的表現,記錄學生表現信息,包括考勤、課堂表現、平時作業(yè)以及考試成績等數據的流向,得到最后想要得到的結果,如圖3-6所示。圖3-6 課堂記錄和成績管理數據流圖(3)活動管理教師先根據學校和學院的自身情況和要求,登錄高校學生管理系統(tǒng),提出活動
19、申請,根據申請窗口的提示,填寫好申請人的基本信息和活動的基本信息(活動名稱、活動性質、活動時間、活動地點、活動級別等),再等待學院和學校審批。學院和學校審批合格后,管理員就會發(fā)布本次活動,學生再根據活動的發(fā)布來查詢和報名,管理員再發(fā)布報名情況,如圖3-7所示。圖3-7 活動管理數據流圖(4)比賽管理管理員先根據學校和學院的自身情況和要求,收集比賽信息,填寫好比賽基本信息(比賽名稱、主辦單位、活動時間、活動地點、活動級別等),再等待學院和學校審批。學院和學校審批合格后,管理員就會發(fā)布比賽,學生再根據活動的發(fā)布來查詢和報名,管理員再發(fā)布報名情況等數據的流向過程,如圖3-8所示。圖3-8 比賽管理數
20、據流圖 (5)宿舍管理其數據流圖宿舍管理員登陸系統(tǒng)后,進入宿舍管理模塊,再每學期開學的時候,宿舍管理員都會把宿舍分配情況發(fā)布到系統(tǒng)里面,讓同學和老師查詢,學生再根據分配情況各自搬到相應的宿舍,如圖3-9所示。學生入住后,管理員會定期或者不定期的對宿舍進行檢查,包括考勤與衛(wèi)生檢查,并且做記錄,以及發(fā)布考勤和得分情況供學生核對,在期末時根據平時的考勤和得分情況計算出總分,并發(fā)布供學生查詢,最后根據總分的高低來安排宿舍。圖3-9 宿舍管理數據流圖3.3功能樹基礎資料|-學生信息|-班級信息維護|-專業(yè)信息維護|-學生信息維護|-學生信息查詢|-教師信息|-課程基本信息維護|-教師信息維護|-教師信息
21、查詢|-宿舍管理員信息|-宿舍管理員信息維護|-宿舍管理員信息查詢|-宿舍信息|-宿舍信息維護|-宿舍信息查詢教學管理|-學籍管理|-報道注冊|-學籍注銷:學生畢業(yè)|-課程管理|-開課申請|-開課審批與發(fā)布|-學生選課|-選課發(fā)布|-考試安排|-考試成績錄入|-成績發(fā)布|-活動管理|-活動申請|-活動發(fā)布|-活動查詢與報名|-活動報名情況發(fā)布|-活動記錄與總結|-比賽管理|-比賽信息發(fā)布|-比賽信息查詢與報名|-比賽報名發(fā)布宿舍管理|-日常管理|-發(fā)布宿舍分配信息|-考勤記錄|-衛(wèi)生評分|-綜合評分|-總分發(fā)布|-總分查詢|-發(fā)布宿舍調整信息|-查詢宿舍調整信息|-后勤管理|-發(fā)布費用清單|-
22、收費處理|-繳費查詢3.4用例圖(1)教師用例 教師登錄系統(tǒng)后,系統(tǒng)根據用戶角色授權顯示教師登錄界面,其功能有開課申請、考試安排、成績錄入、成績錄入、活動申請、活動報名查詢、比賽報名查詢、學生信息查詢、教師信息查詢等,教師可以根據需要操作相應模塊,如圖3-10所示。圖3-10 教師用例圖(2)管理員用例 管理員登錄系統(tǒng)后,系統(tǒng)根據用戶角色授權顯示管理員登錄界面,其功能有基礎信息維護(學生信息、教師信息、班級信息、專業(yè)信息、課程信息、宿舍信息等)、報道注冊、信息發(fā)布(開課列表、選課信息、成績信息、活動列表、各種報名信息)等,管理員可以根據需要操作相應模塊,如圖3-11所示。圖3-11 管理員用例
23、圖 (3)學生用例 學生登錄系統(tǒng)后,系統(tǒng)根據用戶角色授權顯示學生登錄界面,其功能有比賽報名、活動報名、選課以及各種信息查詢等,學生可以根據需要操作相應模塊,如圖3-12所示。圖3-12 學生用例圖 (4)宿舍管理員用例宿舍管理員登錄系統(tǒng)后,系統(tǒng)根據用戶角色授權顯示宿舍管理員登錄界面,其功能宿舍分配、宿舍檢查、總分發(fā)布、費用清單發(fā)布、收費處理和宿舍信息查詢等,宿舍管理員可以根據需要操作相應模塊,如圖3-13所示。圖3-13 宿舍管理員用例圖4數據庫設計本系統(tǒng)采用MySQL數據庫設計,MySQL的數據庫對象主要包含有表、主鍵、約束、默認值、數據類型、視圖、存儲過程等。數據庫的數據特點都是通過數據庫
24、對象表現出來的,在設計數據庫之前弄清數據庫對象是非常必要的。下面是設計數據表的具體步驟:(1)確定數據庫實體:確定數據庫實體即是具有相同屬性的事件或事物,在設計數據表之前我們應該深入的考慮所做的程序都用到實體的什么屬性和該怎樣表述。(2)規(guī)劃數據表:表是具體組織和存儲數據的對象,由列和行組成。表中的數據通常是關于某個特定類別的事物的信息。在設計時,行和列的順序可以是任意的,但一個表中列的名字必須是唯一的,這就能保證不出現重復的屬性。(3)確定主鍵:主鍵是表中一列或多列的組合,其值唯一標識了表中的一行記錄。任意兩行之間的主鍵不能有相同的值,它確定了表中不能出現有相同的數據。(4)選擇數據類型:S
25、QL Server 2000 提供的數據類型有系統(tǒng)數據類型和用戶自定義類型,它表明了數據的屬性。數據類型必須與該數據所表示的對象屬性相符。(5)確定數據約束:約束是SQL Server 2000實施數據一致性和完整性的方法。它對表中各列的取值X圍進行限制,使數據更為合理。(6)確定外鍵:外鍵是確定表與表之間關系的數據對象,表與表之間的關系也只能由外鍵來確定,只有確定表與表之間的關系后,數據庫里的數據才能相互聯系起來,才是一個完整的數據庫體系。4.1模塊E-R圖(1)登錄管理登錄窗體中,首先要定義好菜單的各個屬性,例如:編號、名稱、菜單級別號、授權等級、窗體名稱等。這樣才能確定菜單生成后會出現在
26、哪個窗體上,出現的級別是怎么樣的。菜單列表與角色菜單列表的對應關系是一對多的關系,因為同一個菜單列表可以對多個角色開放,一個角色只有一個菜單列表,其E-R圖如圖4-1所示。圖4-1 登錄管理E-R圖(2)基本信息在基本信息E-R圖中,最關鍵的實體是學生,其中的關系為學生與班級的對應關系是多對一,因為一個班級由多個學生組成,而一個學生只能在一個班級里;班級與專業(yè)也是多對一的關系,一個專業(yè)會有多個班級,一個班級只能屬于一個專業(yè);專業(yè)與教師的關系為多對一,一個專業(yè)有許多老師,而一個老師只屬于一個專業(yè);學生與入住信息是一對一的關系,一個學生只有一個入住信息,一X入住信息表也只記錄一個學生的信息;入住信
27、息與宿舍信息是多對一的關系,一個入住信息記錄只能屬于一個宿舍,而一個宿舍可以入住多個學生,就會有多個入住信息記錄,其E-R圖如圖4-2所示。圖4-2 基本信息E-R圖(3)課程管理在課程管理E-R圖中,學生與選課的對應關系是一對多的關系,一個學生可以有多個選課信息,一個選課信息只能屬于一個學生;選課與課程信息的對應關系是多對一的關系,一條開課信息可以有很多同學選擇,所以會有多個選課信息,而一個選課信息只能對應一條開課信息;課程信息與課程列表是多對一的關系,一門課可以有多個老師開設,或者一個老師對同一門課教授多個班級,而每一條開課信息只能屬于某一門課,其E-R圖如圖4-3所示。圖4-3 課程管理
28、E-R圖(4)繳費管理在繳費管理E-R圖中,學生信息與繳費記錄的對應關系為一對多,因為一個學生可以有多次繳費,會產生多條繳費記錄,或者一個學生一次可以交多種費用,也會產生多條記錄,而一條記錄只能有一個學號,其E-R圖如圖4-4所示。圖4-4 繳費管理E-R圖(5)活動管理在活動管理E-R圖中,學生信息與活動記錄是一對多的關系,因為一次活動中學生只能報名一次,而活動會有很多學生報名;活動記錄與活動列表是對多一的關系,一次活動可以有多條活動記錄來記錄學生的活動信息,而一條活動記錄只能記錄本次活動的信息,其E-R圖如圖4-5所示。圖4-5 活動管理E-R圖 (6)宿舍檢查在宿舍檢查E-R圖中,宿舍信
29、息與宿舍檢查信息的對應關系為一對多的關系,因為在本系統(tǒng)中,一條宿舍檢查信息只能記錄一個學生的檢查信息,而一間宿舍會住有多個學生,會產生多條檢查記錄,其E-R圖如圖4-6所示。圖4-6 宿舍檢查E-R圖4.2據庫邏輯設計4.2.1基礎資料數據庫設計本過程是將數據庫概念結構轉化為MySQL數據庫系統(tǒng)支持的實際數據模型,即數據庫的邏輯結構。系統(tǒng)數據庫中各個表的設計結果如下所示。(1)學生信息表(P_Student):主要存放學生基本信息,如表4-7所示。數據來源:直接在學生信息維護窗體中錄入;關系模式為:P_Student(學號,性別,籍貫,XX號,初三日期,家庭地址,郵編,聯系,狀態(tài),E_Mail
30、)。表4-7 學生信息表(2)教師信息表(P_Teacher):主要存放教師基本信息,如表4-8所示。數據來源:直接在教師信息維護窗體中錄入;關系模式為:P_Teacher(職工號,性別,職稱,聯系,手機,地址,郵編,E_Mail)。表4-8 教師信息表(3)班級信息表(P_Class_info):主要存放班級基本信息,如表4-9所示。數據來源:直接在班級信息維護窗體中錄入;關系模式為:P_Class_info(班級ID,班級編號,班級名稱,人數,入學時間,畢業(yè)時間,班級狀態(tài))。表4-9 班級信息表 (4)專業(yè)信息表(P_Major):主要存放專業(yè)基本信息,如表4-10所示。數據來源:直接在專
31、業(yè)信息維護窗體中錄入;關系模式為:P_Major(專業(yè)ID,專業(yè)編碼,專業(yè)名稱,專業(yè)負責人ID,專業(yè)負責人,所屬系編碼,所屬系名稱,系主任ID,系主任,所在學院編碼,所在學院,院長ID,院長)。表4-10 專業(yè)信息表(5)宿舍信息表(Dor_info):主要存放宿舍基本信息,如表4-11所示。數據來源:直接在宿舍信息維護窗體中錄入;關系模式為:P_Major(樓號,宿舍號,床位數,宿舍,財產情況)。表4-11 宿舍信息表(6)菜單列表(sys_menu):主要存放菜單基本信息,如表4-12所示。數據來源:在主窗體創(chuàng)建后通過SQL語言添加到數據庫;關系模式為:sys_menu(menuID,ob
32、jID,supID,menuTitle,formName,paramdescription,remark)。表4-12 菜單列表(7)用戶表(sys_user):主要存放用戶基本信息,如表4-13所示。數據來源:管理員在各個用戶維護窗體中錄入,自動添加到數據庫;關系模式為:sys_user(用戶ID,角色ID,密碼,用戶狀態(tài),創(chuàng)建日期,描述)。表4-13 用戶表(8)課程信息表(P_Course_list):主要存放用戶基本信息,如表4-14所示。數據來源:管理員在課程信息維護窗體中錄入,自動添加到數據庫;關系模式為:P_Course_list(課程ID,課程編號,課程名,學分,學時,推薦教材
33、,專業(yè)ID)。表4-14 課程信息表4.2.2教學管理數據庫設計(1)開課申請表(P_Courses):主要存放開課基本信息,如表4-15所示。數據來源:教師在開課申請窗體中錄入,自動添加到數據庫;關系模式為:P_Course(開課編號,課程性質,課程狀態(tài),開課學期,考試時間,考試地點,教材,教學大綱)。表4-15 開課申請表(2)選課表(Edu_Select_course):主要存放選課基本信息,如表4-16所示。數據來源:學生在選課申請窗體中錄入,自動添加到數據庫;關系模式為:Edu_Select_course(學號,課程ID,編號,選課時間,考勤成績,課堂表現成績,平時成績,考試成績,補
34、考成績,總成績)。表4-16 選課表(3)活動列表(Edu_Activities_list):主要存放活動基本信息,如表4-17所示。數據來源:教師在活動申請窗體中錄入,自動添加到數據庫;關系模式為:Edu_Activities_list(活動號,活動名稱,活動性質,活動級別,活動狀態(tài),活動時間,活動地點,活動內容,職工號)。表4-17 活動列表(4)活動記錄表(Edu_Activities_record):主要存儲活動記錄信息,如表4-18所示。數據來源:在活動記錄窗體中錄入,自動添加到數據庫;關系模式為:Edu_Activities_record(學號,活動號,報名時間,活動表現記錄,活動
35、成績,活動總結,活動評價,備注)。表4-18 活動記錄表 (5)比賽列表(Edu_petition_list):主要存放比賽信息,如表4-19所示。數據來源:在比賽窗體中錄入,自動添加到數據庫;關系模式為:Edu_petition_list(比賽號,比賽名稱,比賽級別,比賽時間,比賽地點,相關專業(yè),主辦單位,比賽內容,報名條件,進行狀態(tài))。表4-19 比賽列表 (6)比賽記錄表(Edu_petition_record):存放比賽記錄信息,如表4-20所示。數據來源:在比賽報名窗體中錄入,自動添加到數據庫;關系模式為:Edu_petition_list(學號,比賽號,報名時間,比賽表現記錄,比賽
36、成績,比賽總結,比賽評價,備注)。表4-20 比賽記錄表4.2.3宿舍管理數據庫設計(1)入住信息表(Dor_in_info):主要存放入住信息,如表4-21所示。數據來源:在入住登記窗體中錄入,自動添加到數據庫;關系模式為:Dor_in_info(學號,樓號,宿舍號,入住時間,床號)。表4-21 入住信息表(2)繳費記錄表(Dor_Payment_info):主要存放繳費信息,如表4-22所示。數據來源:在繳費窗體中錄入,自動添加到數據庫;關系模式為:Dor_Payment_info(編號,繳費記錄編號,學號,樓號,宿舍號,宿舍管理員編號,繳費名稱,繳費金額,繳費時間,備注)。表4-22 繳
37、費記錄表(3)宿舍檢查表(Dor_Check_cleanl_record):主要存放檢查信息,如表4-23所示。數據來源:在檢查窗體中錄入,自動添加到數據庫;關系模式為:Dor_Payment_info(樓號,宿舍號,床號,檢查日期,宿舍管理員編號,學號,衛(wèi)生成績,出去標志,打分依據,意見,備注)。表4-23 宿舍檢查表4.3數據庫連接本系統(tǒng)采用MySQL數據庫,首先根據業(yè)務流圖、數據流圖、功能樹和ER圖等結合PowerDesigner軟件畫好各個表以及表與表之間的關系;再根據已有的關系生成可執(zhí)行的.sql文件,通過命令:mysql -u root -p tchstu<e:dbsym.s
38、ql(我的sym.sql文件在E:db文件中)把PowerDesigner建立的表在數據庫中生成。然后應用服務器通過ODBC和數據庫連接,接著在應用服務器中通過Database與ODBC連接,并且在Database中建立遠程數據模塊RemoteDataModule;然后在客戶端建立數據模塊DataModule通過Tsocket與應用服務器端的遠程數據模塊連接,這樣一整套的數據連接就完成了,并形成標準的三次C/S結構。5系統(tǒng)詳細設計高校學生綜合管理在功能上劃分,有三大模塊:基礎資料維護模塊、教學管理模塊和宿舍管理模塊。基礎資料維護模塊主要實現的功能是:學生信息維護、教師信息維護、宿舍管理員信息維
39、護、宿舍信息維護、班級信息維護、課程信息維護、專業(yè)信息維護等;教學模塊主要實現的功能是:教師開課申請,學生選課,考試安排,成績管理,活動申請,活動報名,比賽報名,以及對成績和比賽的查詢等;宿舍管理模塊主要實現的功能是:宿舍分配、宿舍檢查、宿舍繳費等。5.1基礎資料功能設計與實現5.1.1登錄界面的設計 (1)運行時首先顯示的是登錄界面,如圖5-1所示。圖5-1 登錄界面【用戶名】和【密碼】的顯示框的ReadOnly屬性設置為false,即是通過鍵盤輸入內容。輸入用戶名和密碼后點擊登錄后,如果沒輸入用戶名,會提示輸入用戶名;如果沒輸入密碼,會提示輸入密碼;如果用戶名和密碼能和數據庫匹配上則能成功
40、登錄到相應權限下的客戶端主界面上;如果與數據庫中的數據匹配不上則回提示用戶不存在或者密碼錯誤。把登錄用戶的用戶名顯示在客戶端主窗體中實現的代碼如下:if (strcmp(user->userID,"admin")=0) strcpy(user->userName,"管理員"); else dataset->Close(); switch (user->roleID) case 2: dataset->mandText="SELECT teacherName from P_Teacher where (teacher
41、ID='"+AnsiString(user->userID)+"')" break; case3: dataset->mandText="SELECT stuName from P_Student where (stuNum='"+AnsiString(user->userID)+"')" break; 5.1.2密碼修改用戶登錄后,可以選擇修改密碼,修改密碼界面如圖5-2所示。圖5-2 密碼修改當每次添加一個新用戶時,會自動創(chuàng)建賬戶和密碼,每個新用戶的初始密碼都設置為空,所
42、以每個用戶登錄后都可以根據自己的情況修改密碼,密碼為長度不超過32位的字符。5.1.3基礎信息下拉菜單在客戶端主界面中,鼠標滑動到菜單上,就會顯示出下拉菜單列表,如圖5-3所示。圖5-3 基礎信息下拉菜單列表5.1.4班級和專業(yè)信息維護 (1)班級信息維護的界面,如圖5-4所示。圖5-4 班級信息維護(2)主要實現的功能添加功能:管理員剛進入系統(tǒng)是沒有班級,管理員要根據實際情況點擊【添加】按鈕來添加已有的班級信息,其中班級的添加是根據所在系來選擇添加的。點擊添加后會彈出一個班級屬性的窗體,里面有班級所屬系的選擇,如圖5-5所示。修改功能:管理員點擊【修改】按鈕時,如果有班級列表并選擇了一個,則
43、會彈出如圖5-5的窗口,修改需要修改的屬性,然后點擊保存就會自動保存到數據庫里面去;如果沒有選擇班級,則自動選擇第一個;如果沒有班級列表,會提示你選擇班級。圖5-5 班級屬性刪除功能:點擊【刪除】按鈕時,如果有班級列表并選擇了一個,就會刪除一個班級項;如果沒有選擇班級,則自動選擇第一個;如果沒有班級列表,會提示你選擇班級。退出功能:點擊【退出】按鈕后,會直接返回到客戶端主窗體界面,可以繼續(xù)選擇其他菜單。cdsProperty組件的實現是:select C.classID,C.classCode,C.className,M.majorName,C.classCount,C.InTime from
44、 P_Class_info AS C left join P_Major M on (C.majorID=M.majorID) where (C.class_status=1)。在圖5-5班級屬性窗體中點擊SpeedButton1按鈕,選擇班級所屬的系,選擇系后再在各個DBEdit中填寫班級屬性,點擊保存即可。點擊SpeedButton1按鈕后,會彈出所以系的列表,如圖5-6所示。cdsProperty組件的實現是:select C.classID,C.classCode,C.className,C.majorID,C.classCount,C.InTime,C.outTIme,class_s
45、tatus from P_Class_info AS C where (C.classID=:oid),其中oid是一個整形參數,通過點擊SpeedButton1獲得。cdsProperty通過SQL語句和數據庫連接,把當前classID和系列表中的classID聯系起來,產生的數據直接保存到數據庫里面。圖5-6 專業(yè)列表其中管理員也可以通過點擊專業(yè)列表窗體中的【添加】、【刪除】、【保存】、【退出】等按鈕來對專業(yè)進行維護,但是每次添加或者刪除和修改后都必須點擊保存才能生效,其中添加事件的代碼如下:cdsGrid->Append();cdsGrid->Edit();cdsGrid-&
46、gt;FieldByName("majorID")->AsInteger=getMaxID("P_Major","majorID");通過cdsGrid組件直接保存到數據庫里面。5.1.5學生信息維護 (1)學生信息維護界面設計,如圖5-7所示。圖5-7 學生信息列表(2)主要實現的功能添加功能:管理員剛進入系統(tǒng)是沒有學生信息,管理員要根據實際情況點擊【添加】按鈕來添加學生信息,其中學生的添加是根據所在班級來選擇添加的。點擊【添加】按鈕前必須通過SpeedButton1按鈕來選擇一個班級,否則會提示沒有選擇班級,不能添加。選擇班
47、級后,會彈出一個如圖5-8所示的窗口,雙擊所需要的選擇的班級,則在圖5-7的窗體中就會顯示班級名稱。圖5-8 班級列表修改功能:管理員點擊【修改】按鈕時必須通過SpeedButton1按鈕來選擇一個班級,否則會提示沒有選擇班級,不能修改。如果有學生列表并選擇了一個,則會彈出如圖5-9的窗口,修改需要修改的屬性,然后點擊保存就會自動保存到數據庫里面去;如果沒有選擇學生,則自動選擇第一個;如果沒有學生列表,會提示你選擇一個學生。圖5-9 學生屬性刪除功能:點擊【刪除】按鈕時必須通過SpeedButton1按鈕來選擇一個班級,否則會提示沒有選擇班級,不能刪除。如果有學生列表并選擇了一個,就會刪除一個
48、學生項;如果沒有選擇學生,則自動選擇第一個;如果沒有學生列表,會提示你選擇一個學生。退出功能:點擊【退出】按鈕后,會直接返回到客戶端主窗體界面,可以繼續(xù)選擇其他菜單。在【添加】或者【修改】學生屬性時,對于出生日期的選擇是通過SpeedButton1來實現的,點擊一下SpeedButton1按鈕,會出現如圖5-10的日期窗口,供你選擇。圖5-10 日期選擇(3)主要代碼實現日期選擇的SpeedButton1代碼實現:void _fastcall TFormSut:SpeedButton1Click(TObject *Sender) AnsiString day= cdsProperty->
49、FieldByName("stu_birthDate")->AsString; day=getDate1(day); cdsProperty->Edit(); cdsProperty->FieldByName("stu_birthDate")->AsString=day; 其中學生信息列表中DBGridEh1的OddRowColor屬性設置為ClWindow,表示DBGridEh1的顏色為默認顏色;BorderStyle屬性設置為bdLeftToRight,表示DBGridEh1的列表從左到右對齊;Ctl3D屬性設置為true,表
50、示帶有3D效果。5.1.6課程信息維護 (1)課程信息維護界設計,面如圖5-11所示。圖5-11 課程信息列表(2)主要實現的功能添加功能:管理員要根據實際情況點擊【添加】按鈕來添加課程信息,其中課程的添加是根據所在專業(yè)來選擇添加的。點擊【添加】按鈕前必須通過SpeedButton1按鈕來選擇一個專業(yè),否則會提示沒有選擇班級,不能添加。選擇專業(yè)后,會彈出一個如圖5-11所示的窗口,雙擊所需要的選擇的班級,則再圖5-11的窗體中就會顯示專業(yè)名稱。然后再點擊【添加】按鈕,會出現圖5-12的窗體。cdsProperty組件的實現是:select C.course_ID,C.course_num,C.
51、course_name,C.course_credits,C.course_hours from P_Course_list AS C where(C.majorID=:majid) ,其中majid是一個整形參數,通過點擊SpeedButton1獲得。修改功能:管理員點擊【修改】按鈕時必須通過SpeedButton1按鈕來選擇一個班級,否則會提示沒有選擇班級,不能修改。如果有課程列表并選擇了一個,則會彈出如圖5-12的窗口,修改的屬性,然后點擊保存就會自動保存到數據庫里面去;如果沒有選擇課程,則自動選擇第一個;如果沒有課程列表,會提示你選擇一門課程。刪除功能:點擊【刪除】按鈕時必須通過Spe
52、edButton1按鈕來選擇一個專業(yè),否則會提示沒有選擇專業(yè),不能刪除。如果有課程列表并選擇了一個,就會刪除一個課程項;如果沒有選擇課程,則自動選擇第一個;如果沒有課程列表,會提示你選擇一門課程。退出功能:點擊【退出】按鈕后,會直接返回到客戶端主窗體界面,可以繼續(xù)選擇其他菜單。圖5-12 課程屬性(3)主要代碼實現專業(yè)列表的雙擊事件代碼實現:void _fastcall TFormMajorList:DBGridEh1DblClick(TObject *Sender) if (cdsGrid->FieldByName("majorID")->AsInteger=
53、0) Application->MessageBox("空行不能選擇,請選擇退出!","提示",MB_OK) ; else iteminfo->itemID= cdsGrid->FieldByName("majorID")->AsInteger; iteminfo->itemName= cdsGrid->FieldByName("majorName")->AsString; ModalResult=mrOk; /關閉窗口其中課程屬性窗體中cdsProperty組件的實現是:
54、select * from P_Course_list where(course_ID=:oid),oid為雙擊事件后自動連接的課程編號的值;DBEdit1到DBEdit6這六個組件的DataSource屬性為DataSource1,連接到應用服務器的【編輯】組件上,DataField屬性為各自的名稱,與數據庫中各個屬性對應并建立連接。5.2教學管理功能設計與實現5.2.1開課申請 (1)開課申請界面設計,如圖5-13所示。圖5-13 教師開課申請(2)功能實現開課申請是通過SpeedButton1選擇所有課程列表,然后教師在根據課程列表選擇自己要開始的課程。當點擊客戶端主窗體上【開課申請】后
55、出現如圖5-13所示窗體,窗體上會直接顯示當前登錄教師的名字,然后點擊SpeedButton1按鈕會出現如圖5-14所示的課程列表。如果課程列表為空,雙擊后會直接退回到申請界面;如果課程列表不為空,雙擊所要選擇的課程后,課程列表會自動關閉,同時開課申請表里面會通過cdsGrid的連接自動顯示出課程名稱、學分、學時等信息。圖5-14 課程列表cdsGrid組件實現:select * from P_Courses ;然后各個DBEdit通過DataSource與應用服務器端的遠程數據模塊連接,直接獲取或者修改數據庫中的數據。其中cdsGrid的Active屬性必須設置為true,這樣才能通過Dat
56、aSource連接到數據庫中。雙擊cdsGrid組件,會出現一個FormCourseList小窗體,窗體里面根據mandText屬性的SQL語句顯示所在的表屬性。當不需要顯示的表屬性可以通過點擊右鍵來選擇【delete】來刪除,通過設置DisplayLabl的值來改變顯示的表屬性的名稱,設置DisplayWidth來設置表屬性所占的寬度。保存功能:當教師選擇課程并且完成課程的所有屬性后,點擊【保存】按鈕,會提示保存成功,如圖5-15所示退出功能:點擊【退出】按鈕后,會直接返回到客戶端主窗體界面,可以繼續(xù)選擇其他菜單。圖5-15 保存成功(3)主要代碼實現保存按鈕代碼實現:void _fastcall TFormCourseApply:ToolButton7Click(TObject *Sender) int err=cdsGrid->ApplyUpdates(0); if (err=0) Application->Messag
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 工業(yè)自動化技術及其應用案例分析
- 工業(yè)自動化技術的創(chuàng)新發(fā)展
- 工作之余的放松之道如何有效利用假期旅行
- 工作生活平衡與壓力管理技巧
- 工業(yè)領域中的綠色制造策略
- 工作效率提升的科技趨勢分析
- 工作場合英語口語提升方法
- 工程施工中的材料管理優(yōu)化
- 工程機械在變載條件下的動力特性研究
- 工程測量中的數據智能處理技術
- 2025年江西報業(yè)傳媒集團有限責任公司招聘筆試沖刺題(帶答案解析)
- (2025)《公共基礎知識》試真題庫與答案
- 江西省南昌市第一中學教育集團2023-2024學年八年級下學期數學期末試卷(含答案)
- 瓦斯抽采考試題庫及答案
- 2025年班組長個人職業(yè)素養(yǎng)知識競賽考試題庫500題(含答案)
- 網絡題庫財務會計知識競賽1000題(僅供自行學習使用)
- 關于衛(wèi)生院“十五五”發(fā)展規(guī)劃(完整本)
- 國開《管理學基礎》形考任務1-4答案(工商企業(yè)管理專業(yè))
- 2025年南郵面試試題及答案
- DB22T 2573-2016 房產面積計算規(guī)則
- 第五講鑄牢中華民族共同體意識-2024年形勢與政策
評論
0/150
提交評論