畢業(yè)設(shè)計學(xué)生管理信息系統(tǒng)_第1頁
已閱讀1頁,還剩35頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p>  第9章學(xué)生管理信息系統(tǒng)</p><p>  隨著學(xué)校規(guī)模的不斷擴大,學(xué)生數(shù)量的不斷增加,學(xué)生的信息量也成倍增長。學(xué)生管理工作是學(xué)校各項工作的一個重要部分,其管理水平的高低將直接影響到人才的培養(yǎng)質(zhì)量。面對龐大的信息量,如何有效地提高學(xué)生管理工作的效率是一個學(xué)校急需解決的問題。因此開發(fā)適合學(xué)校需要的學(xué)生管理信息系統(tǒng),通過這樣的系統(tǒng),可以做到信息的規(guī)范管理、科學(xué)統(tǒng)計和快速查詢,并減少管理方面的工

2、作量。</p><p><b>  9.1概 述</b></p><p>  學(xué)生管理信息系統(tǒng)作為學(xué)校管理中的一個子系統(tǒng),與其他子系統(tǒng),如教學(xué)管理系統(tǒng)、人事管理系統(tǒng)、后勤管理系統(tǒng),圖書館管理系統(tǒng)等一起構(gòu)成構(gòu)園管理信息系統(tǒng),為校園管理信息化提供一個子功能。所以,幾乎所有的大、中、小學(xué)校都需要一套這樣的管理系統(tǒng)來提高日常的工作效率。圖1和圖2所示是兩個典型的學(xué)生管理信息系

3、統(tǒng)的界面。</p><p>  圖1第一個典型的學(xué)生管理信息系統(tǒng)的界面 </p><p>  圖2第二個典型的學(xué)生管理信息系統(tǒng)的界面</p><p>  從界面可以看到,學(xué)生管理信息系統(tǒng)應(yīng)該包括學(xué)生信息管理、學(xué)籍管理、成績管理、獎懲管理和系統(tǒng)管理等基本內(nèi)容。</p><p> ?。?)學(xué)生信息管理的數(shù)據(jù)有:學(xué)生學(xué)號、姓名、性別、

4、出生日期、所屬班級、所屬院系、籍貫等,當(dāng)有新生到校時,就啟動相應(yīng)的信息管理功能,對所有的學(xué)生信息進行入庫,隨時掌握學(xué)生的基本信息。</p><p> ?。?)學(xué)籍管理主要是對學(xué)生的學(xué)籍變更情況及時控制和管理,變更的原因有:轉(zhuǎn)系、休學(xué)、復(fù)學(xué)、退學(xué)和畢業(yè)離校。</p><p> ?。?)成績管理是數(shù)據(jù)量比較大的管理工作,每次考試結(jié)束后負責(zé)對學(xué)生各個科目的成績?nèi)霂旃ぷ骱蛯?shù)據(jù)庫成績出錯的校對工作

5、。</p><p> ?。?)獎懲管理是針對學(xué)生在校的表現(xiàn)情況,對學(xué)生進行相應(yīng)的處理工作,獎勵的項目有各種獎學(xué)金和文體獎勵,處罰的項目有通報批評、警告、嚴重警告、記過、留校查看、開除等。</p><p>  (5)系統(tǒng)管理主要是執(zhí)行數(shù)據(jù)庫備份和恢復(fù)、數(shù)據(jù)庫表的維護等工作,保證系統(tǒng)的正常運行。</p><p>  學(xué)生管理信息系統(tǒng)作為典型的數(shù)據(jù)庫項目應(yīng)用的一種,其開發(fā)

6、流程包括需求分析、UML系統(tǒng)建模、確定系統(tǒng)集成方案、數(shù)據(jù)庫分析和設(shè)計以及各功以模塊的開發(fā)等。下面介紹一個學(xué)生管理信息系統(tǒng)的詳細開發(fā)過程。</p><p>  9.2需 求 分 析</p><p>  需求分析是數(shù)據(jù)庫系統(tǒng)開發(fā)的第一步,也是最重要的一步。需求分析可以分為兩個過程:一是理解需求,二是分析需求。下面分別分析這兩個過程。</p><p>  9.2.1 理

7、解需求</p><p>  只有通過對學(xué)生管理信息系統(tǒng)的終端用戶和客戶進行大量的調(diào)研,才能真正理解終端用戶和客戶的需求,才能開發(fā)出合理的、實用的管理系統(tǒng),才能滿足各大、中、小學(xué)校的管理需要。基于大量的調(diào)研數(shù)據(jù),下面列出對最典型、最關(guān)鍵的需求。</p><p> ?。?)每年開學(xué)時,新生來報琶,要對每位新生的信息建立個人檔案,這部分工作由學(xué)籍科的管理人員進行維護和操作。學(xué)生個人檔案包括學(xué)生學(xué)

8、號、姓名、性別、出生日期、所屬班級、所屬院系、籍貫等。</p><p>  (2)考試結(jié)束時,教務(wù)科的管理人員將學(xué)生各科的成績錄入數(shù)據(jù)庫,以備隨時查詢。當(dāng)然錄入成績也有出錯的可能,所以,必須具有校對修改成績的功能。</p><p> ?。?)當(dāng)學(xué)生的表現(xiàn)出色或差的時候,學(xué)生科的管理人員應(yīng)對其進行獎勵或處罰,相應(yīng)的獎項(或處罰)和獎勵(或處罰)時間的數(shù)據(jù)都應(yīng)該入庫。</p>&

9、lt;p> ?。?)當(dāng)學(xué)生因為疾病、學(xué)業(yè)修完等原因?qū)W籍需要變更的時候,學(xué)籍科的管理人員應(yīng)該對其進行學(xué)籍變更手續(xù)。</p><p> ?。?)學(xué)生應(yīng)該具有查詢個人信息和成績的權(quán)力和權(quán)限。</p><p> ?。?)系統(tǒng)還應(yīng)提供強大的數(shù)據(jù)統(tǒng)計、查詢、報表生成以及打印等功能。</p><p> ?。?)系統(tǒng)客戶端運行在Windows平臺下,服務(wù)器端可以運行在Wind

