畢業(yè)設(shè)計(jì)--基于uml高校學(xué)生學(xué)籍管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)_第1頁
已閱讀1頁,還剩48頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、<p>  基于UML高校學(xué)生學(xué)籍管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)</p><p>  院 系: 計(jì)算機(jī)科學(xué)與軟件系</p><p>  專 業(yè): 計(jì)算機(jī)科學(xué)與技術(shù) </p><p><b>  摘 要</b></p><p><b>  【摘要】</b></p>

2、<p>  隨著科學(xué)技術(shù)的發(fā)展,計(jì)算機(jī)領(lǐng)域不斷取得新的研究成果。計(jì)算機(jī)在代替和延伸腦力勞動(dòng)方面發(fā)揮越來越重要的作用,不僅在工業(yè)方面而且在日常生活中也越來越離不開計(jì)算機(jī)。尤其是在學(xué)校里,要處理大量的學(xué)生數(shù)據(jù)。在數(shù)字化的今天,為了加快學(xué)校學(xué)籍管理必須依靠計(jì)算機(jī),以及使學(xué)校對(duì)學(xué)生數(shù)據(jù)的管理更加簡單、到位,基于上述種種原因,開發(fā)一套學(xué)籍管理系統(tǒng)迫在眉捷,我結(jié)合本次畢業(yè)設(shè)計(jì)的題目開發(fā)了學(xué)籍管理系統(tǒng)。本文是對(duì)基于計(jì)算機(jī)對(duì)學(xué)校里的大量數(shù)據(jù)

3、進(jìn)行加工并處理的研究。  本系統(tǒng)是在管理信息系統(tǒng)的理論和方法指導(dǎo)下、數(shù)據(jù)庫技術(shù)支持下完成的。本文在結(jié)構(gòu)上首先論述了畢業(yè)設(shè)計(jì)選題的背景、目的和意義。然后敘述了開發(fā)平臺(tái)和數(shù)據(jù)庫技術(shù)和各自的優(yōu)點(diǎn),接著用了較多篇幅闡述了系統(tǒng)的需求分析、總體設(shè)計(jì)、實(shí)現(xiàn)以及實(shí)施的任務(wù)、技術(shù)和工具。最終系統(tǒng)能夠完成信息的輸入、輸出,數(shù)據(jù)的修改、查詢和統(tǒng)計(jì)以及打印報(bào)表等功能,使用戶操作起來簡便快捷。</p><p>  【關(guān)鍵詞】

4、軟件工程 關(guān)系數(shù)據(jù)庫管理系統(tǒng) 模糊查詢 DELPHI SQL Server</p><p>  【論文類型】應(yīng)用研究</p><p><b>  Abstract</b></p><p>  【Abstract】</p><p>  Continuously obtain the new research result

5、along with the development, calculator realm of the science technique.Calculator is replacing with extend the mental work aspect to develop more and more important function, not only in the industry aspect but also also

6、more and more can not get away from the calculator in the daily life.Particularly is in the school, and want to handle the student's data of the large quantity.On today of the arithmetic figure , for the sake of quic

7、kly school student s</p><p>  【Key Words】Software Engineering Relational Database Management System Fuzzy Query DELPHI SQL Serve</p><p>  【Type】Applied Research</p><p><b>

8、  目 錄</b></p><p><b>  第1章 緒論1</b></p><p>  1.1 選題的背景1</p><p>  1.2 目的和意義1</p><p>  第2章 平臺(tái)簡介2</p><p>  2.1 開發(fā)平臺(tái)和技術(shù)簡介2</p><

9、;p>  2.1.1 Delphi工具簡介2</p><p>  2.1.2 UML統(tǒng)一建模介紹3</p><p>  2.2 數(shù)據(jù)庫平臺(tái)介紹6</p><p>  2.2.1 SQL Server 數(shù)據(jù)庫簡介6</p><p>  2.2.2 SQL Server 數(shù)據(jù)庫系統(tǒng)特點(diǎn)8</p><p>&

10、lt;b>  2.3 小結(jié)10</b></p><p>  第3章 系統(tǒng)分析11</p><p>  3.1 可行性分析11</p><p>  3.1.1技術(shù)可行性研究11</p><p>  3.1.2經(jīng)濟(jì)可行性研究11</p><p>  3.2 需求分析12</p>

11、<p>  第四章 UML系統(tǒng)建模13</p><p>  4.1學(xué)生學(xué)籍管理信息系統(tǒng)的用例分析13</p><p>  4.2學(xué)生學(xué)籍管理信息系統(tǒng)的域類分析14</p><p>  4.3學(xué)生學(xué)籍管理信息系統(tǒng)的設(shè)計(jì)15</p><p>  第5章 系統(tǒng)詳細(xì)設(shè)計(jì)22</p><p>  5.1數(shù)據(jù)庫

12、分析22</p><p>  5.1.1 E-R圖分析22</p><p>  5.1.2表/字段分析和PowerDesign數(shù)據(jù)庫建模23</p><p>  5.2數(shù)據(jù)庫設(shè)計(jì)23</p><p>  5.2.1創(chuàng)建數(shù)據(jù)庫23</p><p>  5.2.2創(chuàng)建數(shù)據(jù)表24</p><p

13、>  5.3界面設(shè)計(jì)27</p><p>  5.3.1用戶登錄界面設(shè)計(jì)27</p><p>  5.3.2學(xué)生學(xué)籍管理信息系統(tǒng)主界面設(shè)計(jì)27</p><p>  5.3.3院系設(shè)置界面設(shè)計(jì)28</p><p>  5.3.4班級(jí)管理界面設(shè)計(jì)29</p><p>  5.3.5學(xué)生管理界面設(shè)計(jì)30&l

14、t;/p><p>  5.3.6學(xué)生查詢界面設(shè)計(jì)30</p><p>  5.3.7學(xué)籍變更界面設(shè)計(jì)31</p><p>  5.3.8獎(jiǎng)勵(lì)管理界面設(shè)計(jì)32</p><p>  6.3.7處罰管理界面設(shè)計(jì)33</p><p>  第6章 代碼編寫與分析35</p><p>  6.1用戶登

15、錄的代碼實(shí)現(xiàn)35</p><p>  6.2院系設(shè)置的代碼實(shí)現(xiàn)36</p><p>  6.3學(xué)籍變更的代碼實(shí)現(xiàn)37</p><p>  6.4學(xué)生信息查詢界面的代碼實(shí)現(xiàn)39</p><p><b>  6.5小結(jié)40</b></p><p>  第七章 總 結(jié)41</p>

16、<p><b>  致 謝42</b></p><p><b>  參考文獻(xiàn)43</b></p><p><b>  第1章 緒論</b></p><p><b>  1.1 選題的背景</b></p><p>  隨著信息技術(shù)的發(fā)展,

17、計(jì)算機(jī)已被廣泛的用于社會(huì)的各個(gè)領(lǐng)域,成為推動(dòng)社會(huì)發(fā)展的技術(shù)動(dòng)力。而在計(jì)算機(jī)應(yīng)用中,軟件的作用十分突出,軟件已經(jīng)發(fā)展成為信息技術(shù)的核心,主導(dǎo)著信息產(chǎn)品的開發(fā)和信息技術(shù)市場的進(jìn)一步的開拓。軟件產(chǎn)業(yè)已成為社會(huì)信息化進(jìn)程中的一個(gè)戰(zhàn)略性產(chǎn)業(yè)。在軟件技術(shù)的應(yīng)用中,軟件的開發(fā)技術(shù)尤其是應(yīng)用型軟件產(chǎn)品的開發(fā)技術(shù)成了重中之重。不斷開發(fā)適應(yīng)用戶需求、市場需要的新型軟件產(chǎn)品。隨著社會(huì)的發(fā)展,軟件也在不斷的更新?lián)Q代。  大多數(shù)學(xué)校里對(duì)學(xué)生的檔案

