




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上防 災(zāi) 科 技 學(xué) 院畢 業(yè) 設(shè) 計題目學(xué)生選課系統(tǒng)的設(shè)計與實現(xiàn)學(xué)生姓名涂語楠學(xué)號 系 別災(zāi)害信息工程系 專 業(yè)信息管理與信息系統(tǒng) 班級07302 開題時間 2011 年 1 月 1 日答辯時間2011年06月11日指導(dǎo)教師白靈職 稱講師專心-專注-專業(yè)學(xué)生選課系統(tǒng)的設(shè)計與實現(xiàn)作者:涂語楠指導(dǎo)老師:白靈摘要: 隨著我校大學(xué)生人數(shù)的不斷增加,使得教務(wù)管理系統(tǒng)的數(shù)據(jù)量也不斷上漲。為了減輕教務(wù)處的教務(wù)管理工作,以及方便學(xué)生選擇自己所喜歡的科目。學(xué)生選課系統(tǒng)針對這一環(huán)節(jié),實現(xiàn)教學(xué)資源實體與學(xué)生兩個集合的協(xié)調(diào)統(tǒng)一,規(guī)避課程分配沖突,更加有效銜接教學(xué)管理系統(tǒng)的各子系統(tǒng)的關(guān)系。本系
2、統(tǒng)是一個典型的信息管理系統(tǒng),其開發(fā)主要包括后臺數(shù)據(jù)庫的建立和維護(hù),以及客戶端程序的開發(fā)兩個方面。本文通過分析客戶端/服務(wù)器結(jié)構(gòu)的特點并結(jié)合選課的實際情況,提出了基于客戶端/服務(wù)器結(jié)構(gòu)選課系統(tǒng)的基本設(shè)計思想,簡要介紹了系統(tǒng)需求分析和系統(tǒng)的功能設(shè)計、ACCESS數(shù)據(jù)庫設(shè)計、C#程序設(shè)計及系統(tǒng)實現(xiàn)過程。重點描述了如何利用C#以及ACCESS數(shù)據(jù)庫管理系統(tǒng)相結(jié)合的方法來開發(fā)基于客戶端的選課系統(tǒng)。并在試運行的基礎(chǔ)上對系統(tǒng)進(jìn)一步完善提出了改進(jìn)方案。通過該系統(tǒng),使學(xué)生可以方便地在局域網(wǎng)內(nèi)的計算機上安裝客戶端進(jìn)行選課。關(guān)鍵詞:學(xué)生選課,客戶端/服務(wù)器結(jié)構(gòu),C#,ACCESS數(shù)據(jù)庫管理系統(tǒng)The Design
3、and Implementation of Student Select Course SystemAuthor:TU Yu-nanInstructor:BAI LingAbstract: With the increasing number of college students, the amount of data continue to rise greatly in educational system. In order to reduce the work of office of Academic Affairs , and make each student to bette
4、r select their own favorite subjects ,this paper designs a student select course system.Elective for students in this part of the system achieve a credit system management entity-based teaching resources and student correspondence. The system is a typical information management system, which mainly
5、includes the establishment and maintenance of back-end database, and the client development.This analyzes the C/S architecture combined with the characteristics of the actual situation of course selection which is proposed based on C/S architecture,a brief description of the system functional requir
6、ements analysis ,and system design, database design, ASP.NET design and system implementation process. How to use ASP.NET and the database management system develop client-based enrollment system is the focuse. And on the basis of the trial operation of the system,the proposed improvements are furth
7、er improved. Students can easily install it on a computer within the LAN client courses.Key words: Student Select Coure System, C/S, C #, Access DBMS 目 錄引言在信息發(fā)展全球化,網(wǎng)絡(luò)化的今天,校園局域網(wǎng)已成為每所高校所必備的信息基礎(chǔ)設(shè)施,各種管理信息系統(tǒng)憑借于校園局域網(wǎng)應(yīng)運而生。在各大高校的教務(wù)系統(tǒng)管理過程中,課程表的編排是一項非常復(fù)雜的工作。在排課的過程中,除了必須滿足大量的制約條件以外,還需要解決很多沖突與矛盾,例如:兩位老師不能同一個時間在
8、同一間教室上課,一位教師不能在同一個時間上兩門課等等。利用計算機的輔助進(jìn)行課程表編排工作,不但可以提高排課工作的科學(xué)性,還大大減輕了管理人員工作的強度,提高工作效率,使得學(xué)校教務(wù)管理邁上了一個新的臺階?,F(xiàn)在,我國的高等教育事業(yè)正在蓬勃發(fā)展,高等學(xué)校的規(guī)模不斷的擴(kuò)大,在此,高等學(xué)校的教學(xué)改革也在全面的推行,學(xué)分制在各大高校全面啟動。所謂學(xué)分制就是允許學(xué)生在計劃的指導(dǎo)下,根據(jù)自己的條件、能力、興趣,有選擇的支配自己的學(xué)習(xí)時間和內(nèi)容。因此,學(xué)生選課管理成為了推行實施學(xué)分制管理的重要任務(wù)。由于學(xué)生選課時的制約條件較多、較復(fù)雜,工作量也比較大,而且往往需要在很短的時間內(nèi)完成,因此運用計算機輔助選課,即能
9、實時地檢驗和統(tǒng)計大量的選課數(shù)據(jù),又能十分方便地輸出選課結(jié)果,同時也避免了在人工處理時產(chǎn)生的錯誤。學(xué)生選課系統(tǒng)是以數(shù)據(jù)庫作為后臺,數(shù)據(jù)庫從60年代初發(fā)展起來到今天,經(jīng)過了四十多來年的發(fā)展,數(shù)據(jù)庫技術(shù)己經(jīng)逐漸成熟。就數(shù)據(jù)庫應(yīng)用來說,呈現(xiàn)了多樣化的空間,例如數(shù)字圖書館、電子出版物、電子商務(wù)、遠(yuǎn)程教育系統(tǒng)等,給數(shù)據(jù)庫技術(shù)的發(fā)展提出了更多、更高的要求。本文引言部分主要介紹了學(xué)生選課的背景,第一章概述,介紹學(xué)生選課系統(tǒng)的背景,做這個設(shè)計的目標(biāo)以及意義;第二章介紹該選課系統(tǒng)的需求分析,系統(tǒng)分析和系統(tǒng)結(jié)構(gòu);第三章主要介紹了系統(tǒng)設(shè)計相關(guān)的背景,主要包括Visual Studio 2008 Team System
10、開發(fā)工具、Access數(shù)據(jù)庫、C#開發(fā)語言;第四章系統(tǒng)總體設(shè)計的介紹,主要是各模塊功能的簡介,和面向?qū)ο蠓治觯坏谖逭率菙?shù)據(jù)庫的詳細(xì)設(shè)計,具體介紹了數(shù)據(jù)庫的設(shè)計,物理設(shè)計和邏輯設(shè)計;第六章是系統(tǒng)各個功能的實現(xiàn),詳細(xì)介紹了各個模塊實現(xiàn)的功能;論文最后是結(jié)論、致謝及參考文獻(xiàn)。1.概述1.1課題背景二十一世紀(jì)是科學(xué)技術(shù)競爭與民族素質(zhì)競爭的時代,其本質(zhì)就是人才與教育的競爭。教育的歷史讓我們知道,教育的每次重大改革和發(fā)展都與科學(xué)技術(shù)息息相關(guān),科學(xué)技術(shù)是第一生產(chǎn)力,也是發(fā)展教育的重要動力。隨著科學(xué)技術(shù)的不斷進(jìn)步,計算機科學(xué)技術(shù)日漸成熟,計算機在各個領(lǐng)域所扮演的角色越來越重要。很長時間以來,人們都在用人工的方
11、式來管理文件檔案,這種管理方式存在著很多的缺點,例如:效率低,保密性差,除此之外時間一長,將有大量的文件和數(shù)據(jù)產(chǎn)生,這對于查詢、更新和維護(hù)都帶來了很大的困難。選課信息管理系統(tǒng)作為計算機應(yīng)用的一個部分,其優(yōu)點是手工管理所無法比擬的,例如:查詢方便、可靠性高、存儲量大、保密性好、壽命長、成本低等。這些優(yōu)點是學(xué)校的科學(xué)化、正規(guī)化管理的重要條件。選課管理系統(tǒng)屬于教學(xué)信息管理系統(tǒng)的一個部分。隨著高等教育的發(fā)展與社會需求,各大高校盡可能多地開設(shè)各類課程,使得學(xué)生的知識面得到拓展,塑造學(xué)生的個性,培養(yǎng)了學(xué)生的創(chuàng)造能力,使學(xué)生的綜合素質(zhì)有所提高。但是而傳統(tǒng)的手工選課方式非常的煩瑣與復(fù)雜,由學(xué)校統(tǒng)一發(fā)布可選課程
12、表,讓學(xué)生事先了解可選的課程和各班選課報名的時間,然后按規(guī)定的時間到指定的地方去報名。這種方式存在著明顯弊病。主要是:許多學(xué)生一起去報名,十分擁擠,很難組織;由于各班選課報名時間不同,排在后面的各班的學(xué)生常常選不到理想的課程。傳統(tǒng)的選課方式已經(jīng)不適應(yīng)現(xiàn)代教務(wù)教學(xué)的改革和發(fā)展,迫切需要一種新的選課方式。為使教學(xué)管理工作的科學(xué)化、規(guī)范化,就必須采用計算機輔助管理。計算機管理使選課更加高效準(zhǔn)確,省去了大量的人力勞動,提高了教學(xué)管理的信息化水平。因此,學(xué)生選課是一項非常重要的工作,主要負(fù)責(zé)對整個學(xué)校學(xué)生的選課進(jìn)行管理,除此之外,還需對學(xué)生信息及課程信息進(jìn)行維護(hù),對學(xué)生所選課程的考試成績進(jìn)行記錄,學(xué)生選
13、課是實現(xiàn)高校學(xué)分制的一個重要環(huán)節(jié)。隨著學(xué)校硬件水平的提高、信息化進(jìn)程的加快,教務(wù)工作急切希望能夠拋開原有繁瑣的管理方式,希望能夠根據(jù)學(xué)?,F(xiàn)狀的實際需求開發(fā)一套能夠系統(tǒng)化、科學(xué)、有效、易于掌握的管理軟件?,F(xiàn)在學(xué)院已經(jīng)基本實現(xiàn)了網(wǎng)絡(luò)化管理,各部門已有了計算機,原來的計算機管理系統(tǒng)可以實現(xiàn)簡單的信息管理,現(xiàn)在需要一個學(xué)生選課管理平臺。為了切實解決課程管理中存在的諸多問題,提高教務(wù)管理的水平和質(zhì)量,使學(xué)院選課的管理更加規(guī)范,經(jīng)過幾個月的努力,我設(shè)計開發(fā)了防災(zāi)科技學(xué)院選課系統(tǒng)。此系統(tǒng)基本上實現(xiàn)了一些選課相關(guān)的功能。1.2課題目標(biāo)該選課系統(tǒng)的主要目的是實現(xiàn)學(xué)生選擇課程的公平性和方便性,讓他們可以在學(xué)校內(nèi)任
14、一安裝客戶端的機器上查詢課程,選擇課程,刪除課程;對于課程管理員,可以通過登陸客戶端添加、修改、查詢、刪除課程信息;對于學(xué)生管理員,可以通過登陸客戶端添加、修改、查詢、刪除學(xué)生信息;對于教學(xué)管理部門,能夠?qū)崿F(xiàn)學(xué)生信息的管理,對課程信息的管理,以及對這個系統(tǒng)的維護(hù)。1.3課題意義選課系統(tǒng)是學(xué)校不可或缺的一個部分,它的內(nèi)容對于學(xué)校來說都是非常的重要,所以選課管理系統(tǒng)應(yīng)該能夠為學(xué)生用戶提供大量的課程信息,方便學(xué)生快速的查詢。隨著科學(xué)技術(shù)的不斷進(jìn)步,計算機科學(xué)也在不斷地成熟,其強大的功能已經(jīng)被人們所深刻的認(rèn)識,它已經(jīng)深入到人類社會的各個領(lǐng)域并在這些領(lǐng)域里發(fā)揮著越來越重要的作用。作為計算機應(yīng)用的一部分,
15、使用計算機對選課信息進(jìn)行管理,有著手工管理所無法比擬的優(yōu)點。例如:檢索迅速、查找方便、可靠性高、存儲量大、保密性好、壽命長、成本低等。這些優(yōu)點能夠極大地提高人事勞資管理的效率,也是教學(xué)的科學(xué)化、正規(guī)化管理,與世界接軌的重要條件。開發(fā)此系統(tǒng)無論是從課題的研究上還是從技術(shù)方面考慮都是很有必要的。本課題的研究開發(fā)可以解決以往傳統(tǒng)效率低、工作繁瑣的人工管理選課方式,省去了大量的人力勞動,并且方便更有效的、更合理的完成教務(wù)人員對選課管理的效率。技術(shù)運用上也有利于加快學(xué)校信息化建設(shè)的步伐。實現(xiàn)教育的現(xiàn)代化、科技化,從而提高教學(xué)管理的信息化水平。2.需求分析2.1需求分析選課系統(tǒng)需求滿足來自三方面的需求,這
16、三個方面分別是學(xué)生、管理員和超級用戶。學(xué)生的需求是查詢院系的課程、學(xué)生選課情況及學(xué)生信息的修改;管理員的功能比較復(fù)雜,其中包含三種:學(xué)生管理員、課程管理員和管理員;超級用戶主要是系統(tǒng)狀態(tài)的查看、維護(hù)。學(xué)生可以直接查看選課情況,學(xué)生可以根據(jù)自己的學(xué)號和密碼登錄學(xué)生選課系統(tǒng),還可以修改查詢個人相關(guān)的部分信息。一般情況下,學(xué)生只能查詢和修改自己所選課程的情況還有個人信息,若需要查詢和修改其他學(xué)生的選課以及成績查詢,就需要知道其他學(xué)生的學(xué)號和密碼。這些是很難得到的,特別是密碼,所以不但滿足了學(xué)生的要求,還保護(hù)了學(xué)生的個人隱私。管理員分為學(xué)生管理員,課程管理員和管理員。學(xué)生管理員可根據(jù)學(xué)校學(xué)生的學(xué)號,增
17、加學(xué)生用戶,給新的學(xué)生用戶建立新的用戶名和密碼,學(xué)生可以通過學(xué)生管理員提供的用戶名和密碼進(jìn)行登錄操作,學(xué)生管理員還可以對沒有進(jìn)行選課的學(xué)生進(jìn)行刪除操作,數(shù)據(jù)安全性和保密性要求最高;課程管理員是對課程進(jìn)行操作,課程的增加、刪除,根據(jù)學(xué)校的規(guī)定,安排選課的課時、學(xué)分、開課的時間都是由課程管理員執(zhí)行的;管理員除了能操作學(xué)生管理員和課程管理員所有的內(nèi)容,還能添加、刪除學(xué)生管理員和課程管理員。超級用戶擁有最高權(quán)限,是用來系統(tǒng)初步實施的,在此系統(tǒng)中,超級用戶可以管理系統(tǒng)中的所有用戶,所有操作。本系統(tǒng)的主要功能是完成我校教務(wù)管理對學(xué)生選課的功能。實現(xiàn)學(xué)生在客戶端上進(jìn)行獨自的選課,學(xué)生能根據(jù)自己的意愿來選擇自
18、己感興趣的課程。在教務(wù)管理的同時,教務(wù)處能全面的管理本學(xué)校的學(xué)生信息,學(xué)生,老師,課程以及上課的時間等。達(dá)到學(xué)生和老師都有合理的安排。2.2 系統(tǒng)分析在本系統(tǒng)中,有五類用戶:超級用戶、管理員、學(xué)生管理員、課程管理員、學(xué)生用戶。五種不同的用戶所具有的功能。根據(jù)要求,從功能上可以分為兩個類:一個是通用功能,登錄、個人信息管理、切換用戶、找回密碼、系統(tǒng)幫助和退出是所有用戶都具有的功能;另一種是為不同用戶定制不同功能。2.2.1 通用功能1、登錄功能登錄功能是驗證登錄的用戶信息,不同的用戶在驗證登錄信息后,進(jìn)入主界面會有不同的操作內(nèi)容。2、個人信息管理個人信息管理是用來查詢、修改用戶的信息。3、切換用
19、戶切換用戶功能是用戶登錄主界面后,需要切換到其他的用戶時使用。4、找回密碼找回密碼是用戶忘記自己的登錄密碼,可以通過找回密碼設(shè)置的問題,找回自己的登錄密碼。5、系統(tǒng)幫助系統(tǒng)幫助是用戶在不了解系統(tǒng)的使用方法時,可以查看系統(tǒng)幫助。6、退出在用戶使用完學(xué)生選課系統(tǒng)后,不在進(jìn)行其他的操作,選擇退出即可退出選課系統(tǒng)界面。2.2.2 用戶具有的功能1超級用戶主要用來系統(tǒng)的初步實施時使用,登錄后具有系統(tǒng)所有的功能:1)學(xué)生管理:可以添加、修改、查詢、刪除學(xué)生信息。2)課程管理:可以添加、修改、查詢、刪除課程信息。3)學(xué)生選課管理:可以為學(xué)生選課及查詢、刪除學(xué)生的選課信息。4)系統(tǒng)用戶管理:可以增加及刪除管理
20、員、學(xué)生管理員、課程管理員用戶。2管理員用戶登錄后,可以進(jìn)行學(xué)生管理、課程管理、系統(tǒng)用戶管理。1)學(xué)生管理:可以添加、修改、查詢、刪除學(xué)生信息。2)課程管理:可以添加、修改、查詢、刪除課程信息。3)系統(tǒng)用戶管理:可以增加及刪除學(xué)生管理員、課程管理員用戶。3 學(xué)生管理員用戶登錄后,可以進(jìn)行學(xué)生管理。1)學(xué)生管理:可以添加、修改、查詢、刪除學(xué)生信息。4課程管理員用戶登錄后,可以進(jìn)行課程管理。1)課程管理:可以添加、修改、查詢、刪除課程信息。5學(xué)生用戶登錄后,可以進(jìn)行選課管理。1) 選課管理:可以選擇各個學(xué)期開設(shè)的課程,查看自己所有已經(jīng)選上的課程,刪除已選課程。2.3系統(tǒng)結(jié)構(gòu)本系統(tǒng)應(yīng)用Visual
21、Studio 2008 Team System開發(fā)工具,使用ACCESS作為數(shù)據(jù)庫。系統(tǒng)采用的是基于客戶端的三層C/S(Client/Server,客戶端/服務(wù)器)結(jié)構(gòu),它是軟件系統(tǒng)體系結(jié)構(gòu),通過它可以充分利用兩端硬件環(huán)境的優(yōu)勢,將任務(wù)合理分配到Client端和Server端來實現(xiàn),降低了系統(tǒng)的通訊開銷。目前大多數(shù)應(yīng)用軟件系統(tǒng)都是Client/Server形式的兩層結(jié)構(gòu),由于現(xiàn)在的軟件應(yīng)用系統(tǒng)正在向分布式的Web應(yīng)用發(fā)展,Web和Client/Server 應(yīng)用都可以進(jìn)行同樣的業(yè)務(wù)處理,應(yīng)用不同的模塊共享邏輯組件;因此,內(nèi)部的和外部的用戶都可以訪問到新的和現(xiàn)有的應(yīng)用系統(tǒng),通過現(xiàn)有應(yīng)用系統(tǒng)中的邏
22、輯可以擴(kuò)展出新的應(yīng)用系統(tǒng)。即界面層、業(yè)務(wù)邏輯層和數(shù)據(jù)處理層。界面層是一個建立在windows平臺上應(yīng)用程序界面;數(shù)據(jù)處理層包含訪問后臺數(shù)據(jù)庫,提供后臺數(shù)據(jù)庫支持,同時包括與數(shù)據(jù)存儲的接口。第一層為界面層,客戶機為校園網(wǎng)上的任何一臺計算機,沒有特殊要求,只需具有windows平臺即可。學(xué)生通過客戶端查看相關(guān)的選課信息,并進(jìn)行選課操作??蛻舳税褜W(xué)生的數(shù)據(jù)交給業(yè)務(wù)實體實例化,再將實例化的對象交給業(yè)務(wù)接口。第二層為業(yè)務(wù)邏輯層,業(yè)務(wù)邏輯層是封裝商業(yè)邏輯,提供校驗、邏輯實現(xiàn),處理業(yè)務(wù)邏輯,實現(xiàn)業(yè)務(wù)邏輯處理方法,處理邏輯后交給數(shù)據(jù)層(調(diào)用數(shù)據(jù)接口)處理數(shù)據(jù)。第三層為數(shù)據(jù)層,數(shù)據(jù)最終處理的地方,首先定義數(shù)據(jù)加
23、工處理方法(調(diào)用數(shù)據(jù)工廠) ,處理數(shù)據(jù)加工方式,實現(xiàn)數(shù)據(jù)加工處理方法,加工后交給數(shù)據(jù)服務(wù)層提交數(shù)據(jù)庫,常用的SqlHelper.cs 。選用這樣的結(jié)構(gòu)模型主要出于以下幾方面的考慮: 1. C/S模式一般都建立在專用的網(wǎng)絡(luò)上,小范圍的網(wǎng)絡(luò)環(huán)境,局域網(wǎng)之間再通過專門服務(wù)器提供連接和數(shù)據(jù)交換服務(wù),一般面向相對固定的用戶群,對信息安全的控制能力很強,一般高度機密的信息系統(tǒng)采用C/S 結(jié)構(gòu)較為適宜,而僅通過C/S發(fā)布部分可公開信息,程序更加注重流程,可以對權(quán)限多層次校驗,對系統(tǒng)運行速度可以較少考慮。2應(yīng)用服務(wù)器運行數(shù)據(jù)負(fù)荷較輕,最簡單的C/S體系結(jié)構(gòu)的數(shù)據(jù)庫應(yīng)用由兩部分組成,即客戶應(yīng)用程序和數(shù)據(jù)庫服務(wù)器
24、程序,二者可分別稱為前臺程序與后臺程序。一旦服務(wù)器程序被啟動,就隨時等待響應(yīng)客戶程序發(fā)來的請求。當(dāng)需要對數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行任何操作時,客戶程序就自動地尋找服務(wù)器程序,并向其發(fā)出請求;服務(wù)器程序根據(jù)預(yù)定的規(guī)則做出應(yīng)答,送回結(jié)果,應(yīng)用服務(wù)器運行數(shù)據(jù)負(fù)荷較輕。 3 數(shù)據(jù)的儲存管理功能比較透明 ,數(shù)據(jù)的儲存管理功能,是由服務(wù)器程序和客戶應(yīng)用程序分別獨立進(jìn)行的。對于工作在前臺程序上的最終用戶是“透明”的,他們無須過問(通常也無法干涉)背后的過程,就可以完成自己的一切工作。在客戶服務(wù)器架構(gòu)的應(yīng)用中,前臺程序并不是非?!笆菪 保]有將麻煩的事情都交給了服務(wù)器和網(wǎng)絡(luò)。在C/S體系下,數(shù)據(jù)庫不能真正成為公共、
25、專業(yè)化的倉庫,它受到獨立的專門管理。3.相關(guān)技術(shù)背景3.1 Visual Studio 2008 Team System開發(fā)工具微軟公司推出Visual Studio開發(fā)環(huán)境可以用來創(chuàng)建 Windows 操作平臺下的 Windows 應(yīng)用程序和網(wǎng)絡(luò)應(yīng)用程序,同時網(wǎng)絡(luò)服務(wù)、智能設(shè)備應(yīng)用程序和 Office 插件也可以用Visual Studio來創(chuàng)建。目前,windows操作平臺應(yīng)用程序開發(fā)環(huán)境要數(shù)Visual Studio最流行。Microsoft Visual Studio 2008是為Windows Vista、Office 2007、Web 2.0或更高發(fā)展的下一代開發(fā)工具,代號“Orc
26、as”。 VS2008中推出超過250種新功能,融合了對象、關(guān)系型數(shù)據(jù)、XML的訪問方式,更加簡潔了語言。使用Visual Studio 2008可以高效開發(fā)Windows應(yīng)用。設(shè)計器中的變更可以實時的反映出來,XAML中智能感知功能使得開發(fā)效率得以提高。同時Visual Studio 2008支持項目模板、調(diào)試器和部署程序。Visual Studio 2008可以高效開發(fā)Web應(yīng)用,集成了AJAX 1.0,包含AJAX項目模板,它還可以高效開發(fā)Office應(yīng)用和Mobile應(yīng)用。Visual Studio 2008 提供了高級的開發(fā)工具、調(diào)試功能、數(shù)據(jù)庫功能和創(chuàng)新功能,有助于在各種平臺上迅速
27、的建立一個當(dāng)前最先進(jìn)的應(yīng)用程序。 Visual Studio 2008 包含了各種增強功能,例如可視化設(shè)計器(使用 .NET Framework 3.5 加速開發(fā))、大幅改善Web 開發(fā)工具,以及能夠加速開發(fā)和處理所有類型數(shù)據(jù)的語言增強功能。Visual Studio 2008提供了所有相關(guān)的工具和框架支持為開發(fā)人員使用,引人注目的、令人印象深刻的幫助創(chuàng)建,并且支持 AJAX 的 Web 應(yīng)用程序。利用這些大量的客戶端和服務(wù)器端框架的優(yōu)勢,開發(fā)人員能夠輕松的構(gòu)建以客戶為中心的 Web 應(yīng)用程序,這些應(yīng)用程序可以集成任何后端數(shù)據(jù)提供程序、在任何當(dāng)前瀏覽器內(nèi)運行并完全訪問 ASP .NET應(yīng)用程序
28、服務(wù)和 Microsoft 平臺。Visual Studio 2008 提供了幫助開發(fā)團(tuán)隊改進(jìn)協(xié)作的擴(kuò)展的和改善的服務(wù)項目,包括幫助將數(shù)據(jù)庫專業(yè)人員和圖形設(shè)計人員加入到開發(fā)流程的工具。3.2 Access數(shù)據(jù)庫Access 是微軟公司推出的基于Windows的桌面關(guān)系數(shù)據(jù)庫管理系統(tǒng)(RDBMS,即Relational Database Management System),是Office系列應(yīng)用軟件之一。它提供了表、查詢、窗體、報表、頁、宏、模塊7種用來建立數(shù)據(jù)庫系統(tǒng)的對象;提供了多種向?qū)?、生成器、模板,把?shù)據(jù)存儲、數(shù)據(jù)查詢、界面設(shè)計、報表生成等操作規(guī)范化;為建立功能完善的數(shù)據(jù)庫管理系統(tǒng)提供了
29、方便,也使得普通用戶不必編寫代碼,就可以完成大部分?jǐn)?shù)據(jù)管理的任務(wù)。Access/Jet、Microsoft SQL Server、Oracle(甲骨文軟件公司),或者任何 ODBC 兼容數(shù)據(jù)庫內(nèi)的資料都能夠被Access所存取。熟練的軟件設(shè)計者或者資料分析者利用Access來開發(fā)應(yīng)用軟件,而一些不熟練的程序員和非程序員的“進(jìn)階用戶”同樣能使用Access來開發(fā)簡單的應(yīng)用軟件。Access不能成為一種完整的面向?qū)ο箝_發(fā)工具,因為它只支持部份面向?qū)ο螅∣O)技術(shù)。Microsoft Access在很多地方得到廣泛的應(yīng)用,例如小型企業(yè),大公司的部門,或者開發(fā)人員利用它來制作處理數(shù)據(jù)的桌面系統(tǒng)。簡單的
30、WEB應(yīng)用程序也常用來它來開發(fā)。這些應(yīng)用程序主要使用ASP技術(shù)在Internet Information Services運行,較為復(fù)雜的WEB應(yīng)用程序則使用PHP/MySQL或者ASP/Microsoft SQL Server。Access為初級程序員的使用方便程度和強大的設(shè)計工具提供了很多功能。不過,這種易于使用可能使人產(chǎn)生誤解。這樣的開發(fā)者基本上都是沒有在應(yīng)用或者數(shù)據(jù)設(shè)計方面經(jīng)過訓(xùn)練的辦公室工作人員。因此,很多人認(rèn)為這樣的開發(fā)人員能夠創(chuàng)建一個可用的系統(tǒng),但也有很多人認(rèn)為工具本身的局限性產(chǎn)生了這樣的誤導(dǎo)。Access 用作快速應(yīng)用開發(fā)被一些較為專業(yè)的應(yīng)用程序開發(fā)者使用,尤其是給街道上的推銷
31、員制作一個早型或單獨應(yīng)用程序的工具。但是,如果是通過網(wǎng)絡(luò)訪問數(shù)據(jù)的話,Access 的訪問可擴(kuò)放性并不高。因此當(dāng)使用者較多使用此程序時,他們往往選擇傾向于一些客戶端-服務(wù)器為主的方案,例如 Oracle、DB2、Microsoft SQL Server、Windows SharePoint Services、PostgreSQL、MySQL、Alpha Five、MaxDB,或者Filemaker。在任何情況下,數(shù)據(jù)庫的后期應(yīng)用很多使用Access 的功能(表單,報告,序列和VB代碼),例如 JET(檔案為主的數(shù)據(jù)庫引擎,Access 缺省使用)、Microsoft SQL Server、Or
32、acle和任何其他跟ODBC兼容的產(chǎn)品。對本開發(fā)系統(tǒng)選用Access2000作為后臺數(shù)據(jù)庫。數(shù)據(jù)庫在信息管理系統(tǒng)中有著相當(dāng)重要的地位,作為信息管理系統(tǒng)的后臺,數(shù)據(jù)庫存儲著所有的信息,而數(shù)據(jù)庫的設(shè)計直接影響到整個系統(tǒng)運行的效率。良好的數(shù)據(jù)庫設(shè)計,可以有效提高數(shù)據(jù)信息的存儲,從而保證數(shù)據(jù)信息的完整性和一致性。美國Microsoft公司于1994年推出的Access管理系統(tǒng)。它具有界面友好、易于學(xué)習(xí)和使用、開發(fā)較為簡單、接口靈活等功能,是一個典型的新一代桌面數(shù)據(jù)庫管理系統(tǒng)。其主要特點如下: (1) 各種數(shù)據(jù)庫對象得到了完善的管理,具有強大的數(shù)據(jù)組織、用戶管理、安全檢查等功能。 (2)數(shù)據(jù)處理能力極其
33、強大,在網(wǎng)絡(luò)環(huán)境下的一個工作組級別,使用Access開發(fā)的多用戶數(shù)據(jù)庫管理系統(tǒng)具有傳統(tǒng)的XBASE(DBASE、FoxBASE的統(tǒng)稱)數(shù)據(jù)庫系統(tǒng)所無法實現(xiàn)的客戶端服務(wù)器(Cient/Server)結(jié)構(gòu)和相應(yīng)的數(shù)據(jù)庫安全機制,Access具備了許多先進(jìn)的大型數(shù)據(jù)庫管理系統(tǒng)所具備的特征,如事務(wù)處理/出錯回滾能力等。 (3)可以方便地生成各種數(shù)據(jù)對象,利用存儲的數(shù)據(jù)建立窗體和報表,可視性好。 (4)作為Office套件的一部分,可以與Office集成,實現(xiàn)無縫連接。 (5)能夠利用Web檢索和發(fā)布數(shù)據(jù),實現(xiàn)與Internet的連接。 Access主要適用于中小型應(yīng)用系統(tǒng),或作為客戶機/服務(wù)器系統(tǒng)中的
34、客戶端數(shù)據(jù)庫。3.3 C#開發(fā)語言C#(C Sharp)是微軟(Microsoft)為.NET Framework量身訂做的程序語言,C#擁有C/C+的強大功能以及Visual Basic簡易使用的特性,是第一個組件導(dǎo)向(Component-oriented)的程序語言,和C+與Java一樣亦為對象導(dǎo)向(object-oriented)程序語言微軟c#語言的定義主要是從C和C+繼承而來的,而且語言中的許多元素也反映了這一點。C#在設(shè)計者從C+繼承的可選選項方面比Java要廣泛一些(比如說structs),它還增加了自己新的特點(比方說源代碼版本定義)。但它還太不成熟, C#還需要進(jìn)化成一種開發(fā)
35、者能夠接受和采用的語言。 類是C#從JAVA繼承而來的特點,在C#中類的申明與Java很相似。這是因為Java模型工作得很好。C#的關(guān)鍵字import已經(jīng)被替換成using,它起到了同樣的作用。一個類開始執(zhí)行的起點是靜態(tài)Main()方法。C#從C和C+繼承而來的兩個特點:一個是編譯,一個是結(jié)構(gòu)體。編譯,程序直接編譯成標(biāo)準(zhǔn)的二進(jìn)制可執(zhí)行形式。例如一個Hello World程序被保存成一個文本文件并被命名為Hello.cs,它將被編譯成命名Hello.exe的可執(zhí)行程序; 結(jié)構(gòu)體,一個C#的結(jié)構(gòu)體與C+的結(jié)構(gòu)體是相似的,因為它能夠包含數(shù)據(jù)聲明和方法。但是,不象C+,C#結(jié)構(gòu)體與類是不同的而且不支持
36、繼承。但是。與Java相同的是,一個結(jié)構(gòu)體可以實現(xiàn)界面。C#最引人入勝的地方是它和Java的不同,而不是相似的地方。C#擁有比C,C+或者Java更廣泛的數(shù)據(jù)類型。這些類型是bool,byte,ubyte,short,ushort,int,uint,long,ulong,float,double和decimal。象Java一樣,所有這些類型都有一個固定的大小。又象C和C+一樣,每個數(shù)據(jù)類型都有有符號和無符號兩種類型。與Java相同的是,一個字符變量包含的是一個16位的Unicode字符。C#新的數(shù)據(jù)類型是decimal數(shù)據(jù)類型,對于貨幣數(shù)據(jù),它能存放28位10進(jìn)制數(shù)字。C#對Windows程序
37、最大的優(yōu)點可能就是它與COM的無縫集成了,COM就是微軟的Win32組件技術(shù)。實際上,最終有可能在任何.NET語言里編寫COM客戶和服務(wù)器端。C#編寫的類可以子類化一個已存在的COM組件;生成的類也能被作為一個COM組件使用,然后又能使用,比方說,JScript語言子類化它從而得到第三個COM組件。這種現(xiàn)象的結(jié)果是導(dǎo)致了一個運行環(huán)境的產(chǎn)生,在這個環(huán)境里的組件是網(wǎng)絡(luò)服務(wù),可用任何.NET語言子類化。3.4 MD5加密算法MD5的全稱是Message-Digest Algorithm 5(信息-摘要算法),它是由MD2、MD3和MD4發(fā)展而來得一種單向加密算法,也就是哈希(HASH)算法,是由國際
38、著名的公鑰加密算法標(biāo)準(zhǔn)RSA的第一設(shè)計者R.Rivest于上世紀(jì)90年代初開發(fā)出來的。加密算法一般有兩種,即單向加密算法和雙向加密算法。雙向加密是加密算法中最常用的,它將可以直接理解的明文數(shù)據(jù)加密為不可直接理解的密文數(shù)據(jù),在需要的時候,又可以使用一定的算法將這些加密以后的密文數(shù)據(jù)解密為原來的明文數(shù)據(jù),雙向加密適合于隱秘通訊。雙向加密既可以加密,又可以解密。而單向加密則剛好相反,它只能對明文數(shù)據(jù)進(jìn)行加密,而不能對加密了的密文數(shù)據(jù)再解密成原來的明文數(shù)。在實際應(yīng)用中,對軟件系統(tǒng)數(shù)據(jù)庫中的系統(tǒng)用戶信息(如用戶密碼)以及銀行賬號信息(如銀行賬號密碼)加密,例如:當(dāng)用戶注冊一個新的賬號或者使用銀行賬號時,
39、這些絕密信息不是直接保存到數(shù)據(jù)庫,而是經(jīng)過單向加密后再保存,這樣,及時這些絕密信息被泄露,別人也不能得到相應(yīng)的明文數(shù)據(jù),當(dāng)然也就達(dá)不到盜竊賬號的目的。MD5算法就是單向加密的加密算法。它有兩個很重要的特征,第一是任意兩段明文數(shù)據(jù),加密以后的密文數(shù)據(jù)一定不是相同的;第二是任意一段明文數(shù)據(jù),經(jīng)過加密以后,其密文數(shù)據(jù)永遠(yuǎn)是相同的。由于MD5算法的可靠性,已經(jīng)被廣泛應(yīng)用于項目實踐中。經(jīng)過許多程序員的努力,MD5算法已經(jīng)被各種語言實現(xiàn),.asp,.php,.java ,c,c#,vb,vc+,delphi等語言。4.系統(tǒng)總體設(shè)計4.1功能模塊簡介在前面的系統(tǒng)的系統(tǒng)功能分析中,將系統(tǒng)劃分成9個模塊,如下圖
40、4.1所示。 用戶登錄模塊學(xué)生管理模塊課程管理模塊學(xué)生選課模塊個人信息管理模塊用戶管理模塊系統(tǒng)幫助模塊數(shù)據(jù)庫模塊找回密碼功能模塊圖4.1 系統(tǒng)模塊結(jié)構(gòu)圖用戶登錄模塊驗證用戶名和密碼,并根據(jù)不同的用戶類型,進(jìn)行不同的操作。設(shè)置學(xué)生信息管理模塊是提供給學(xué)生管理員增加、修改、刪除學(xué)生信息。課程管理模塊提供給課程管理員,用來增加、修改、刪除選課信息。學(xué)生選課模塊提供給學(xué)生用戶,用來查詢或者刪除自己已選的課程。個人信息管理模塊提供給學(xué)生用戶,編輯學(xué)生自己的個人信息。用戶管理模塊用于用戶超級管理員,可以對用戶管理員經(jīng)行增加、刪除。系統(tǒng)幫助模塊包括查看系統(tǒng)幫助信息。找回密碼功能是對學(xué)生用戶在忘記密碼是找回密
41、碼。4.2面向?qū)ο蠓治龈鶕?jù)上面的分析,將模塊結(jié)構(gòu)圖轉(zhuǎn)換成系統(tǒng)用例圖如下圖4.2所示。圖4.2 系統(tǒng)Use Case圖1 系統(tǒng)中包含的類。系統(tǒng)中的類從系統(tǒng)包含的人員及事物開始。學(xué)生選課系統(tǒng)中包括對人員有:超級用戶、管理員、課程管理員、學(xué)生管理員、學(xué)生用戶。這些人員可以統(tǒng)稱為“系統(tǒng)用戶”,即系統(tǒng)中應(yīng)該有一個“系統(tǒng)用戶”類。系統(tǒng)包含的事物有:學(xué)生、課程。同時學(xué)生也是一類系統(tǒng)用戶。學(xué)生和課程是系統(tǒng)用戶的操作對象。因此,系統(tǒng)還應(yīng)包含“學(xué)生”類及“課程”類。2定義類的屬性?!跋到y(tǒng)用戶”類主要用于系統(tǒng)登錄及系統(tǒng)各個功能的使用,因此應(yīng)該包含“用戶名”和“密碼”屬性;系統(tǒng)中共有5種類型用戶,因此,添加“用戶角色
42、”記錄用戶的類型?!皩W(xué)生”類包括“學(xué)號”,“姓名”,“性別”,“年齡”,“所在系”?!罢n程”類包括“課程編號”,“課程名”,“學(xué)分”,“開課學(xué)期”,“總學(xué)時”。3定義類的方法。初步定義的各個類的方法,各個類都包含添加、刪除、修改、獲取信息等常規(guī)操作,系統(tǒng)用戶如若是“超級用戶”或“學(xué)生用戶”的話,還可以進(jìn)行“選課”及“取消選課”操作。4建立類之間的關(guān)系。“學(xué)生”和“課程”類為“系統(tǒng)用戶”類的操作對象,因此,“學(xué)生”和“課程”對象的存在依賴于“系統(tǒng)用戶”,同樣,“系統(tǒng)用戶”本身也可以操作“系統(tǒng)用戶”,對用戶進(jìn)行添加、修改、刪除等操作,因此本身也是一種依賴關(guān)系?!皩W(xué)生”和“課程”之間存在一定的關(guān)聯(lián)。
43、在分析階段中,系統(tǒng)用戶和個人信息之間存在著組合關(guān)系,學(xué)生和系統(tǒng)用戶之間存在著聚合關(guān)系。由于在實際實現(xiàn)時,系統(tǒng)將所有的數(shù)據(jù)存儲關(guān)系數(shù)據(jù)庫中,現(xiàn)在不一定非要在系統(tǒng)用戶和個人信息兩個類之間保持組合關(guān)系,而只需要在個人信息類中保持其所屬用戶名就可以了;學(xué)生和系統(tǒng)用戶類也不用保持聚合關(guān)系,學(xué)生是一類特殊的系統(tǒng)用戶,只需在用戶表中保持學(xué)生用戶的一份拷貝即可,令學(xué)號的值為用戶名。專業(yè)和班級,班級和學(xué)生,以及音樂類別和音樂之間的關(guān)系也是如此。系統(tǒng)用戶在添加一個新的用戶的時候要首先判斷是否此用戶已經(jīng)添加過,因此,添加“判斷某個用戶是否存在”方法。系統(tǒng)用戶的密碼在存儲的時候為了安全起見需進(jìn)行加密處理,因此,添加“
44、加密密碼”方法,密碼采用MD5哈希算法進(jìn)行加密,MD5是一種單向加密算法,即能加密但不能進(jìn)行解密操作。添加某種機制令用戶忘了密碼的時候可以重新設(shè)置密碼。機制規(guī)則:用戶首次登錄時提示用戶輸入一些信息,以后在忘記密碼時,通過回答這些信息找回密碼;若用戶首次登錄時沒有輸入這些信息,可以在以后的時候過程中在輸入。因此,“系統(tǒng)用戶”類需添加屬性“是否首次登錄”,添加額外的“個人信息”類記錄這些額外的信息。當(dāng)添加一名學(xué)生時,需要判斷這名學(xué)生是否已經(jīng)添加過,因此,添加“是否已經(jīng)存在”方法判斷一個學(xué)生是否已經(jīng)添加過。當(dāng)刪除一名學(xué)生時,需要保證該名學(xué)生沒有選過課,然后再進(jìn)行刪除操作,因此,添加“是否選過課”方法
45、。獲取學(xué)生信息時,有時需要獲取全部學(xué)生信息,有時需要按照條件獲取部分學(xué)生的信息,添加 “獲取全部學(xué)生信息”和“獲取部分學(xué)生信息”。當(dāng)添加一門課程時,需要判斷這門課程是否已經(jīng)添加過,因此,增加“是否已經(jīng)存在”方法判斷一門課程是否已經(jīng)添加過。當(dāng)刪除一門課程時,需要保證此課程沒有學(xué)生選擇,然后再進(jìn)行刪除操作,因此,增加“是否被選過”方法。獲取課程信息時,有時需要獲取全部課程信息,有時需要按照條件獲取部分課程的信息,添加“獲取全部課程信息”和“獲取部分課程信息”。將對數(shù)據(jù)庫的操作封裝成一個類,其他的類對數(shù)據(jù)庫的操作通過此類進(jìn)行。將上述關(guān)系建立一個類圖如下圖2.3所示。圖4.3 系統(tǒng)類圖5.系統(tǒng)詳細(xì)設(shè)計
46、5.1數(shù)據(jù)庫設(shè)計本系統(tǒng)的數(shù)據(jù)庫實體主要有“學(xué)生”、 “課程”。其中“學(xué)生”與“課程”存在“選課”聯(lián)系,一個學(xué)生可以學(xué)習(xí)N門課程,一門課程可以有M個學(xué)生學(xué)習(xí),即“學(xué)生”與“課程”之間是多對多的關(guān)系?!皩W(xué)生”還包括很多的屬性,如姓名、性別、年齡、學(xué)號、所在系等信息;“課程”也包括很多的屬性,如學(xué)時、課程學(xué)分、課程名、課程號等信息。整個數(shù)據(jù)庫可以用一個E-R圖表示,如下圖,圖5.1所示:學(xué)生課程選課學(xué)號姓名性別年齡所在系學(xué)時成績課程號課程學(xué)分課程名nm圖5.1 E-R圖5.2數(shù)據(jù)庫邏輯設(shè)計數(shù)據(jù)庫邏輯就是指確定數(shù)據(jù)庫的邏輯結(jié)構(gòu),是將ER圖轉(zhuǎn)換為關(guān)系模型的過程,即將所有實體和關(guān)系轉(zhuǎn)換成一系列的關(guān)系模式。
47、轉(zhuǎn)換過程中常見規(guī)則有:(1)一個實體型轉(zhuǎn)換為一個關(guān)系模式;(2)一個一對一的聯(lián)系可轉(zhuǎn)換成一個獨立的關(guān)系模式,也可與任意一端對應(yīng)的關(guān)系模式合并;(3)一個一對多的聯(lián)系可以轉(zhuǎn)換成一個獨立的關(guān)系模式,也可與多的那一端對應(yīng)的關(guān)系模式合并;(4)一個多對多的關(guān)系轉(zhuǎn)換成一個關(guān)系模式。學(xué)生表(學(xué)號,姓名,性別,年齡,所在系)課程表(課程號,課程名,課程學(xué)分,學(xué)時)學(xué)生選課表(學(xué)號,課程號,成績)系統(tǒng)用戶表(用戶名,密碼,角色,是否第一次登錄)個人信息表(用戶名,問題1答案,問題2答案,問題3答案)5.3數(shù)據(jù)物理設(shè)計根據(jù)數(shù)據(jù)庫的分析,建立如下五個數(shù)據(jù)表。學(xué)生表(Student),其結(jié)構(gòu)見表5.1所示表5.1
48、學(xué)生表字段數(shù)據(jù)類型說明Sno文本學(xué)號Sname文本姓名Ssex文本性別Sage數(shù)字年齡Sdept文本所在系課程表(Course),其結(jié)構(gòu)見表5.2所示表5.2 課程表字段數(shù)據(jù)類型說明Cno文本課程編號Cname文本課程名稱Ccredit數(shù)字學(xué)分Csemester數(shù)字開課學(xué)期CHours數(shù)字總學(xué)時學(xué)生選課表(SelectCourse),其結(jié)構(gòu)見表5.3所示表5.3 學(xué)生選課表字段數(shù)據(jù)類型說明Sno文本學(xué)號Cno文本課程號grade數(shù)字成績系統(tǒng)用戶表(User),其結(jié)構(gòu)見表5.4所示表5.4 系統(tǒng)用戶表字段數(shù)據(jù)類型說明userName文本用戶名userPwd文本密碼Role文本角色firstLog
49、in文本是否第一次登錄個人信息表(Informatian),其結(jié)構(gòu)見表5.5所示表5.5 個人信息表字段數(shù)據(jù)類型說明userName文本用戶名Answer1文本問題1答案Answer2文本問題2答案Answer3文本問題3答案6.系統(tǒng)實現(xiàn)6.1客戶端登錄界面實現(xiàn)登錄模塊是系統(tǒng)不可缺少的模塊,登錄模塊還可以保證系統(tǒng)的可靠性和安全性。登錄模塊提供用戶登錄界面,登錄時,若輸入的用戶名和密碼都正確,則登錄成功,進(jìn)入系統(tǒng)的主窗體,然后可以選擇進(jìn)入相應(yīng)的子系統(tǒng)。本系統(tǒng),設(shè)計了5種系統(tǒng)用戶類型:超級用戶、管理員、課程管理員、學(xué)生管理員和學(xué)生用戶。用不同的身份,登錄成功后,可在主界面選擇使用系統(tǒng)不同的功能模塊
50、??蛻舳说牡顷懡缑嫒鐖D6.1所示。圖6.1 登錄界面6.2主界面的實現(xiàn)及權(quán)限管理主界面在用戶登錄后進(jìn)入學(xué)生選課系統(tǒng)后,可以選擇不同的子系統(tǒng),其中包括選課管理、系統(tǒng)管理和系統(tǒng)三個部分,其中選課管理包括學(xué)生管理、課程管理和選課管理,系統(tǒng)管理包括個人信息管理、系統(tǒng)用戶管理和切換系統(tǒng)用戶,系統(tǒng)包括系統(tǒng)幫助和退出。超級用戶可以使用全部的子系統(tǒng);管理員只有選課管理系統(tǒng)不能使用;課程管理員能使用的系統(tǒng)有課程管理、個人信息管理、切換系統(tǒng)用戶、系統(tǒng)幫助和退出;學(xué)生管理員能使用的系統(tǒng)有學(xué)生管理、個人信息管理、切換系統(tǒng)用戶、系統(tǒng)幫助和退出;學(xué)生用戶能使用的系統(tǒng)有選課管理、個人信息管理、切換系統(tǒng)用戶、系統(tǒng)幫助和退出。
51、主界面如圖6.2所示: 圖6.2 主界面圖6.3學(xué)生信息管理的實現(xiàn)學(xué)生信息管理模塊主要用于管理學(xué)生的基本信息,包括學(xué)號、姓名、性別、年齡和所在系,能對學(xué)生信息進(jìn)行添加、刪除、修改和查詢等操作。并且,在添加或刪除學(xué)生信息時,同時需要在系統(tǒng)用戶表中注冊或刪除相應(yīng)的“學(xué)生用戶”。在本系統(tǒng)中,設(shè)定默認(rèn)用戶名為學(xué)生號,密碼也設(shè)定為學(xué)生學(xué)號。學(xué)生管理的界面如圖6.3所示。圖6.3 學(xué)生管理界面圖6.4課程管理的實現(xiàn)課程信息管理模塊主要用于管理課程信息,包括課程號、課程名、學(xué)分、開學(xué)學(xué)期和總學(xué)時,能對課程信息進(jìn)行添加、刪除、修改和查詢等操作。課程管理界面如圖6.4所示:圖6.4 課程管理界面圖6.5學(xué)生選課
52、信息管理的實現(xiàn)選課信息管理模塊主要用于管理學(xué)生選課信息,以記錄的形式表示學(xué)生的選課情況,每條記錄都包括選課學(xué)生的學(xué)號、學(xué)生的姓名、所選課程的課程號、課程名稱、開課學(xué)期和該課程的考試成績。選課信息管理模塊提供了選課和選課信息查詢等功能。以“超級用戶”身份登錄,可以為所有學(xué)生選課;以“學(xué)生用戶”身份登錄,可以為自己選課。學(xué)生選課的界面分為“超級用戶”(如圖6.5所示 )和“學(xué)生用戶”(如圖6.6所示)兩種。圖6.5 超級用戶選課界面圖圖6.5 學(xué)生用戶選課界面圖6.6個人信息的實現(xiàn)個人信息管理模塊主要用于管理系統(tǒng)用戶的個人信息,包括設(shè)置找回密碼問題的答案,修改用戶密碼等。在本系統(tǒng)中,“管理員”是由
53、“超級用戶”注冊的,“課程管理用戶”和“學(xué)生管理用戶”是由“超級用戶”或者“管理員”注冊的,而“學(xué)生用戶”是在添加學(xué)生信息時注冊的,所以注冊用戶時無法為用戶提供設(shè)置“找回密碼問題”答案的功能。而又因為系統(tǒng)中的用戶密碼是用MD5加密后存儲的,為了能夠在忘記密碼的情況下,通過提供“找回密碼問題”的答案來修改用戶密碼,這就需要用戶在初次登錄系統(tǒng)時提示用戶設(shè)置“找回密碼問題”的答案,否則一旦忘記用戶密碼,將無法找回。個人信息的界面如圖6.7所示。圖6.7 個人信息圖6.7系統(tǒng)用戶管理的實現(xiàn)用戶管理模塊主要用于管理(注冊和刪除)系統(tǒng)用戶。注冊和刪除用戶的權(quán)限分配規(guī)則是:“超級用戶”可以注冊和刪除“管理員
54、”、“課程管理員”和“學(xué)生管理員”,“管理員”可以注冊和刪除“課程管理員”和“學(xué)生管理員”,“課程管理員”、“學(xué)生管理員”和“學(xué)生用戶”則不具有本子系統(tǒng)的使用權(quán)限,即不能進(jìn)行注冊和刪除系統(tǒng)用戶的操作。用戶管理的界面如圖6.8所示。圖6.8 系統(tǒng)用戶圖6.8系統(tǒng)幫助的實現(xiàn)幫助模塊用于給用戶提供一些幫助信息,如軟件版本、作者聯(lián)系方式、系統(tǒng)使用說明等信息系統(tǒng)幫助的界面如圖6.9所示。圖6.9 系統(tǒng)幫助圖6.9找回密碼的實現(xiàn)找回用戶密碼模塊用于提供“找回”用戶密碼功能。因為系統(tǒng)用戶密碼是用MD5加密算法加密再存儲的,故用戶一旦忘記密碼,系統(tǒng)將無法知道用戶的當(dāng)前密碼。設(shè)計本模塊的目的就是當(dāng)用戶忘記密碼的
55、時候,可以通過本模塊提供“找回密碼問題”的答案來重設(shè)用戶密碼。找回密碼的界面如圖6.10所示:圖6.10找回密碼界面圖結(jié)論本系統(tǒng)從學(xué)生選課的需求設(shè)計、功能的設(shè)計以及數(shù)據(jù)庫的設(shè)計等幾個方面探討了學(xué)生選課系統(tǒng)的設(shè)計與實現(xiàn),最終采用了基于Client / Server結(jié)構(gòu)應(yīng)用c#和Access數(shù)據(jù)庫相結(jié)合的方法實現(xiàn)學(xué)生選課系統(tǒng),該系統(tǒng)在Windows操作系統(tǒng)上運行,可以方便快捷完成以往需要大量人力的繁雜工作,極大地方便了教學(xué)管理。此系統(tǒng)是針對防災(zāi)科技學(xué)院的實際情況開發(fā)的。本系統(tǒng)基本上達(dá)到了最初設(shè)計的目的,由于知識上還有一些不足,有些地方還有少許的錯誤,但是系統(tǒng)所需的九大模塊已經(jīng)完成,能夠?qū)崿F(xiàn)不同的用戶使用不同的系統(tǒng)子功能,可滿足不同的用戶在安裝有客戶端的機器上進(jìn)行不同的操作。本系統(tǒng)在正常運行中需要對學(xué)生信息、課程信息進(jìn)行管理,利用學(xué)生系統(tǒng)及時了解各個關(guān)節(jié)中信息的更變,有利于提高管理。 致謝緊張而忙碌的畢業(yè)設(shè)計就要結(jié)束了,在完成了系統(tǒng)的功能設(shè)計后,我感到由衷的喜悅和自豪。在我做畢業(yè)設(shè)計期間,許多老師、同學(xué)和朋友給了我無私的關(guān)懷和幫助。在此,我要向他們表示衷心的感謝。首先非常感謝防災(zāi)科技學(xué)院給予我人生中最寶貴四年的培養(yǎng),感謝學(xué)院各位老師,老師們治學(xué)嚴(yán)謹(jǐn),學(xué)
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年會計實務(wù)考點回顧試題及答案
- 中級會計實務(wù)備考干貨試題及答案
- 2025年財務(wù)管理會計準(zhǔn)則試題及答案
- 分層復(fù)習(xí)2025年財務(wù)管理考試試題及答案
- 2025至2030年中國古銅花底板門牌行業(yè)投資前景及策略咨詢研究報告
- 2025年駝毛被項目可行性研究報告
- 2025年銀行存款日記帳表單行業(yè)深度研究報告
- 護(hù)理暑期實習(xí)報告
- 工藝培訓(xùn)體系構(gòu)建與實施
- 2025年文化產(chǎn)業(yè)金融支持政策與融資渠道對接機制創(chuàng)新:以文化旅游電商平臺為例
- 《故宮公開課》課件
- 《智能家居系統(tǒng)介紹》課件
- 2025-2030年中國證券融資融券市場需求態(tài)勢及投資風(fēng)險預(yù)測研究報告
- 淘寶運營考試試題及答案
- 急性腦梗塞患者護(hù)理查房
- 2025年河南鄭州航空港科創(chuàng)投資集團(tuán)有限公司招聘筆試參考題庫含答案解析
- 騰訊學(xué)院培訓(xùn)課件
- 認(rèn)知增強技術(shù)在法律領(lǐng)域的應(yīng)用-全面剖析
- 化學(xué)自制米酒 領(lǐng)略我國傳統(tǒng)釀造工藝的魅力課件 2024-2025學(xué)年高一下魯科版(2019)必修第二冊
- 貴州省往年氣象局筆試公共基礎(chǔ)題庫
- 2024-2025學(xué)年冀教版七年級英語下冊全冊教案
評論
0/150
提交評論