10、ows平臺或者Unix平臺下。</p><p> ?。?)系統(tǒng)應(yīng)該有很好的可擴展性。</p><p>  在本系統(tǒng)中主要提供新生信息錄入、學(xué)籍變更、成績管理和獎懲管理等相關(guān)的功能。</p><p>  9.2.2 分析需求</p><p>  分析需求就是描述系統(tǒng)的需求,通過定義系統(tǒng)中的關(guān)鍵域類來建立模型。分析的根本目的是在開發(fā)者和提出需求

11、的人之間建立一種理解和溝通的機制,因此學(xué)生管理信息系統(tǒng)的需求分析是開發(fā)人員和學(xué)校管理人員一起完成的。</p><p>  分析需求的第一步是描述學(xué)生管理信息系統(tǒng)的功能,即定義用例,以此確定系統(tǒng)的功能需求。一所學(xué)校的主要成員就是學(xué)生和學(xué)校的管理人員、教師、系統(tǒng)管理員等,管理人員主要指學(xué)籍科、學(xué)生科和教務(wù)科的人員,他們是學(xué)生管理信息系統(tǒng)的主要使用者。學(xué)生也是學(xué)生管理信息系統(tǒng)的重要使用者,只是具備的管理權(quán)限沒有管理人員

12、那么廣。系統(tǒng)管理員也是其中一個管理人員,這不影響本系統(tǒng)的功能。</p><p>  學(xué)生管理信息系統(tǒng)的用例包括以下內(nèi)容。</p><p><b>  ·新生信息</b></p><p>  ·學(xué)生成績(包括錄入和校對)</p><p><b>  ·學(xué)籍變更</b>&l

13、t;/p><p><b>  ·學(xué)生獎勵</b></p><p><b>  ·學(xué)生處罰</b></p><p><b>  ·學(xué)生信息查詢修改</b></p><p>  需要注意的是,學(xué)生信息查詢修改用例包括學(xué)生對個人基本信息和查詢和修改,這些信息

14、指的是新生入學(xué)時被錄入的基本信息。此外,學(xué)生還具有查詢和打印成績的權(quán)限,查詢獎懲情況、學(xué)籍變更記錄等權(quán)限。</p><p>  學(xué)生管理信息系統(tǒng)的分析可以用UML的用例圖來描述。每個用例還可以以文本的方式描述,描述的內(nèi)容包括用例以及用例與角色交互的更詳細的信息,文本的內(nèi)容是通過和用戶討論后確定的。下面給出上述用例的描述。</p><p><b> ?。?)新世界生信息</b

15、></p><p>  增加學(xué)生記錄→標記學(xué)生學(xué)號→確定學(xué)生院系→確定學(xué)生班級</p><p><b> ?。?)學(xué)生成績</b></p><p>  增加學(xué)生成績記錄→校對學(xué)生成績</p><p><b>  (3)學(xué)籍變更</b></p><p>  增加學(xué)籍變更記

16、錄→標記變更原因→標記變更時間</p><p><b> ?。?)學(xué)生獎勵</b></p><p>  增加學(xué)生獎勵記錄→標記獎勵項目→標記獎勵時間</p><p><b> ?。?)學(xué)生處罰</b></p><p>  增加學(xué)生處罰記錄→標記處罰等級→標記處罰時間</p><p

17、>  (6)學(xué)生信息查詢修改</p><p>  查詢個人信息→修改個人信息→保存?zhèn)€人信息→查詢獎懲情況→查詢學(xué)籍變更情況→打印成績單</p><p>  9.3UML 系 統(tǒng) 建 模</p><p>  完成需求分析后,就需要對系統(tǒng)進行UML建模。UML建模是對需求分析結(jié)果的模型建立過程。下面進行學(xué)生管理信息系統(tǒng)的UML建模過程。</p>&l

18、t;p>  9.3.1 學(xué)生管理信息系統(tǒng)的用例分析</p><p>  在上一節(jié)需求分析中列出了學(xué)生管理信息系統(tǒng)的全部用例:新生信息、學(xué)生成績、學(xué)籍變更、學(xué)生獎勵、學(xué)生處罰、學(xué)生信息查詢修改。這里,使用權(quán)用Rose軟件進行UML建模,其用例如圖3所示。</p><p>  圖3學(xué)生管理信息系統(tǒng)用例圖</p><p>  該用例圖標記了所有的學(xué)生管理住處系統(tǒng)的

19、用例,從中可以得知,學(xué)生管理信息系統(tǒng)的角色可以劃分為兩類。</p><p>  ·學(xué)校管理人員:用例包括學(xué)生管理信息系統(tǒng)的所有用例。</p><p>  ·學(xué)生:用例只有學(xué)生信息查詢修改。</p><p>  要注意的是,學(xué)校管理人員具有查詢和修改所有數(shù)據(jù)的權(quán)限,處于高權(quán)限位置,而學(xué)生只有修改個有基本信息、查詢獎懲情況、查詢學(xué)籍變更情況和打印成績

20、單的權(quán)限,處于低權(quán)限位置。</p><p>  9.3.2 學(xué)生管理信息系統(tǒng)的域類分析</p><p>  UML建模的第二步就是域類分析。實際開發(fā)學(xué)生管理信息系統(tǒng)時,域類分析是建立在用例分析基礎(chǔ)上的。要了解系統(tǒng)要處理的概念,最好獎學(xué)校的管理人員組織起來開個討論會,詳細談?wù)摵土信e所需要包含水量的用例,了解概念和概念之間的關(guān)系。</p><p>  學(xué)生管理信息系統(tǒng)

21、中的域主要包括:學(xué)生(Student)、成績(Score)、學(xué)籍變更(Change)、獎勵(Encourage)、處罰(Punish)??梢栽陬悎D中將上面這些域以及它們之間的關(guān)系表示出來,如圖4所示。</p><p>  圖4學(xué)生管理信息系統(tǒng)域草圖</p><p>  需要說明的是,這里的域類還是處于“草圖”狀態(tài),定義的操作和屬性不是最后的片本,只是 在現(xiàn)階段看來這些操作和屬性是比較合適的