18、、成績、入學(xué)、畢業(yè)等的一些繁瑣處理都是通過手工進(jìn)行記載并進(jìn)行處理的,對(duì)學(xué)生數(shù)據(jù)的處理工作量特別大,不僅浪費(fèi)大量的人力物力,而且還很容易出錯(cuò)。如果有這樣一套完整的學(xué)籍管理軟件,只需點(diǎn)擊幾下鼠標(biāo)就可完成所需操作,那樣就會(huì)大大的提高教師的工作效率和管理水平。并能進(jìn)一步提高學(xué)校的工作效率并使學(xué)校實(shí)施規(guī)范化管理。</p><p><b>  1.2 目的和意義</b></p><p

19、>  畢業(yè)設(shè)計(jì)是四年學(xué)習(xí)的總結(jié),同時(shí)也是自己綜合運(yùn)用所學(xué)知識(shí)解決實(shí)際問題的一次鍛煉。學(xué)籍管理系統(tǒng)的主要目的是為了方便學(xué)校對(duì)學(xué)生的信息進(jìn)行錄入、修改、查詢,提高學(xué)校的工作效率。這一系統(tǒng)的開發(fā)成功,解決了手寫速度慢、容易出錯(cuò)的現(xiàn)狀。無論是在學(xué)籍管理、成績管理等方面都可以幫助學(xué)校最迅速最準(zhǔn)確的完成所需的工作。無論是在適用性、靈活性和易操作性方面都顯示出了它的強(qiáng)大功能</p><p><b>  第2章

20、平臺(tái)簡介</b></p><p>  2.1 開發(fā)平臺(tái)和技術(shù)簡介</p><p>  2.1.1 Delphi工具簡介</p><p>  Delphi是著名的Borland(現(xiàn)在已和Inprise合并)公司開發(fā)的可視化軟件開發(fā)工具?!罢嬲某绦騿T用c,聰明的程序員用Delphi”,這句話是對(duì)Delphi最經(jīng)典、最實(shí)在的描述。Delphi被稱為第四代編程

21、語言,它具有簡單、高效、功能強(qiáng)大的特點(diǎn)。和VC相比,Delphi更簡單、更易于掌握,而在功能上卻絲毫不遜色;和VB相比,Delphi則功能更強(qiáng)大、更實(shí)用??梢哉fDelphi同時(shí)兼?zhèn)淞薞C功能強(qiáng)大和VB簡單易學(xué)的特點(diǎn)。它一直是程序員至愛的編程工具。</p><p>  Delphi具有以下的特性:基于窗體和面向?qū)ο蟮姆椒ǎ咚俚木幾g器,強(qiáng)大的數(shù)據(jù)庫支持,與Windows編程緊密結(jié)合,強(qiáng)大而成熟的組件技術(shù)。但最重要的

22、還是Object Pascal語言,它才是一切的根本。 Object Pascal語言是在Pascal語言的基礎(chǔ)上發(fā)展起來的,簡單易學(xué)。</p><p>  Delphi提供了各種開發(fā)工具,包括集成環(huán)境、圖像編輯(Image Editor),以及各種開發(fā)數(shù)據(jù)庫的應(yīng)用程序,如DesktopDataBase Expert等。除此之外,還允許用戶掛接其它的應(yīng)用程序開發(fā)工具,如Borland公司的資源編輯器(Resour

23、se Workshop)。</p><p>  在Delphi眾多的優(yōu)勢當(dāng)中,它在數(shù)據(jù)庫方面的特長顯得尤為突出:適應(yīng)于多種數(shù)據(jù)庫結(jié)構(gòu),從客戶機(jī)/服務(wù)機(jī)模式到多層數(shù)據(jù)結(jié)構(gòu)模式;高效率的數(shù)據(jù)庫管理系統(tǒng)和新一代更先進(jìn)的數(shù)據(jù)庫引擎;最新的數(shù)據(jù)分析手段和提供大量的企業(yè)組件。</p><p>  Delphi發(fā)展至今,從Delphi1、Delphi2到現(xiàn)在的Delphi2009,不斷添加和改進(jìn)各種特性

24、,功能越來越強(qiáng)大。Delphi5添加了對(duì)IDE(集成開發(fā)環(huán)境)的很多改進(jìn)新特性,擴(kuò)展了數(shù)據(jù)庫支持(ADO和InterBase數(shù)據(jù)庫),帶有Internet支持的MIDAS改進(jìn)版,TeamSouse版本控制工具,轉(zhuǎn)換功能,框架概念以及很多的新組件與新特性。</p><p>  Delphi10功能十分完善和強(qiáng)大,本設(shè)計(jì)將以它為基礎(chǔ),利用Delphi的開發(fā)環(huán)境、基本概念、控件的使用、在短時(shí)間內(nèi)建立系統(tǒng)應(yīng)用原型。然后,

25、對(duì)初始原型系統(tǒng)進(jìn)行需求迭代,不斷修正和改進(jìn),直到形成用戶滿意的可行系統(tǒng)。</p><p>  2.1.2 UML統(tǒng)一建模介紹</p><p>  統(tǒng)一建模語言(UML是 Unified Modeling Language的縮寫)是用來對(duì)軟件密集系統(tǒng)進(jìn)行可視化建模的一種語言。UML為面向?qū)ο箝_發(fā)系統(tǒng)的產(chǎn)品進(jìn)行說明、可視化、和編制文檔的一種標(biāo)準(zhǔn)語言。</p><p> 

26、 統(tǒng)一建模語言 (UML)是非專利的第三代建模和規(guī)約語言。 UML是在開發(fā)階段,說明,可視化,構(gòu)建和書寫一個(gè)面向?qū)ο筌浖芗到y(tǒng)的制品的開放方法。UML展現(xiàn)了一系列最佳工程實(shí)踐,這些最佳實(shí)踐在對(duì)大規(guī)模,復(fù)雜系統(tǒng)進(jìn)行建模方面,特別是在軟件架構(gòu)層次已經(jīng)被驗(yàn)證有效。</p><p>  UML是一種定義良好、易于表達(dá)、功能強(qiáng)大且普遍適用的建模語言。它溶入了軟件工程領(lǐng)域的新思想、新方法和新技術(shù)。它的作用域不限于支持面向?qū)?/p>

27、象的分析與設(shè)計(jì),還支持從需求分析開始的軟件開發(fā)的全過程?!?</p><p>  UML是一個(gè)標(biāo)準(zhǔn)的圖形表示法,它不是面向?qū)ο蟮姆治龊驮O(shè)計(jì),也不是一種方法,它僅僅是一組符號(hào)而已。</p><p>  UML是一種定義良好、易于表達(dá)、功能強(qiáng)大且普遍適用的建模語言。它溶入了軟件工程領(lǐng)域的新思想、新方法和新技術(shù)。它的作用域不限于支持面向?qū)ο蟮姆治雠c設(shè)計(jì),還支持從需求分析開始的軟件開發(fā)的全過程。

28、  </p><p>  作為一種建模語言,UML的定義包括UML語義和UML表示法兩個(gè)部分?!?</p><p>  (1) UML語義 描述基于UML的精確元模型定義。元模型為UML的所有元素在語法和語義上提供了簡單、一致、通用的定義性說明,使開發(fā)者能在語義上取得一致,消除了因人而異的最佳表達(dá)方法所造成的影響。此外UML還支持對(duì)元模型的擴(kuò)展定義。 </p><

29、p>  (2) UML表示法 定義UML符號(hào)的表示法,為開發(fā)者或開發(fā)工具使用這些圖形符號(hào)和文本語法為系統(tǒng)建模提供了標(biāo)準(zhǔn)。這些圖形符號(hào)和文字所表達(dá)的是應(yīng)用級(jí)的模型,在語義上它是UML元模型的實(shí)例?!?</p><p>  標(biāo)準(zhǔn)建模語言UML的重要內(nèi)容可以由下列五類圖(共9種圖形)來定義:</p><p>  第一類是用例圖,從用戶角度描述系統(tǒng)功能,并指出各功能的操作者。</p&