22、,有些操作獎在時序圖的草圖中定義,而不晨用例哪定義。</p><p>  有些類可以用UML狀態(tài)圖來顯示類的對象的不同狀態(tài)以及改變狀態(tài)的事件。在本系統(tǒng)中有狀態(tài)圖的類是學(xué)生,該類的狀態(tài)圖將在后面的內(nèi)容中介紹。</p><p>  為了描述域類的動態(tài)行為,可以使用權(quán)UML的時序圖、協(xié)作圖或者活動圖來描述。本文選用時序圖。時序圖的基礎(chǔ)是用例。在時序圖中要說明域類是如何協(xié)作以操作該系統(tǒng)中的用例。當(dāng)

23、然,在建立時序圖時,將會發(fā)現(xiàn)新的操作,并將其加入類中,這將在后面看到所建立的時序圖模型。用時序圖建模時,需要窗口或?qū)υ捒蜃鳛榻巧缑?。顯然,這里需要操作界面的有基本信息、獎勵、處罰、學(xué)籍變更、修改查詢等,此外維護也需要一個操作界面。</p><p>  9.3.3 學(xué)生管理信息系統(tǒng)的設(shè)計</p><p>  在設(shè)計階段,首先要設(shè)計類的狀態(tài)的圖。類的狀態(tài)圖說明了可能的狀態(tài)以及需要被處理的過

24、渡期,使用狀態(tài)圖可以揭示單個對象在整個系統(tǒng)中的變化細兇,對了解和實現(xiàn)關(guān)鍵類有較大的幫助。</p><p>  不是所有的類都有狀態(tài)圖,在本系統(tǒng)中,有狀態(tài)圖的類是學(xué)生。</p><p>  學(xué)生的狀態(tài)圖如圖5所示。</p><p><b>  圖5學(xué)生的狀態(tài)圖</b></p><p>  設(shè)計階段的最后一步是設(shè)計UML模型

25、,也就是將前面設(shè)計的模型進竽擴展和細化。下面給出各個用例的時序圖。設(shè)計的目的是產(chǎn)生一個可以使用的解決方案,并且可以容易地將方案轉(zhuǎn)換成程序代碼。</p><p>  學(xué)生的時序如圖6所示</p><p><b>  圖6學(xué)生時序圖</b></p><p>  成績的時序如圖7所示。</p><p><b>  圖

26、7成績時序圖</b></p><p>  學(xué)籍變更的時序如圖8所示。</p><p><b>  圖8學(xué)籍變更時序圖</b></p><p>  獎勵的時序如圖9所示。</p><p><b>  圖9獎勵時序圖</b></p><p>  處罰的時序如圖10所示

27、。</p><p><b>  圖10處罰時序圖</b></p><p>  查詢修改的時序如圖11所示。</p><p>  圖11查詢修改時序圖</p><p>  時序圖設(shè)計完成后,開始進行學(xué)生管理信息系統(tǒng)的架構(gòu)設(shè)計和細節(jié)設(shè)計。在架構(gòu)設(shè)計中將定義包(子系統(tǒng))、包間的相關(guān)性和基本的通信機制。</p>&

28、lt;p>  設(shè)計架構(gòu)時,應(yīng)該將應(yīng)用邏輯和技術(shù)邏輯分割。應(yīng)用邏輯是需要編碼設(shè)計的,而技術(shù)邏輯,主要包括用戶界面、數(shù)據(jù)庫或者通信一般是已經(jīng)有的。學(xué)生管理信息系統(tǒng)中的包(或者為子系統(tǒng)、層)有如下幾個,如圖9-12所示。</p><p>  圖9-12包和包間關(guān)系</p><p>  ·用戶界面包(User Interface Package):為通用用戶界面類,調(diào)用業(yè)務(wù)對象包中

29、的操作檢索和插入數(shù)據(jù),可以簡單地把它們看成將來用戶要操作的界面。</p><p>  ·業(yè)務(wù)對象包(Business Object Package):業(yè)務(wù)對象包包含上面設(shè)計的分析模型的域類。業(yè)務(wù)對象包同數(shù)據(jù)庫包協(xié)同完成任務(wù)。</p><p>  ·數(shù)據(jù)庫包(Database Package):數(shù)據(jù)庫包向業(yè)務(wù)對象數(shù)據(jù)包提供服務(wù)。</p><p> 

30、 ·應(yīng)用包(Utility Package):應(yīng)用包向其他包提供服務(wù)。</p><p>  至此,UML系統(tǒng)建模完成。</p><p>  9.4系 統(tǒng) 配 置</p><p>  優(yōu)秀的數(shù)據(jù)庫系統(tǒng)必有一個相對最優(yōu)的系統(tǒng)配置方案。系統(tǒng)配置要根據(jù)用戶的實際情況設(shè)計,主要依據(jù)就是系統(tǒng)的吞吐量和系統(tǒng)對穩(wěn)定性的要求,此外,用戶的維護水平也是一個重要的方面。<

31、/p><p>  9.4.1 軟件配置</p><p>  軟件配置主要包括數(shù)據(jù)庫的選擇和操作系統(tǒng)的選擇。學(xué)生管理信息系統(tǒng)的軟件配置要根據(jù)用戶對系統(tǒng)的穩(wěn)定性要求、系統(tǒng)的容量以及用戶的維護水平來確定。</p><p><b>  (1)數(shù)據(jù)庫選擇</b></p><p>  可以根據(jù)數(shù)據(jù)量的大小選擇不同的數(shù)據(jù)庫,如表1所示。

32、數(shù)據(jù)量是指數(shù)據(jù)庫中需存放的單表的最大記錄數(shù)。</p><p>  表1學(xué)生管理信息系統(tǒng)數(shù)據(jù)庫的選擇</p><p>  在本系統(tǒng)中,選擇Access2000數(shù)據(jù)庫。</p><p><b> ?。?)操作系統(tǒng)選擇</b></p><p>  可以根據(jù)用戶量的大小選擇不同的操作系統(tǒng)。操作系統(tǒng)的選擇如表2所示。</p&

33、gt;<p>  表2學(xué)生理管信息系統(tǒng)操作系統(tǒng)的選擇</p><p>  在本例中,選擇Windows 2000 Server操作系統(tǒng)。</p><p>  9.4.2 硬件配置</p><p>  硬件配置主要包括客戶端硬件的選擇和服務(wù)器端硬件的選擇。學(xué)生管理信息系統(tǒng)的硬件配置要根據(jù)用戶對系統(tǒng)的穩(wěn)定性要求、系統(tǒng)的容量、系統(tǒng)的吞吐量以及用戶的維護水平

34、來確定。</p><p> ?。?)客戶端硬件選擇</p><p>  可以根據(jù)穩(wěn)定性要求選擇不同的客戶端。一般情況下,對客戶端的要求不高。如表3所示。</p><p>  表3學(xué)生管理信息系統(tǒng)客戶端硬件的選擇</p><p> ?。?)服務(wù)器端硬件選擇</p><p>  可以根據(jù)數(shù)據(jù)量和吞吐量的大小選擇不同的服務(wù)器

35、硬件。服務(wù)器端的選擇如表9-4所示。</p><p>  表4 學(xué)生管理信息系統(tǒng)服務(wù)器端硬件的選擇</p><p>  當(dāng)然,這種配置不是絕對的,這里只給出參考配置的范圍。具體的配置需要根據(jù)用戶的需求和建設(shè)經(jīng)費精確計算。</p><p>  9.4.3 網(wǎng)絡(luò)配置</p><p>  學(xué)生管理信息系統(tǒng)的網(wǎng)絡(luò)配置一般有如下幾種類型。</p

36、><p> ?。?)單機模式:即服務(wù)器和客戶端在一臺計算機上。</p><p>  (2)百兆模式:計算機網(wǎng)絡(luò)的速度為百兆,如圖13所示。</p><p> ?。?)千兆模式:計算機網(wǎng)絡(luò)的速度為千兆,實際上,沒有必要給每個節(jié)點都配備千兆網(wǎng)絡(luò)接口,只需要服務(wù)端配備千兆接口即可,如圖14所示。</p><p>  圖13學(xué)生管理信息系統(tǒng)網(wǎng)絡(luò)百兆配置&

37、lt;/p><p>  圖14學(xué)生管理信息系統(tǒng)網(wǎng)絡(luò)千兆配置</p><p>  在實際的運行中,可以根據(jù)用戶情況選擇不同的網(wǎng)絡(luò)配置,如表5所示。</p><p>  表5學(xué)生管理信息系統(tǒng)配置的選擇</p><p>  9.5數(shù) 據(jù) 庫 分 析</p><p>  在開發(fā)學(xué)生管理信息系統(tǒng)時,可以先進行E-R圖分析,然后對表和

38、字段進行分析,最后進行數(shù)據(jù)庫建模。</p><p>  9.5.1 E-R圖分析</p><p>  對學(xué)生管理信息系統(tǒng)的E-R圖分析是建立在UML系統(tǒng)模型基礎(chǔ)上的。這里給出E-R圖分析的結(jié)果。實體關(guān)系圖的分析結(jié)果非常復(fù)雜,一般情況下使用從簡到繁的方式進行設(shè)計。首先從大的方面設(shè)計出各個實體之間的關(guān)系,然后在這個關(guān)系的基礎(chǔ)上進行細化。</p><p>  圖15所示

39、為學(xué)生管理信息系統(tǒng)的實體關(guān)系簡圖。</p><p>  圖15學(xué)生管理信息系統(tǒng)的實體關(guān)系簡圖</p><p>  在簡圖的基礎(chǔ)上進一步設(shè)計實體關(guān)系的詳細結(jié)構(gòu)。圖16所示為學(xué)生管理信息系統(tǒng)的實體關(guān)系詳圖。圖916只是學(xué)生管理信息系統(tǒng)最基本元素的實體關(guān)系圖,可以在此基礎(chǔ)上根據(jù)用戶的不同需要進行擴展。</p><p>  圖16學(xué)生管理信息系統(tǒng)的實體關(guān)系圖</p&g

40、t;<p>  9.5.2 表/字段分析和數(shù)據(jù)庫建模</p><p>  表/字段分析是建立在實體關(guān)系圖基礎(chǔ)上。對表和字段分析后就可以建立數(shù)據(jù)庫模型了。以圖16所示的學(xué)生管理信息系統(tǒng)的實體關(guān)系圖為基礎(chǔ),可設(shè)計表和字段,然后建立數(shù)據(jù)庫模型。</p><p>  建立的數(shù)據(jù)庫模型如圖17所示。</p><p>  圖9學(xué)生管理信息系統(tǒng)的數(shù)據(jù)庫模型<

41、/p><p>  9.6數(shù) 據(jù) 庫 設(shè) 計</p><p>  數(shù)據(jù)庫設(shè)計與應(yīng)用等程序設(shè)計是分離的,數(shù)據(jù)庫的設(shè)計非常重要。有了數(shù)據(jù)庫模型,數(shù)據(jù)庫的設(shè)計就簡單多了。在學(xué)生管理信息系統(tǒng)中,首先要創(chuàng)建學(xué)生管理信息系統(tǒng)數(shù)據(jù)庫,然后在數(shù)據(jù)庫中創(chuàng)建需要的表和字段。下面分別講述本系統(tǒng)中數(shù)據(jù)庫的設(shè)計。本例采用Access2000數(shù)據(jù)庫系統(tǒng)來進行數(shù)據(jù)庫的設(shè)計。</p><p>  9.6

42、.1 創(chuàng)建數(shù)據(jù)庫</p><p>  下面給出在Access中創(chuàng)建數(shù)據(jù)庫的過程。</p><p> ?。?)運行Access應(yīng)用程序,在“新建數(shù)據(jù)庫”選項組中選取“空Access數(shù)據(jù)庫”單選,按鈕,然后單擊“確定”按鈕,如圖18所示。</p><p>  (2)在“文件新建數(shù)據(jù)庫”窗口指定數(shù)據(jù)庫的存放位置與數(shù)據(jù)庫文件名稱(本例為Stu.mdb)然后單擊“創(chuàng)建”按鈕