30、gt;<p>  第二類是靜態(tài)圖 (Static diagram),包括類圖、對(duì)象圖和包圖。其中類圖描述系統(tǒng)中類的靜態(tài)結(jié)構(gòu)。不僅定義系統(tǒng)中的類,表示類之間的聯(lián)系如關(guān)聯(lián)、依賴、聚合等,也包括類的內(nèi)部結(jié)構(gòu)(類的屬性和操作)。類圖描述的是一種靜態(tài)關(guān)系,在系統(tǒng)的整個(gè)生命周期都是有效的?!?</p><p>  對(duì)象圖是類圖的實(shí)例,幾乎使用與類圖完全相同的標(biāo)識(shí)。他們的不同點(diǎn)在于對(duì)象圖顯示類的多個(gè)對(duì)象實(shí)例,而

31、不是實(shí)際的類。一個(gè)對(duì)象圖是類圖的一個(gè)實(shí)例。由于對(duì)象存在生命周期,因此對(duì)象圖只能在系統(tǒng)某一時(shí)間段存在?!?</p><p>  包由包或類組成,表示包與包之間的關(guān)系。包圖用于描述系統(tǒng)的分層結(jié)構(gòu)。</p><p>  第三類是行為圖(behavīor diagram),描述系統(tǒng)的動(dòng)態(tài)模型和組成對(duì)象間的交互關(guān)系。其中狀態(tài)圖描述類的對(duì)象所有可能的狀態(tài)以及事件發(fā)生時(shí)狀態(tài)的轉(zhuǎn)移條件。通常,狀態(tài)圖是對(duì)

32、類圖的補(bǔ)充。在實(shí)用上并不需要為所有的類畫狀態(tài)圖,僅為那些有多個(gè)狀態(tài)其行為受外界環(huán)境的影響并且發(fā)生改變的類畫狀態(tài)圖。</p><p>  而活動(dòng)圖描述滿足用例要求所要進(jìn)行的活動(dòng)以及活動(dòng)間的約束關(guān)系,有利于識(shí)別并行活動(dòng)。</p><p>  第四類是交互圖(Interactive diagram),描述對(duì)象間的交互關(guān)系。其中順序圖顯示對(duì)象之間的動(dòng)態(tài)合作關(guān)系,它強(qiáng)調(diào)對(duì)象之間消息發(fā)送的順序,同時(shí)顯

33、示對(duì)象之間的交互;合作圖描述對(duì)象間的協(xié)作關(guān)系,合作圖跟順序圖相似,顯示對(duì)象間的動(dòng)態(tài)合作關(guān)系。除顯示信息交換外,合作圖還顯示對(duì)象以及它們之間的關(guān)系。如果強(qiáng)調(diào)時(shí)間和順序,則使用順序圖;如果強(qiáng)調(diào)上下級(jí)關(guān)系,則選擇合作圖。這兩種圖合稱為交互圖。</p><p>  第五類是實(shí)現(xiàn)圖 ( Implementation diagram )。其中構(gòu)件圖描述代碼部件的物理結(jié)構(gòu)及各部件之間的依賴關(guān)系。一個(gè)部件可能是一個(gè)資源代碼部件、

34、一個(gè)二進(jìn)制部件或一個(gè)可執(zhí)行部件。它包含邏輯類或?qū)崿F(xiàn)類的有關(guān)信息。部件圖有助于分析和理解部件之間的相互影響程度?!?</p><p>  配置圖定義系統(tǒng)中軟硬件的物理體系結(jié)構(gòu)。它可以顯示實(shí)際的計(jì)算機(jī)和設(shè)備(用節(jié)點(diǎn)表示)以及它們之間的連接關(guān)系,也可顯示連接的類型及部件之間的依賴性。在節(jié)點(diǎn)內(nèi)部,放置可執(zhí)行部件和對(duì)象以顯示節(jié)點(diǎn)跟可執(zhí)行軟件單元的對(duì)應(yīng)關(guān)系?!?</p><p>  從應(yīng)用的角度看

35、,當(dāng)采用面向?qū)ο蠹夹g(shù)設(shè)計(jì)系統(tǒng)時(shí),首先是描述需求;其次根據(jù)需求建立系統(tǒng)的靜態(tài)模型,以構(gòu)造系統(tǒng)的結(jié)構(gòu);第三步是描述系統(tǒng)的行為。其中在第一步與第二步中所建立的模型都是靜態(tài)的,包括用例圖、類圖(包含包)、對(duì)象圖、組件圖和配置圖等五個(gè)圖形,是標(biāo)準(zhǔn)建模語言UML的靜態(tài)建模機(jī)制。其中第三步中所建立的模型或者可以執(zhí)行,或者表示執(zhí)行時(shí)的時(shí)序狀態(tài)或交互關(guān)系。它包括狀態(tài)圖、活動(dòng)圖、順序圖和合作圖等四個(gè)圖形,是標(biāo)準(zhǔn)建模語言UML的動(dòng)態(tài)建模機(jī)制。因此,標(biāo)準(zhǔn)建模語

36、言UML的主要內(nèi)容也可以歸納為靜態(tài)建模機(jī)制和動(dòng)態(tài)建模機(jī)制兩大類。</p><p>  標(biāo)準(zhǔn)建模語言UML的主要特點(diǎn)可以歸結(jié)為三點(diǎn): </p><p> ?。?) UML統(tǒng)一了Booch、OMT和OOSE等方法中的基本概念?!?</p><p>  (2) UML還吸取了面向?qū)ο蠹夹g(shù)領(lǐng)域中其他流派的長處,其中也包括非OO方法的影響。UML符號(hào)表示考慮了各種方法的

37、圖形表示,刪掉了大量易引起混亂的、多余的和極少使用的符號(hào),也添加了一些新符號(hào)。因此,在UML中匯入了面向?qū)ο箢I(lǐng)域中很多人的思想。這些思想并不是UML的開發(fā)者們發(fā)明的,而是開發(fā)者們依據(jù)最優(yōu)秀的OO方法和豐富的計(jì)算機(jī)科學(xué)實(shí)踐經(jīng)驗(yàn)綜合提煉而成的?!?</p><p> ?。?)UML在演變過程中還提出了一些新的概念。在UML標(biāo)準(zhǔn)中新加了模板(Stereotypes)、職責(zé)(Responsibilities)、擴(kuò)展機(jī)制

38、(Extensibility mechanisms)、線程(Threads)、過程(Processes)、分布式(Distribution)、并發(fā)(Concurrency)、模式(Patterns)、合作(Collaborations)、活動(dòng)圖(Activity diagram)等新概念,并清晰地區(qū)分類型(Type)、類(Class)和實(shí)例(Instance)、細(xì)化(Refinement)、接口(Interfaces)和組件(Compo

39、nents)等概念。</p><p>  因此可以認(rèn)為,UML是一種先進(jìn)實(shí)用的標(biāo)準(zhǔn)建模語言,但其中某些概念尚待實(shí)踐來驗(yàn)證,UML也必然存在一個(gè)進(jìn)化過程。</p><p>  標(biāo)準(zhǔn)建模語言UML的應(yīng)用領(lǐng)域 </p><p>  UML的目標(biāo)是以面向?qū)ο髨D的方式來描述任何類型的系統(tǒng),具有很寬的應(yīng)用領(lǐng)域。其中最常用的是建立軟件系統(tǒng)的模型,但它同樣可以用于描述非軟件領(lǐng)域

40、的系統(tǒng),如機(jī)械系統(tǒng)、企業(yè)機(jī)構(gòu)或業(yè)務(wù)過程,以及處理復(fù)雜數(shù)據(jù)的信息系統(tǒng)、具有實(shí)時(shí)要求的工業(yè)系統(tǒng)或工業(yè)過程等。總之,UML是一個(gè)通用的標(biāo)準(zhǔn)建模語言,可以對(duì)任何具有靜態(tài)結(jié)構(gòu)和動(dòng)態(tài)行為的系統(tǒng)進(jìn)行建模。 </p><p>  此外,UML適用于系統(tǒng)開發(fā)過程中從需求規(guī)格描述到系統(tǒng)完成后測試的不同階段。在需求分析階段,可以用用例來捕獲用戶需求。通過用例建模,描述對(duì)系統(tǒng)感興趣的外部角色及其對(duì)系統(tǒng)(用例)的功能要求。分析階段主要關(guān)

41、心問題域中的主要概念(如抽象、類和對(duì)象等)和機(jī)制,需要識(shí)別這些類以及它們相互間的關(guān)系,并用UML類圖來描述。為實(shí)現(xiàn)用例,類之間需要協(xié)作,這可以用UML動(dòng)態(tài)模型來描述。在分析階段,只對(duì)問題域的對(duì)象(現(xiàn)實(shí)世界的概念)建模,而不考慮定義軟件系統(tǒng)中技術(shù)細(xì)節(jié)的類(如處理用戶接口、數(shù)據(jù)庫、通訊和并行性等問題的類)。這些技術(shù)細(xì)節(jié)將在設(shè)計(jì)階段引入,因此設(shè)計(jì)階段為構(gòu)造階段提供更詳細(xì)的規(guī)格說明?!?</p><p>  編程(構(gòu)造

42、)是一個(gè)獨(dú)立的階段,其任務(wù)是用面向?qū)ο缶幊陶Z言將來自設(shè)計(jì)階段的類轉(zhuǎn)換成實(shí)際的代碼。在用UML建立分析和設(shè)計(jì)模型時(shí),應(yīng)盡量避免考慮把模型轉(zhuǎn)換成某種特定的編程語言。因?yàn)樵谠缙陔A段,模型僅僅是理解和分析系統(tǒng)結(jié)構(gòu)的工具,過早考慮編碼問題十分不利于建立簡單正確的模型。</p><p>  UML模型還可作為測試階段的依據(jù)。系統(tǒng)通常需要經(jīng)過單元測試、集成測試、系統(tǒng)測試和驗(yàn)收測試。不同的測試小組使用不同的UML圖作為測試依據(jù):

43、單元測試使用類圖和類規(guī)格說明;集成測試使用部件圖和合作圖;系統(tǒng)測試使用用例圖來驗(yàn)證系統(tǒng)的行為;驗(yàn)收測試由用戶進(jìn)行,以驗(yàn)證系統(tǒng)測試的結(jié)果是否滿足在分析階段確定的需求?!?</p><p>  總之,標(biāo)準(zhǔn)建模語言UML適用于以面向?qū)ο蠹夹g(shù)來描述任何類型的系統(tǒng),而且適用于系統(tǒng)開發(fā)的不同階段,從需求規(guī)格描述直至系統(tǒng)完成后的測試和維護(hù)。</p><p>  2.2 數(shù)據(jù)庫平臺(tái)介紹</p>

44、;<p>  2.2.1 SQL Server 數(shù)據(jù)庫簡介</p><p>  SQL(Structured Query Language,結(jié)構(gòu)查詢語言)是一個(gè)功能強(qiáng)大的數(shù)據(jù)庫語言。SQL通常使用于數(shù)據(jù)庫的通訊。ANSI(美國國家標(biāo)準(zhǔn)學(xué)會(huì))聲稱,SQL是關(guān)系數(shù)據(jù)庫管理系統(tǒng)的標(biāo)準(zhǔn)語言。SQL語句通常用于完成一些數(shù)據(jù)庫的操作任務(wù),比如在數(shù)據(jù)庫中更新數(shù)據(jù),或者從數(shù)據(jù)庫中檢索數(shù)據(jù)。使用SQL的常見關(guān)系數(shù)據(jù)庫

45、管理系統(tǒng)有:Oracle、 Sybase、 Microsoft SQL Server、 Access、 Ingres等等。雖然絕大多數(shù)的數(shù)據(jù)庫系統(tǒng)使用SQL,但是它們同樣有它們自立另外的專有擴(kuò)展功能用于它們的系統(tǒng)。但是,標(biāo)準(zhǔn)的SQL命令,比如"Select"、 "Insert"、 "Update"、 "Delete"、 "Create"和

46、 "Drop"常常被用于完成絕大多數(shù)數(shù)據(jù)庫的操作。MS SQL Server 就是用的Transact- SQL。</p><p>  SQL語言有著非常突出的優(yōu)點(diǎn),主要是:</p><p><b>  1. 非過程化語言</b></p><p><b>  2 . 統(tǒng)一的語言</b></p>

47、;<p>  3. 是所有關(guān)系數(shù)據(jù)庫的公共語言</p><p>  非過程化語言:SQL是一個(gè)非過程化的語言,因?yàn)樗淮翁幚硪粋€(gè)記錄,對(duì)數(shù)據(jù)提供自動(dòng)導(dǎo)航。SQL允許用戶在高層的數(shù)據(jù)結(jié)構(gòu)上工作,而不對(duì)單個(gè)記錄進(jìn)行操作,可操作記錄集,所有SQL 語句接受集合作為輸入,返回集合作為輸出。SQL的集合特性允許一條SQL語句的結(jié)果作為另一條SQL語句的輸入。</p><p>  SQL

48、不要求用戶指定對(duì)數(shù)據(jù)的存放方法, 這種特性使用戶更易集中精力于要得到的結(jié)果;所有SQL語句使用查詢優(yōu)化器,它是RDBMS的一部分,由它決定對(duì)指定數(shù)據(jù)存取的最快速度的手段,查詢優(yōu)化器知道存在什么索引,在哪兒使用索引合適,而用戶則從不需要知道表是否有索引、有什么類型的索引。</p><p>  統(tǒng)一的語言:SQL可用于所有用戶的DB活動(dòng)模型,包括系統(tǒng)管理員、數(shù)據(jù)庫管理員、 應(yīng)用程序員、決策支持系統(tǒng)人員及許多其它類型的

49、終端用戶。</p><p>  SQL為許多任務(wù)提供了命令,其中包括:</p><p><b>  1.查詢數(shù)據(jù)</b></p><p>  2.在表中插入、修改和刪除記錄</p><p>  3.建立、修改和刪除數(shù)據(jù)對(duì)象 </p><p>  4.控制對(duì)數(shù)據(jù)和數(shù)據(jù)對(duì)象的存取</p>

50、<p>  5.保證數(shù)據(jù)庫一致性和完整性</p><p>  以前的數(shù)據(jù)庫管理系統(tǒng)為上述各類操作提供單獨(dú)的語言,而SQL 將全部任務(wù)統(tǒng)一在一種語言中。</p><p>  所有關(guān)系數(shù)據(jù)庫的公共語言:由于所有主要的關(guān)系數(shù)據(jù)庫管理系統(tǒng)都支持SQL語言,用戶可將使用SQL的技能從一個(gè)RDBMS(關(guān)系數(shù)據(jù)庫管理系統(tǒng))轉(zhuǎn)到另一個(gè),所有用SQL編寫的程序都是可以移植的。</p>

51、<p>  一個(gè)成功的信息管理系統(tǒng),是建立在許多條件之上的,而數(shù)據(jù)庫是其中一個(gè)非常重要的條件和關(guān)鍵技術(shù)。</p><p>  信息管理系統(tǒng)所涉及的數(shù)據(jù)庫設(shè)計(jì)分五個(gè)步驟:數(shù)據(jù)庫需求分析、概念設(shè)計(jì)、邏輯設(shè)計(jì)、物理設(shè)計(jì)與加載測試。</p><p> ?。?) 數(shù)據(jù)庫需求分析的任務(wù)是將業(yè)務(wù)管理單證流化為數(shù)據(jù)流,劃分主題之間的邊界,繪制出DFD圖,并完成相應(yīng)的數(shù)據(jù)字典。</p&g