43、,如圖19所示。</p><p>  圖18新建數(shù)據(jù)庫 </p><p>  圖19指定數(shù)據(jù)庫的存放位置與數(shù)據(jù)庫文件名稱</p><p>  9.6.2 創(chuàng)建表</p><p>  下面給出在Access 中創(chuàng)建表的過程。</p><p> ?。?)在創(chuàng)建數(shù)據(jù)庫后,進入主界面,單擊“Stu:數(shù)據(jù)庫

44、”子窗口中的“設(shè)計”按鈕。此時將會出出“表1:表”窗口,如圖20所示。</p><p><b>  圖20開始設(shè)計表</b></p><p> ?。?)在表的設(shè)計窗口“表1:表”中,按表6建立數(shù)據(jù)字段,并指定字段的數(shù)據(jù)類型與相關(guān)屬性。</p><p>  表6學(xué)生信息數(shù)據(jù)庫(Stuinfo)</p><p>  建立數(shù)據(jù)

45、庫字段并指定字段的數(shù)據(jù)類型與相關(guān)屬性后,字段設(shè)計界面如圖21所示。</p><p>  (3)在StuId字段上單擊鼠標右鍵,選擇快捷菜單中的“主鍵”選項,讓StuId字段成為主要索引字段,則StuId 字段前方將出郵一個鑰匙圖標,如圖22所示。</p><p>  圖21字段設(shè)計 </p><p>  圖22設(shè)置“StuId”字

46、段為主鍵</p><p> ?。?)字段設(shè)計完畢后,單擊工具欄中的“保存”按鈕,此時將會出現(xiàn)“另存為”對話框,在“表名稱”文本框輸入“StuInfo”,如圖23所示,然后單擊“確定”按鈕將這個表保存。</p><p> ?。?)回到“Stu:數(shù)據(jù)庫”子窗口中,如果出現(xiàn)了StuInfo 這個表項目,就代表現(xiàn)在已經(jīng)完成學(xué)生數(shù)據(jù)文件的設(shè)計,如圖24所示。</p><p>

47、  圖23保存表 </p><p>  圖24完成數(shù)據(jù)庫中的表創(chuàng)建工作</p><p> ?。?)重復(fù)步驟(1)~(5),按表7、表8、表9、表10建立表,并指定表中各字估的數(shù)據(jù)類型與相關(guān)屬性。</p><p>  表7字籍變更數(shù)據(jù)表(Change)</p><p>  圖8學(xué)生獎勵數(shù)據(jù)表(Encourage)</p

48、><p>  表9學(xué)生處罰數(shù)據(jù)表(Punish)</p><p>  表10學(xué)生成績數(shù)據(jù)表(Score)</p><p> ?。?)將這些表分別名為Change、Encourage、Punish、Score,主鍵分別為:StuNo、StuNo、StuNo、Scoreld,設(shè)計結(jié)果如圖25所示。,</p><p> ?。?)回到“Stu:數(shù)據(jù)庫”子

49、窗口中,出現(xiàn)了StuInfo、Change、Encourage、Punish、Scores個表項目,完成數(shù)據(jù)文件的設(shè)計,如圖26所示。</p><p>  圖25完成數(shù)據(jù)庫表項目的設(shè)計 </p><p>  圖26完成后端數(shù)據(jù)庫創(chuàng)建工作</p><p>  9.7界 面 設(shè) 計</p><p>  以上內(nèi)容完成了數(shù)據(jù)庫的后臺

50、工作,建立起了能夠保障系統(tǒng)順利、正確運行的后臺。界面設(shè)計工作在進行系統(tǒng)開發(fā)的時候是必不可少,也是十分重要的。下面就對學(xué)生管理信息系統(tǒng)的界面設(shè)計。</p><p>  9.7.1 用戶登錄界面設(shè)計</p><p>  利用用戶登錄成功能實現(xiàn)對用戶操作權(quán)限的限制。管理員和學(xué)生的權(quán)限不一樣,管理員擁有系統(tǒng)的所有權(quán)限,學(xué)生只有查詢修改個人信息和打印成績單的權(quán)限。用戶必須輸入正確的密碼才能進入下一

51、界面,如果用戶的密碼輸入錯誤,應(yīng)用程序會提示錯誤信息。用戶如果連續(xù)3次輸入錯誤,應(yīng)用程序會強迫使用者退出并終止應(yīng)用程序的運行,圖27所示是用戶登錄界面窗體。</p><p>  9.7.2 學(xué)生管理信息系統(tǒng)主界面設(shè)計</p><p>  學(xué)生管理信息系統(tǒng)主界面主要實現(xiàn)新生信息錄入、成績管理、學(xué)籍變更、處罰管理、獎勵管理和查詢修改的功能。選擇該界面中工具欄中的不同按鈕,就會進入實現(xiàn)不同功能

52、的窗體。圖28是圖書館理系統(tǒng)主界面窗體。</p><p>  圖27用戶登錄界面窗體 </p><p>  圖28學(xué)生管理信息系統(tǒng)主界面窗體</p><p>  這里主要介紹與數(shù)據(jù)庫相關(guān)的組件的屬性,如表11所示。</p><p>  表11學(xué)生管理信息系統(tǒng)主界面中數(shù)據(jù)庫組件的屬性設(shè)置</p><p>

53、;  9.7.3 新生信息錄入界面設(shè)計</p><p>  新生信息錄入界面主要實現(xiàn)學(xué)生信息的添加功能,包括學(xué)號、性別、出生日期、籍貫、姓名、班級、所屬院系等信息的添加,圖29是新生信息錄入界面窗體。</p><p>  圖29新生信息錄入界面窗體</p><p>  9.7.4 成績管理界面設(shè)計</p><p>  成績管理界面主要實現(xiàn)

54、成績的添加和校對修改的功能,圖30是成績管理界面窗體。</p><p>  圖30成績管理界面窗體</p><p>  9.7.5 學(xué)籍變更界面設(shè)計</p><p>  學(xué)籍變更界面是實現(xiàn)學(xué)生學(xué)籍變更的功能,圖31是學(xué)籍變更界面窗體。</p><p>  圖31學(xué)籍變更界面窗體</p><p>  9.7.6 獎勵