52、t;<p> ?。?) 概念設(shè)計(jì)的任務(wù)是從DFD出發(fā),繪制出本主題的實(shí)體-關(guān)系圖,并列出各個(gè)實(shí)體與關(guān)系的綱要表。</p><p>  (3) 邏輯設(shè)計(jì)的任務(wù)是從E-R圖與對(duì)應(yīng)的綱要表出發(fā),確定各個(gè)實(shí)體及關(guān)系的表名屬性。</p><p> ?。?) 物理設(shè)計(jì)的任務(wù)是確定所有屬性的類型、寬度與取值范圍,設(shè)計(jì)出基本表的主鍵,將所有的表名與字段名英文化(現(xiàn)在很多軟件能支持中文字段,如

53、MS SQL Server,我就是用的中文字段名),實(shí)現(xiàn)物理建庫,完成數(shù)據(jù)庫物理設(shè)計(jì)字典。</p><p> ?。?) 加載測試工作貫穿于程序測試工作的全過程,整個(gè)錄入、修改、查詢、處理工作均可視為對(duì)數(shù)據(jù)庫的加載測試工作。</p><p>  要設(shè)計(jì)出一個(gè)好的信息管理系統(tǒng)數(shù)據(jù)庫,除滿足系統(tǒng)所要求的功能外,還必須遵守下列原則:</p><p>  1 基本表的個(gè)數(shù)越少

54、越好。</p><p>  2 主鍵的個(gè)數(shù)越少越好。鍵是表間連接的工具,主鍵越少,表間的連接就越簡單。</p><p>  3 字段的個(gè)數(shù)越少越好。</p><p>  4 所有基本表的設(shè)計(jì)均應(yīng)盡量符合第三范式。</p><p>  2.2.2 SQL Server 數(shù)據(jù)庫系統(tǒng)特點(diǎn)</p><p>  SQL Serv

55、er 2000 系統(tǒng)之間之所以成為目前流行的大型商用數(shù)據(jù)庫系統(tǒng),有著其深刻的內(nèi)在因素,這與它鮮明的特點(diǎn)是分不開的: 1.與Internet 的高度集成  SQL Server 2000與其它Microsoft Back Office 產(chǎn)品緊密集成,在安全 事件瀏覽、Windows NT 服務(wù)程序、性能監(jiān)視器、多處理器支持、索引服務(wù)器等方面充分利用了它們的長處,形成了自己獨(dú)特的優(yōu)勢。  SQL S

56、erver 2000 數(shù)據(jù)庫引擎提供完整的XML 支持。它還具有構(gòu)成最大的Web站點(diǎn)的資料存儲(chǔ)組件所需的可伸縮性、可用性和安全功能。SQL Server 2000程序設(shè)計(jì)模型與Windows DNA 構(gòu)架集成,用以開發(fā)Web 應(yīng)用程序,并且SQL Server 2000 支持English Query 和Microsoft 搜索服務(wù)等功能,在Web 應(yīng)用程序中包含了用戶友好的查詢和強(qiáng)大的搜索功能。  SQL Server

57、 2000 與其它產(chǎn)品共同構(gòu)成了可靠安全的Internet和Intranet 系統(tǒng)的數(shù)據(jù)存儲(chǔ)。例如:SQL Server 2000 與</p><p>  2.3 小結(jié)  本章主要介紹畢業(yè)設(shè)計(jì)所需要了工具,前臺(tái)用DELPHI,后臺(tái)數(shù)據(jù)庫是SQL Server 2000。簡單講述了DELPHI和SQL Server 2000的發(fā)展及特點(diǎn)。</p><p><b>  

58、第3章 系統(tǒng)分析</b></p><p><b>  3.1 可行性分析</b></p><p>  3.1.1技術(shù)可行性研究</p><p>  本系統(tǒng)采用的工具軟件是Delphi 7 ,Delphi 7工具軟件是 borland公司開發(fā)的分布式數(shù)據(jù)庫應(yīng)用程序的前端開發(fā)工具,它以功能強(qiáng)大、使用靈活的數(shù)據(jù)窗口、面向?qū)ο蟮拈_發(fā)能力等優(yōu)

59、勢在數(shù)據(jù)庫應(yīng)用程序開發(fā)領(lǐng)域占據(jù)了領(lǐng)先的位置。</p><p>  Delphi 7 是該公司推出的較新版本,該版本在開發(fā)環(huán)境的集成、對(duì)的支持、主件的開發(fā)等方面比早期版本增加了許多新的功能,對(duì)以前的功能也有了不同程度的改進(jìn)。</p><p>  通常人們把Delphi 7作為一種開發(fā)工具,實(shí)際上它比其他工具功能強(qiáng)得多,它是一個(gè)強(qiáng)有力的開發(fā)環(huán)境。開發(fā)人員不僅能利用它來開發(fā)各種具有友好界面的應(yīng)用

60、程序,還可以通過Delphi 7修改數(shù)據(jù)庫,400多個(gè)預(yù)定義的內(nèi)置函數(shù)為開發(fā)適應(yīng)各種需要的應(yīng)用程序提供了極大的方便。</p><p>  Delphi 7正在成為客戶/服務(wù)器應(yīng)用程序開發(fā)的標(biāo)準(zhǔn)。與其他客戶/服務(wù)器開發(fā)環(huán)境相比,Delphi 7可以使開發(fā)人員的工作更快、成本更低、質(zhì)量更高、功能更強(qiáng)。Delphi 7為應(yīng)用開發(fā)提供了全面綜合的支持,可以概括為如 下幾點(diǎn):</p><p>&

61、lt;b>  事件驅(qū)動(dòng)的應(yīng)用程序</b></p><p>  功能強(qiáng)大的編程語言與函數(shù)</p><p><b>  面向?qū)ο蟮木幊?lt;/b></p><p><b>  跨平臺(tái)開發(fā)</b></p><p>  開放的數(shù)據(jù)庫連接系統(tǒng)</p><p>  3.1.

62、2經(jīng)濟(jì)可行性研究</p><p>  經(jīng)過考察比較,引入了學(xué)籍的計(jì)算機(jī)化管理,可使整體計(jì)算機(jī)應(yīng)用水平的提高,方便學(xué)工人員查詢、記錄操作,解決管理中存在的問題。它能使學(xué)工工作人員從繁重的工作中解脫出來,大大減輕了工作量,減少人為的工作失誤,全面提高學(xué)工的管理效率及服務(wù)質(zhì)量,從而使學(xué)工管理水平和業(yè)務(wù)水平躍上一個(gè)新的臺(tái)階。</p><p><b>  3.2 需求分析</b>

63、;</p><p>  高等院校學(xué)籍管理涉及院系信息、班級(jí)信息、任課教師信息、學(xué)生信息、學(xué)籍變更信息、學(xué)生獎(jiǎng)懲信息、課程信息以及選課信息和成績等多種數(shù)據(jù) 信息。</p><p>  學(xué)籍管理用戶包括系統(tǒng)管理員、教師和學(xué)生。系統(tǒng)管理員負(fù)責(zé)日常的學(xué)籍管理工作,如各種基本信息的錄入、修改、刪除等操作。教師使用該系統(tǒng)可完成教學(xué)班信息查詢和成績管理。學(xué)生使用該系統(tǒng)主要完成選課和成績查詢等操作

64、。</p><p>  經(jīng)過調(diào)研與分析,高等院校學(xué)生學(xué)籍管理系統(tǒng)主要應(yīng)具有以下功能。</p><p> ?。?)院系信息管理。院系信息管理包括院系信息數(shù)據(jù)的錄入、修改與刪除等功能。</p><p> ?。?)班級(jí)信息管理。班級(jí)信息管理包括班級(jí)信息的錄入、修改與刪除等功能。</p><p> ?。?)學(xué)生信息管理。學(xué)生信息管理包括學(xué)生信息的錄入

65、、修改與刪除等功能。</p><p>  (4)學(xué)籍變更信息管理。學(xué)籍變更信息管理包括學(xué)籍變更信息的錄入、修改與刪除等功能。</p><p> ?。?)學(xué)生獎(jiǎng)懲信息管理。學(xué)生獎(jiǎng)懲信息管理包括學(xué)生獎(jiǎng)懲信息的錄入、修改與刪除等功能。</p><p>  (6)數(shù)據(jù)查詢。數(shù)據(jù)查詢包括教學(xué)班學(xué)生信息的查詢和學(xué)生成績查詢等功能。</p><p>  第