55、管理界面設(shè)計</p><p>  當(dāng)學(xué)生在校表現(xiàn)優(yōu)秀,學(xué)校應(yīng)該獎勵該學(xué)生,以鼓勵大家的學(xué)習(xí)熱情。獎勵管理界面用于實現(xiàn)學(xué)生獎勵的功能。相應(yīng)的獎項有校特等獎、校一等校、校二等校、校三等校、工作獎等,用戶可以根據(jù)實際情況進行設(shè)計。圖32是獎勵管理界面窗體。</p><p>  圖32獎勵管理界面窗體</p><p>  9.7.7 處罰管理界面設(shè)計</p>

56、<p>  當(dāng)學(xué)生在校的表現(xiàn)差,學(xué)校應(yīng)該處罰該學(xué)生。處罰管理界面就是實現(xiàn)學(xué)生處罰的功能。相應(yīng)的處罰項有警告、記過、開除等,用戶可以根據(jù)實際情況進行設(shè)計。圖33是處罰管理界面窗體。</p><p>  圖33處罰管理界面窗體</p><p>  9.7.8 查詢修改界面設(shè)計</p><p>  學(xué)生可以根據(jù)自己的學(xué)號在查詢修改界面中查詢自己的個人信息,包

57、括基本信息、個人成績、學(xué)籍變更情況、獎勵和處罰情況。如果發(fā)現(xiàn)基本信息有錯誤的話,有權(quán)進行修改,而且學(xué)生有權(quán)打印自己的成績單。圖9-34是查詢修改界面窗體。</p><p><b>  圖34查詢修改界面</b></p><p>  9.8代 碼 分 析 與 實 現(xiàn)</p><p>  上面對程序界面設(shè)計進行了詳細的設(shè)計,基本完成了程序界面的設(shè)計

58、工作。程序代碼是程序的核心所在,是系統(tǒng)開發(fā)的靈魂。下面對系統(tǒng)的代碼做具體的分析。</p><p>  9.8.1 用戶登錄的代碼實現(xiàn)</p><p>  學(xué)生管理信息系統(tǒng)啟動時,首先出現(xiàn)的是系統(tǒng)主界面。單擊系統(tǒng)主界面中工具欄的“用戶登錄”按鈕,就彈出用戶登錄界面。程序從配置文件中獲取管理員和學(xué)生的密碼,和用戶輸入的密碼比較,如果密碼正確,則根據(jù)身份配權(quán)限;如果不正確,則提示用戶重輸或退出

59、:重輸3次以上,系統(tǒng)自動退出。代碼如下:</p><p>  Proctdure TLoginFrm.BitBtn1Click(Sender:TObject);//“用戶登陸”按鈕的單擊事件</p><p>  Var pwdfile:textfile;</p><p>  PwdStr:string;</p><p><b>  

60、Begin</b></p><p>  if RadioButton1.checked=True then</p><p>  assingnfile(pwdfile,’.\Admini.cfg’);</p><p>  if RadioButton2.checked=True then</p><p>  assingfile(

61、pwdfile,’.\student.cfg’);</p><p>  reset(pwdfile);</p><p>  readln(pwdfile,pwdStr);</p><p>  closefile(pwdfile);</p><p>  Times:=Times=1;</p><p>  If edit1

62、.Text=PwdStr then</p><p><b>  begin</b></p><p><b>  close;</b></p><p>  StuMainFrm.Enabled:=True</p><p>  StuMainFrm.PageControll.ActivePage:=St

63、uMainFrm.Tabsheet6;</p><p>  StuMainFrm.PageControll.Visible:=true;</p><p>  if Radiobuttonl.checked=True then</p><p><b>  begin</b></p><p>  StuMainFrm.Too

64、lButton2.Enabled:=Ture;</p><p>  StuMainFrm.Toolbutton3.Enabled:=True;</p><p>  StuMainFrm.ToolButton4.Enabled:=True;</p><p>  StuMainFrm.ToolButton5.Enabled:=True;</p><p

65、>  StuMainFrm.ToolButton8.Enabled:=True;</p><p>  StuMainFrm.ToolButton6.Enabled:=True;</p><p><b>  end;</b></p><p>  if RadioButton2.checked=True then</p><

66、;p><b>  begin</b></p><p>  StuMainFrm.ToolButton6.Enabled:=True;</p><p><b>  end;</b></p><p><b>  end</b></p><p><b>  else&

67、lt;/b></p><p><b>  begin</b></p><p>  if MessageDlg(‘密碼輸入錯誤,是否退出?’,mtContirmation,[mbYes,mbNo],0)=mryes</p><p><b>  then</b></p><p><b>

68、  begin</b></p><p><b>  close;</b></p><p>  StuMainFrm.Enabled:=True;</p><p><b>  end</b></p><p><b>  else </b></p><

69、;p><b>  begin</b></p><p>  if times<3 then editl.SetFocus</p><p><b>  else</b></p><p><b>  begin</b></p><p>  MessageDlg(‘對不起,

70、密碼輸入嚴重錯誤,請退出!’,mtInformation,[mbOk],0);</p><p>  Application.Terminate;</p><p><b>  end;</b></p><p><b>  end;</b></p><p><b>  end;</b&g

71、t;</p><p><b>  end;</b></p><p>  為了防止用戶多次重輸密碼,限制了輸入了次數(shù)為3次,因此需要對次數(shù)進行初始化,活加代碼如下:</p><p>  Procedure TLoginFrm.FormShow(Sender:TObject);</p><p><b>  Begi

72、n</b></p><p><b>  Times:=0;</b></p><p><b>  End;</b></p><p>  9.8.2 成績管理的代碼實現(xiàn)</p><p>  當(dāng)管理員選擇了一位學(xué)生后,輸入各科成績,程序把數(shù)據(jù)保存到數(shù)據(jù)庫。代碼如下:</p>&

73、lt;p>  Procedure TStuMainFrm.BitBtn9Click(Sender:TObject);//“添加”按鈕的單擊事件</p><p>  var StuNo,StuName:string;</p><p>  i:integer;</p><p><b>  begin</b></p><p&

74、gt;  with Query do</p><p><b>  begin</b></p><p><b>  close;</b></p><p>  Sql.Clear;</p><p>  Sql.Add(‘Select StuNo from Score Whers StuNo=’+’’’’

75、+DbEdit6.Text+’’’’);</p><p><b>  Open;</b></p><p>  if recordcount=0 then</p><p><b>  begin</b></p><p>  StuNo:=DbEdit6.Text;</p><p&g