66、四章 UML系統(tǒng)建模</p><p>  完成需求分析后,就需要對(duì)系統(tǒng)進(jìn)行UML建模。UML建模是對(duì)需求分析結(jié)果的模型建立過程。下面進(jìn)行學(xué)生學(xué)籍管理信息系統(tǒng)的UML建模過程。</p><p>  4.1學(xué)生學(xué)籍管理信息系統(tǒng)的用例分析</p><p>  在上一節(jié)需求分析中列出了學(xué)生學(xué)籍管理信息系統(tǒng)的全部用例:新生信息、學(xué)生成績、學(xué)籍變更、學(xué)生獎(jiǎng)勵(lì)、學(xué)生處罰、學(xué)生信息

67、查詢修改。這里,使用權(quán)用Rose軟件進(jìn)行UML建模,其用例如圖1所示。</p><p>  圖1學(xué)生學(xué)籍管理信息系統(tǒng)用例圖</p><p>  該用例圖標(biāo)記了所有的學(xué)生學(xué)籍學(xué)籍管理住處系統(tǒng)的用例,從中可以得知,學(xué)生管理信息系統(tǒng)的角色可以劃分為兩類。</p><p>  ·學(xué)校管理人員:用例包括學(xué)生管理信息系統(tǒng)的所有用例。</p><p&

68、gt;  ·學(xué)生:用例只有學(xué)生信息查詢修改。</p><p>  要注意的是,學(xué)校管理人員具有查詢和修改所有數(shù)據(jù)的權(quán)限,處于高權(quán)限位置,而學(xué)生只有修改個(gè)有基本信息、查詢獎(jiǎng)懲情況、查詢學(xué)籍變更情況和打印成績單的權(quán)限,處于低權(quán)限位置。</p><p>  4.2學(xué)生學(xué)籍管理信息系統(tǒng)的域類分析</p><p>  UML建模的第二步就是域類分析。實(shí)際開發(fā)學(xué)生學(xué)籍

69、管理信息系統(tǒng)時(shí),域類分析是建立在用例分析基礎(chǔ)上的。要了解系統(tǒng)要處理的概念,最好將學(xué)校的管理人員組織起來開個(gè)討論會(huì),詳細(xì)談?wù)摵土信e所需要包含水量的用例,了解概念和概念之間的關(guān)系。</p><p>  學(xué)生血跡管理信息系統(tǒng)中的域主要包括:學(xué)生(Student)、成績(Score)、學(xué)籍變更(Change)、獎(jiǎng)勵(lì)(Encourage)、處罰(Punish)??梢栽陬悎D中將上面這些域以及它們之間的關(guān)系表示出來,如圖2所示

70、。</p><p>  圖2學(xué)生學(xué)籍管理信息系統(tǒng)域草圖</p><p>  需要說明的是,這里的域類還是處于“草圖”狀態(tài),定義的操作和屬性不是最后的片本,只是 在現(xiàn)階段看來這些操作和屬性是比較合適的,有些操作獎(jiǎng)在時(shí)序圖的草圖中定義,而不晨用例哪定義。</p><p>  有些類可以用UML狀態(tài)圖來顯示類的對(duì)象的不同狀態(tài)以及改變狀態(tài)的事件。在本系統(tǒng)中有狀態(tài)圖的類是學(xué)生

71、,該類的狀態(tài)圖將在后面的內(nèi)容中介紹。</p><p>  為了描述域類的動(dòng)態(tài)行為,可以使用權(quán)UML的時(shí)序圖、協(xié)作圖或者活動(dòng)圖來描述。本文選用時(shí)序圖。時(shí)序圖的基礎(chǔ)是用例。在時(shí)序圖中要說明域類是如何協(xié)作以操作該系統(tǒng)中的用例。當(dāng)然,在建立時(shí)序圖時(shí),將會(huì)發(fā)現(xiàn)新的操作,并將其加入類中,這將在后面看到所建立的時(shí)序圖模型。用時(shí)序圖建模時(shí),需要窗口或?qū)υ捒蜃鳛榻巧缑?。顯然,這里需要操作界面的有基本信息、獎(jiǎng)勵(lì)、處罰、學(xué)籍變更、修

72、改查詢等,此外維護(hù)也需要一個(gè)操作界面。</p><p>  4.3學(xué)生學(xué)籍管理信息系統(tǒng)的設(shè)計(jì)</p><p>  在設(shè)計(jì)階段,首先要設(shè)計(jì)類的狀態(tài)的圖。類的狀態(tài)圖說明了可能的狀態(tài)以及需要被處理的過渡期,使用狀態(tài)圖可以揭示單個(gè)對(duì)象在整個(gè)系統(tǒng)中的變化細(xì)兇,對(duì)了解和實(shí)現(xiàn)關(guān)鍵類有較大的幫助。</p><p>  不是所有的類都有狀態(tài)圖,在本系統(tǒng)中,有狀態(tài)圖的類是學(xué)生。<

73、/p><p>  學(xué)生的狀態(tài)圖如圖3所示。</p><p><b>  圖3學(xué)生的狀態(tài)圖</b></p><p>  設(shè)計(jì)階段的最后一步是設(shè)計(jì)UML模型,也就是將前面設(shè)計(jì)的模型進(jìn)竽擴(kuò)展和細(xì)化。下面給出各個(gè)用例的時(shí)序圖。設(shè)計(jì)的目的是產(chǎn)生一個(gè)可以使用的解決方案,并且可以容易地將方案轉(zhuǎn)換成程序代碼。</p><p>  學(xué)生的時(shí)序

74、如圖4所示</p><p><b>  圖4學(xué)生時(shí)序圖</b></p><p>  學(xué)籍變更的時(shí)序如圖5所示。</p><p><b>  圖5學(xué)籍變更時(shí)序圖</b></p><p>  獎(jiǎng)勵(lì)的時(shí)序如圖6所示。</p><p><b>  圖6獎(jiǎng)勵(lì)時(shí)序圖</b

75、></p><p>  處罰的時(shí)序如圖7所示。</p><p><b>  圖7處罰時(shí)序圖</b></p><p>  時(shí)序圖設(shè)計(jì)完成后,開始進(jìn)行學(xué)生管理信息系統(tǒng)的架構(gòu)設(shè)計(jì)和細(xì)節(jié)設(shè)計(jì)。在架構(gòu)設(shè)計(jì)中將定義包(子系統(tǒng))、包間的相關(guān)性和基本的通信機(jī)制。</p><p>  設(shè)計(jì)架構(gòu)時(shí),應(yīng)該將應(yīng)用邏輯和技術(shù)邏輯分割。應(yīng)用邏

76、輯是需要編碼設(shè)計(jì)的,而技術(shù)邏輯,主要包括用戶界面、數(shù)據(jù)庫或者通信一般是已經(jīng)有的。學(xué)生管理信息系統(tǒng)中的包(或者為子系統(tǒng)、層)有如下幾個(gè),如圖8所示。</p><p><b>  圖8包和包間關(guān)系</b></p><p>  ·用戶界面包(User Interface Package):為通用用戶界面類,調(diào)用業(yè)務(wù)對(duì)象包中的操作檢索和插入數(shù)據(jù),可以簡單地把它們看成