76、t;  StuName:=DbEdit7.Text;</p><p>  for i:=l to 12 do</p><p><b>  begin</b></p><p>  if Course[i]<>’0’then</p><p>  with Table5 do</p><p>

77、;<b>  begin</b></p><p><b>  Open;</b></p><p><b>  Append;</b></p><p>  SetFields([nil,StuNo,kStuName,Course[i],Score[i]]);</p><p>&l

78、t;b>  Post;</b></p><p><b>  end;</b></p><p><b>  end;</b></p><p><b>  end</b></p><p><b>  else</b></p>&

79、lt;p>  MessageDlg(‘對不起,該記錄已經(jīng)存在!’,mtInformation,[mbOk],0);</p><p><b>  end;</b></p><p><b>  end;</b></p><p>  9.8.3 學(xué)籍變更的代碼實現(xiàn)</p><p>  當(dāng)管理員選擇

80、了學(xué)籍需要變更的學(xué)生后,輸入變更項和變更時間,程序把數(shù)據(jù)保存到數(shù)據(jù)庫。代碼如下:</p><p>  procedure TStuMainFrm.BitbtnlClick(Sender: Tobject);//“添加”按鈕的單擊事件</p><p>  var StuNo,StuName,StuClass,StuDepart.ChangeName,ChangeRemark:string;&

81、lt;/p><p><b>  begin</b></p><p>  winth Table2 do</p><p><b>  begin</b></p><p><b>  Open;</b></p><p>  StuNo:=Editl.text;&

82、lt;/p><p>  StuName:=Edit2.text;</p><p>  StuClass:=Edit3.text;</p><p>  StuDepart:=Edit4.text;</p><p>  ChangeName:=ComboBoxl.Text;</p><p>  ChangeRemark:=Ed

83、it5.text;</p><p><b>  append;</b></p><p>  SetFields([StuNo,StuName,StuClass,StuDepart,ChangeName,ChangeRemark,</p><p>  Formatdatetime(‘dddddde’,DateTimePicker2.Dat)]);

84、</p><p><b>  Post;</b></p><p><b>  end;</b></p><p><b>  end;</b></p><p>  9.8.4 獎勵管理的代碼實現(xiàn)</p><p>  當(dāng)管理員選擇了需要獎勵的學(xué)生后,選擇了

85、獎項和獎勵時后,程序把數(shù)據(jù)保存到數(shù)據(jù)庫。代碼如下:</p><p>  procedure TStuMainFrm.bitbtn3Click(Sender: TObject);//“添加”按鈕的單擊事件</p><p>  var StuNo,StuName,StuClass,StuDepart,EncourageName:sering;</p><p><b

86、>  begin</b></p><p>  with Table3 do</p><p><b>  begin</b></p><p><b>  Open;</b></p><p>  StuNo:=Edit6.text;</p><p>  StuN

87、ame:=Edit7.text;</p><p>  StuClass:=Edit8.text;</p><p>  StuDepart:=Edit9.text;</p><p>  if RadioButtonl.checked=true then</p><p>  EncourageName:=RadioButtonl.Caption

88、;</p><p>  if RadioButton2.checked=true then</p><p>  EncourageName:=RadioButton2.Caption;</p><p>  if RadioButton3.checked=true then</p><p>  EncourageName:=RadioBut

89、ton3.lCaption;</p><p>  if RadioButton4.checked=true then</p><p>  EncourageName:=RadioButton4.Caption;</p><p>  if RadioButton5.checked=true then</p><p>  EncourageN

90、ame:=RadioButton5.Caption;</p><p>  if RadioButton6.checked=true then</p><p>  EncourageName:=RadioButton6.Caption;</p><p>  if RadioButton7.checked=true then</p><p>

91、  EncourageName:=RadioButton7.Capiton;</p><p>  if RadioButton8.checked=true then</p><p>  EncourageName:=RadioButton8.Caption;</p><p><b>  append;</b></p><p

92、>  SetFields([StuNo,StuName,StuClass,StuDepart,EncourageName,</p><p>  Formatdatetime(‘dddddd’,DateTimePickerl.Dat)]);</p><p><b>  Post;</b></p><p><b>  end;<

93、;/b></p><p><b>  end:</b></p><p>  外罰管理的代碼和獎勵管理的代碼類似,這里不再 述。</p><p>  9.8.5 查詢/修改的代碼實現(xiàn)</p><p>  當(dāng)學(xué)生根據(jù)自己的學(xué)號查詢了自己的信息,如果發(fā)現(xiàn)有錯的話,可以修改,然后程序把修改后數(shù)據(jù)保存到數(shù)據(jù)庫。代碼如下

94、:</p><p>  procedure TStuMainFrm.BitBtn7Click(Sender:TObject);//“修改”按鈕的單擊事件</p><p>  var StuNo,StuName,StuClass,StuDepart,StuSex,Birthdayt,NativePlace:string;</p><p><b>  begi

95、n</b></p><p>  with Tablel do</p><p><b>  begin</b></p><p><b>  Open;</b></p><p>  StuNo:=Editl4.text;</p><p>  StuName:=Edit

96、l5.text;</p><p>  StuClass:=Editl6.text;</p><p>  StuDepart:=Editl7.text;</p><p>  NativePlace:=Editl9.text;</p><p>  Birthday:=Edit20.text;</p><p>  if Ra

97、dioButtonl2.checked=true then</p><p>  StuSex:=RadioButtonl2.Caption;</p><p>  if RadioButtonl6,checked=true then</p><p>  StuSex:=RadioButtonl6.Caption;</p><p><b

98、>  Edit;</b></p><p>  SetFields([StuNo,StuDepart,StuClass,StuName,StuSex,Birthday,NativePlace]);</p><p><b>  Post;</b></p><p><b>  end;</b></p>

99、;<p><b>  end;</b></p><p>  學(xué)生可以打印成績單,其代碼很簡單,這里不再列出。</p><p>  9.9實 例 演 示</p><p>  至此,學(xué)生管理信息系統(tǒng)的開發(fā)基本結(jié)束。下面演示這個系統(tǒng),來看看實際的效果如何。</p><p>  運行學(xué)生管理信息系統(tǒng)的執(zhí)行文件Stu