77、將來用戶要操作的界面。</p><p>  ·業(yè)務(wù)對(duì)象包(Business Object Package):業(yè)務(wù)對(duì)象包包含上面設(shè)計(jì)的分析模型的域類。業(yè)務(wù)對(duì)象包同數(shù)據(jù)庫包協(xié)同完成任務(wù)。</p><p>  ·數(shù)據(jù)庫包(Database Package):數(shù)據(jù)庫包向業(yè)務(wù)對(duì)象數(shù)據(jù)包提供服務(wù)。</p><p>  ·應(yīng)用包(Utility Pa

78、ckage):應(yīng)用包向其他包提供服務(wù)。</p><p>  至此,UML系統(tǒng)建模完成</p><p>  第5章 系統(tǒng)詳細(xì)設(shè)計(jì)</p><p><b>  5.1數(shù)據(jù)庫分析</b></p><p>  在開發(fā)學(xué)生學(xué)籍管理信息系統(tǒng)時(shí),可以先進(jìn)行E-R圖分析,然后對(duì)表和字段進(jìn)行分析,最后進(jìn)行數(shù)據(jù)庫建模。</p>

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

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

81、和PowerDesign數(shù)據(jù)庫建模</p><p>  表/字段分析是建立在實(shí)體關(guān)系圖基礎(chǔ)上。對(duì)表和字段分析后就可以建立數(shù)據(jù)庫模型了。以圖10所示的學(xué)生學(xué)籍管理信息系統(tǒng)的實(shí)體關(guān)系圖為基礎(chǔ),可設(shè)計(jì)表和字段,然后建立數(shù)據(jù)庫模型。</p><p><b>  5.2數(shù)據(jù)庫設(shè)計(jì)</b></p><p>  數(shù)據(jù)庫設(shè)計(jì)與應(yīng)用等程序設(shè)計(jì)是分離的,數(shù)據(jù)庫的設(shè)

82、計(jì)非常重要。有了數(shù)據(jù)庫模型,數(shù)據(jù)庫的設(shè)計(jì)就簡單多了。在學(xué)生管理信息系統(tǒng)中,首先要?jiǎng)?chuàng)建學(xué)生管理信息系統(tǒng)數(shù)據(jù)庫,然后在數(shù)據(jù)庫中創(chuàng)建需要的表和字段。下面分別講述本系統(tǒng)中數(shù)據(jù)庫的設(shè)計(jì)。本例采用Access2000數(shù)據(jù)庫系統(tǒng)來進(jìn)行數(shù)據(jù)庫的設(shè)計(jì)。</p><p>  5.2.1創(chuàng)建數(shù)據(jù)庫</p><p>  下面給出在SQL Server 2000中創(chuàng)建數(shù)據(jù)庫的過程。</p><p

83、>  運(yùn)行SQL Server 2000應(yīng)用程序,打開“企業(yè)管理器”,右擊“數(shù)據(jù)庫”,彈出新建數(shù)據(jù)庫對(duì)話框,指定數(shù)據(jù)庫文件名(本例為Stu)確定后即完成數(shù)據(jù)庫的創(chuàng)建。</p><p>  5.2.2創(chuàng)建數(shù)據(jù)表 </p><p>  學(xué)籍管理系統(tǒng)數(shù)據(jù)庫各數(shù)據(jù)表的結(jié)構(gòu)如下。</p><p> ?。?)student表(學(xué)生信息表)如表1-1所示。<

84、;/p><p>  表1-1 student表(學(xué)生信息表)</p><p>  (2)department表(院系信息表)如表1-2所示。</p><p>  表1-2 department表(院系信息表)</p><p>  (3)user表(用戶信息表)如表1-3所示。</p><p>  表1-3 user表

85、(用戶信息表)</p><p> ?。?)class表(班級(jí)信息表)如表1-4所示。</p><p>  表1-4 class表(班級(jí)信息表)</p><p> ?。?)change表(學(xué)籍變更信息表)如表1-5所示。</p><p>  表1-5 change表(學(xué)籍變更信息表) </p><p>

86、 ?。?)reward表(獎(jiǎng)勵(lì)記錄信息表)如表1-6所示。</p><p>  表1-6 reward表(獎(jiǎng)勵(lì)記錄信息表)</p><p> ?。?)punish表(處罰記錄信息表)如表1-7所示。</p><p>  表1-7 punish表(處罰記錄信息表)</p><p><b>  5.3界面設(shè)計(jì)</b>&l

87、t;/p><p>  以上內(nèi)容完成了數(shù)據(jù)庫的后臺(tái)工作,建立起了能夠保障系統(tǒng)順利、正確運(yùn)行的后臺(tái)。界面設(shè)計(jì)工作在進(jìn)行系統(tǒng)開發(fā)的時(shí)候是必不可少,也是十分重要的。下面就對(duì)學(xué)生學(xué)籍管理信息系統(tǒng)的界面設(shè)計(jì)。</p><p>  5.3.1用戶登錄界面設(shè)計(jì)</p><p>  利用用戶登錄成功能實(shí)現(xiàn)對(duì)用戶操作權(quán)限的限制。用戶必須輸入正確的密碼才能進(jìn)入下一界面,如果用戶的密碼輸入錯(cuò)誤

88、,應(yīng)用程序會(huì)提示錯(cuò)誤信息。用戶如果連續(xù)3次輸入錯(cuò)誤,應(yīng)用程序會(huì)強(qiáng)迫使用者退出并終止應(yīng)用程序的運(yùn)行,圖11所示是用戶登錄界面窗體。</p><p>  圖11用戶登錄界面窗體 </p><p>  5.3.2學(xué)生學(xué)籍管理信息系統(tǒng)主界面設(shè)計(jì)</p><p>  學(xué)生學(xué)籍管理信息系統(tǒng)主界面主要實(shí)現(xiàn)院系設(shè)置、班級(jí)管理、新生信息錄入、學(xué)籍變更、處罰管理、獎(jiǎng)勵(lì)管理和查詢修改

89、的功能。選擇該界面中工具欄中的不同按鈕,就會(huì)進(jìn)入實(shí)現(xiàn)不同功能的窗體。圖12是學(xué)籍管理系統(tǒng)主界面窗體。</p><p>  圖12學(xué)生學(xué)籍管理信息系統(tǒng)主界面窗體</p><p>  5.3.3院系設(shè)置界面設(shè)計(jì)</p><p>  院系設(shè)置界面主要實(shí)現(xiàn)學(xué)校院系的添加、刪除、查詢功能,包括院系號(hào),院系名,負(fù)責(zé)人,聯(lián)系電話和說明等信息,圖13是院系設(shè)置的界面窗體。</

90、p><p>  圖13是院系設(shè)置的界面窗體</p><p>  5.3.4班級(jí)管理界面設(shè)計(jì)</p><p>  班級(jí)管理界面主要實(shí)現(xiàn)學(xué)校班級(jí)的添加、刪除、查詢功能,包括班級(jí)號(hào),班級(jí)名,所屬院系,入學(xué)時(shí)間,班主任,聯(lián)系電話和說明等信息,圖14是班級(jí)管理的界面窗體。</p><p>  圖14是班級(jí)管理的界面窗體。</p><p&

91、gt;  5.3.5學(xué)生管理界面設(shè)計(jì)</p><p>  學(xué)生管理界面主要實(shí)現(xiàn)學(xué)生信息的添加功能,包括學(xué)號(hào)、性別、出生日期、籍貫、姓名、班級(jí)、所屬院系等信息的添加,圖15是學(xué)生管理界面窗體。</p><p>  圖15是學(xué)生管理界面窗體</p><p>  5.3.6學(xué)生查詢界面設(shè)計(jì)</p><p>  學(xué)生查詢界面主要實(shí)現(xiàn)以學(xué)號(hào)查詢學(xué)生信息

92、的功能,包括學(xué)號(hào)、性別、出生日期、姓名、班級(jí)、學(xué)籍變更、獎(jiǎng)勵(lì)和處罰等信息的查詢,圖16是學(xué)生管理界面窗體。</p><p>  圖16是學(xué)生管理界面窗體。</p><p>  5.3.7學(xué)籍變更界面設(shè)計(jì)</p><p>  學(xué)籍變更界面是實(shí)現(xiàn)學(xué)生學(xué)籍變更的功能,學(xué)籍變更有休學(xué)、轉(zhuǎn)系、結(jié)業(yè)、復(fù)學(xué)、轉(zhuǎn)學(xué)、畢業(yè)六種情況,圖17是學(xué)籍變更界面窗體。</p>&

93、lt;p>  圖17學(xué)籍變更界面窗體</p><p>  5.3.8獎(jiǎng)勵(lì)管理界面設(shè)計(jì)</p><p>  當(dāng)學(xué)生在校表現(xiàn)優(yōu)秀,學(xué)校應(yīng)該獎(jiǎng)勵(lì)該學(xué)生,以鼓勵(lì)大家的學(xué)習(xí)熱情。獎(jiǎng)勵(lì)管理界面用于實(shí)現(xiàn)學(xué)生獎(jiǎng)勵(lì)的功能。相應(yīng)的獎(jiǎng)項(xiàng)有國家級(jí)、省級(jí)和校級(jí)分別三個(gè)級(jí)別的獎(jiǎng)項(xiàng)等,用戶可以根據(jù)實(shí)際情況進(jìn)行設(shè)計(jì)。圖18是獎(jiǎng)勵(lì)管理界面窗體。</p><p>  圖18獎(jiǎng)勵(lì)管理界面窗體<

94、;/p><p>  6.3.7處罰管理界面設(shè)計(jì)</p><p>  當(dāng)學(xué)生在校的表現(xiàn)差,學(xué)校應(yīng)該處罰該學(xué)生。處罰管理界面就是實(shí)現(xiàn)學(xué)生處罰的功能。相應(yīng)的處罰項(xiàng)有警告、記過、開除等,用戶可以根據(jù)實(shí)際情況進(jìn)行設(shè)計(jì)。圖19是處罰管理界面窗體。</p><p>  圖19處罰管理界面窗體</p><p>  第6章 代碼編寫與分析</p>&

95、lt;p>  上一章主要介紹了界面的設(shè)計(jì),完成了界面的基本設(shè)計(jì),而個(gè)系統(tǒng)要運(yùn)行,就少不了程序代碼了。在這一章主要對(duì)程序的核心代碼進(jìn)行分析。</p><p>  6.1用戶登錄的代碼實(shí)現(xiàn)</p><p>  學(xué)籍管理信息系統(tǒng)啟動(dòng)時(shí),首先出現(xiàn)的是系統(tǒng)登入界面。登入界面中有用戶號(hào)和用戶密碼輸入框,確定按鈕功能是從數(shù)據(jù)庫中獲取用戶號(hào)和密碼,和用戶輸入的密碼比較,如果密碼正確;如果不正確,則提

96、示用戶重輸或退出:重輸3次以上,系統(tǒng)自動(dòng)退出。確定按鈕部分代碼如下:</p><p>  TheEdit.Text:=trim(theedit.Text);</p><p>  TheEdit.Text:=stringReplace(theedit.Text,'''','',[rfreplaceall]);</p><p&

97、gt;  TheEdit.Text:=stringreplace(theedit.Text,'','',[rfreplaceall]);</p><p>  if TheEdit.Text='' then</p><p>  showmessage(strDesc);</p><p>  edtuserID.SetFo

98、cus;</p><p><b>  abort;</b></p><p><b>  begin</b></p><p>  checkInput(edtuserID,'請輸入用戶號(hào)');</p><p>  checkInput(edtpasswd,'請輸入密碼'

99、);</p><p>  queryuser.Close;</p><p>  queryuser.SQL.Clear;</p><p>  queryuser.SQL.Add('select * from users where ID='+''''+edtuserID.Text+''''

100、;+'and '+'passwd='+''''+edtpasswd.Text+'''' );</p><p>  queryuser.Open;</p><p>  if queryuser.Eof then</p><p><b>  begin</b&

101、gt;</p><p>  showmessage('用戶號(hào)或密碼不正確');</p><p>  edtuserID.SetFocus;</p><p>  inc(times);</p><p>  if times>=3 then</p><p><b>  begin</b

102、></p><p>  showmessage('非法用戶不能登陸系統(tǒng)');</p><p>  modalresult:=mrcancel;</p><p><b>  end;</b></p><p>  end else modalresult:=mrOK;</p><

103、;p>  6.2院系設(shè)置的代碼實(shí)現(xiàn)</p><p>  進(jìn)入院系界面主要實(shí)現(xiàn)學(xué)校院系的添加、刪除、查詢功能,包括院系號(hào),院系名,負(fù)責(zé)人,聯(lián)系電話和說明等信息,院系號(hào)是主鍵,也就是說院系號(hào)是唯一的,同時(shí)院系表和班級(jí)表是關(guān)聯(lián)的,但院系里有班級(jí)時(shí)就不能刪除、修改該院系。實(shí)現(xiàn)主要代碼如下:</p><p><b>  Begin</b></p><p

104、>  result:=false;</p><p>  tblvalid.Active:=false;</p><p>  tblvalid.TableName:='class';</p><p>  tblvalid.Filter:='departID='''+tbldepartment['depart

105、ID']+'''';</p><p>  tblvalid.Filtered:=true;</p><p>  tblvalid.Active:=true;</p><p>  if not tblvalid.Eof then</p><p><b>  begin</b><

106、/p><p>  str:=format('不能刪除該院系’%s'的編號(hào)下面的班級(jí)#13,[tbldepartment['departname']]) ;</p><p>  repeat str:=str+format('%10S-%s'#13,[tblvalid['classID'],tblvalid['cla

107、ssname']]);</p><p>  tblvalid.Next;</p><p>  until tblvalid.Eof;</p><p>  str:=str+'隸屬該院系';</p><p><b>  begin</b></p><p>  strmsg1:

108、=format('院系編號(hào)已存在!'#13,[tbldepartment['departID']]);</p><p>  strmsg1:=strmsg1+format('院系號(hào):%S'#13,[tbldepartment['departId']]);</p><p>  strmsg1:=strmsg1+format(&#

109、39;院系名:%S'#13,[tbldepartment['departname']])</p><p>  strmsg1:=strmsg1+format('院系領(lǐng)導(dǎo):%S'#13,[tbldepartment['departhead']])</p><p>  showmessage(strmsg1);</p>&l

110、t;p>  dbedepartmentID.SetFocus;</p><p>  result:=false;</p><p><b>  end;</b></p><p>  tblvalid.Active:=false;</p><p><b>  end;</b></p>

111、<p><b>  begin</b></p><p>  if hasclass(strmsg) then</p><p><b>  begin</b></p><p>  showmessage(strmsg);</p><p><b>  abort;</b>

112、;</p><p><b>  end; </b></p><p>  strmsg:=format('確定要?jiǎng)h除該院系嗎?:'#13,[tbldepartment['departID']]);</p><p>  strmsg:=strmsg+format('院系號(hào):%S'#13,[tblde

113、partment['departId']]);</p><p>  strmsg:=strmsg+format('院系名:%S'#13,[tbldepartment['departname']]);</p><p>  strmsg:=strmsg+format('院系領(lǐng)導(dǎo):%S'#13,[tbldepartment['

114、;departhead']]);</p><p>  if messageDlg(strmsg,mtconfirmation,[mbyes,mbno],0)<>mryes then</p><p><b>  abort;</b></p><p><b>  end;</b></p>&l

115、t;p>  6.3學(xué)籍變更的代碼實(shí)現(xiàn)</p><p>  學(xué)籍變更界面主要實(shí)現(xiàn)學(xué)生學(xué)籍變更的功能,學(xué)籍變更有休學(xué)、轉(zhuǎn)系、結(jié)業(yè)、復(fù)學(xué)、轉(zhuǎn)學(xué)、畢業(yè)六種情況,學(xué)籍變更根據(jù)學(xué)號(hào)進(jìn)行具體的數(shù)據(jù)操作。實(shí)現(xiàn)功能主要代碼如下:</p><p>  procedure Tfrmchange.ToggleMode;</p><p>  procedure enableInput(

116、enabled:boolean);</p><p><b>  begin</b></p><p>  dbeCID.Enabled:=enabled;</p><p>  dbestudentID.Enabled:=enabled;</p><p>  dberecdate.Enabled:=enabled;</

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論