100、Main.exe,首先出現(xiàn)的是學(xué)生管理信息系統(tǒng)的主界面,它有一個工具欄,上面有8個按鈕,依次是:用戶登錄、新生信息錄入、成績管理、學(xué)籍變更、獎勵管理、處罰管理、查詢修改和退出,其中只有“退出”和“用戶登錄”是激活的,其他是不可用的,需要登錄后再分配權(quán)限,如圖35所示。</p><p>  圖35學(xué)生管理信息系統(tǒng)的主界面</p><p>  單擊“退出”按鈕,則退出系統(tǒng)。單擊“用戶登錄”按鈕

101、,則彈出用戶登錄界面,如圖36所示。用戶選擇自己的身份,輸入相應(yīng)的密碼即可擁有相應(yīng)的權(quán)限。首次登錄密碼都是“888888”。如果輸入的密碼不正確,則提示用戶是否退出,如圖37所示。如果輸入的密碼3次以上不正確,則自動退出系統(tǒng),如圖38所示。</p><p>  圖36用戶登錄界面 </p><p>  圖37提示用戶 </p><p><b&

102、gt;  圖38自動退出系統(tǒng)</b></p><p>  如果身份是管理員,而且輸入的密碼正確,則分配給管理員所有的權(quán)限,如圖39所示。如果身份是學(xué)生,而且輸入的密碼正確,則分配給學(xué)生查詢修改的權(quán)限,如圖40所示。</p><p>  圖39管理員擁有的權(quán)限</p><p>  圖40學(xué)生擁有的權(quán)限</p><p>  現(xiàn)在假設(shè)以

103、管理員的身份登錄了系統(tǒng),這樣就擁有了所有的權(quán)限,下面就是逐個演示各個系統(tǒng)功能。</p><p>  9.9.1 新生信息錄入的實例演示</p><p>  單擊“新生信息錄入”按鈕,彈出新生信息錄入界面,如圖41所示,單擊導(dǎo)航條上按+按鈕,輸入相應(yīng)的學(xué)生信息,選擇班級和院系,單擊導(dǎo)航條上的√按鈕,新生信息就保存到了數(shù)據(jù)庫。</p><p>  圖41新生信息錄入實

104、例演示</p><p>  9.9.2 成績管理的實例演示</p><p>  單擊“成績管理”按鈕,則出現(xiàn)成績管理界面,如圖42所示。單擊導(dǎo)航條上的?和?按鈕查找學(xué)生,學(xué)號、姓名自動從數(shù)據(jù)庫中調(diào)出,錄入學(xué)生的各科成績,單擊“√添加”按鈕,學(xué)生成績就保存到了數(shù)據(jù)庫。在右邊的表中,瀏覽到相應(yīng)的記錄,如果需要修改,單擊導(dǎo)航條上的▲按鈕,輸入相應(yīng)的成績,再單擊導(dǎo)航條上的√按鈕,修改后的信息就保

105、存到了數(shù)據(jù)庫。</p><p>  圖42成績管理實例實示</p><p>  9.3.3 學(xué)籍變更的實例演示</p><p>  單擊“學(xué)籍變更”按鈕,出現(xiàn)學(xué)籍變更界面,如圖43所示。輸入學(xué)生的學(xué)號,姓名等信息自動從數(shù)據(jù)庫中調(diào)出,錄入變更項和變更時間,單擊“√添加”,學(xué)籍變更信息就保存到了數(shù)據(jù)庫。</p><p>  圖43學(xué)籍變更實例演

106、示</p><p>  9.9.4 獎勵管理的實例演示</p><p>  單擊“獎勵管理”按鈕,出現(xiàn)獎勵管理界面,如圖44所示。輸入學(xué)生的學(xué)號,姓名等信息自動從數(shù)據(jù)庫中調(diào)出,選擇獎勵項和獎勵時間,單擊“√添加”按鈕,獎勵信息就保存到了數(shù)據(jù)庫。</p><p>  圖44獎勵管理實例演示</p><p>  9.9.5 外罰管理的實例演示

107、</p><p>  單擊“外罰管理”按鈕,出現(xiàn)外罰管理界面,如圖45所示。輸入學(xué)生的學(xué)號,姓名等信息自動從數(shù)據(jù)庫中調(diào)出,選擇處罰項和處罰時間,單擊“√添加”按鈕,處罰信息就保存到了數(shù)據(jù)庫。</p><p>  圖45處罰管理實例演示</p><p>  9.9.6 查詢修改的實例演示</p><p>  單擊“查詢修改”按鈕,出現(xiàn)查詢修改

108、界面,如圖46所示。輸入學(xué)生的學(xué)號,姓名等信息自動從數(shù)據(jù)庫中調(diào)出。如果發(fā)現(xiàn)信息有錯,可以在相應(yīng)的編輯框輸入正確的信息,單擊“√修改”按鈕,成績單效果如圖47所示。</p><p>  圖46查詢修改實例演示</p><p>  圖47打印成績單實例演示</p><p><b>  參考文獻</b></p><p>  [

109、1] 張海藩,《軟件工程導(dǎo)論》,清華大學(xué)出版社,2002</p><p>  [2] 伍俊良,《Delphi 6控件應(yīng)用實例教程》,北京希望電子出版社,2002</p><p>  [3] 盧國俊,《Delphi 6數(shù)據(jù)庫開發(fā)》,電子工業(yè)出版社,2002</p><p>  [4] 邊萌,《Delphi 編程起步》,機械工業(yè)出版社,20

110、02</p><p>  [5] 伍俊良,《Delphi 6課程設(shè)計案例精編》,中國水利水電出版社,2002</p><p>  [6] 丁寶康,《數(shù)據(jù)庫原理》,經(jīng)濟科學(xué)出版社,2000</p><p>  [7] 陸麗娜,《軟件工程》,經(jīng)濟科學(xué)出版社,2000</p><p>  [8] 許杰舟、林偉鵬、林盛雄

溫馨提示

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

評論

0/150

提交評論