版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 畢業(yè)論文(設(shè)計(jì))</b></p><p> 題 目 學(xué)生成績管理系統(tǒng) </p><p> 姓 名 </p><p> 學(xué) 號
2、 </p><p> 專 業(yè) 計(jì)算機(jī)應(yīng)用技術(shù) </p><p> 班 別 </p><p> 指導(dǎo)教師 </p><p&
3、gt; 提交日期 2011 年 12 月 30 日 </p><p><b> 摘 要</b></p><p> 學(xué)生成績管理系統(tǒng)其開發(fā)工作主要包括后臺數(shù)據(jù)庫的建立和維護(hù)以及前端應(yīng)用程序的開發(fā)兩個(gè)方面。Powersoft的powerbuilder為用戶提供了功能強(qiáng)大的集成開發(fā)環(huán)境。POWERBUILDER是圖形用戶界面的c
4、/s開發(fā)工具,利用其提供的各種面向?qū)ο蟮拈_發(fā)工具,powerbuilder具有強(qiáng)大的多個(gè)數(shù)據(jù)庫描述連接功能和數(shù)據(jù)庫檢索力。利用其前端的用戶界面開發(fā)功能完備,易使用的應(yīng)用程序。而后臺的數(shù)據(jù)庫連接由POWERBUILDER完成,建立起數(shù)據(jù)一致性和完整性強(qiáng).數(shù)據(jù)安全性好的庫。</p><p><b> 目錄</b></p><p><b> 第一章 緒論4&
5、lt;/b></p><p> 第二章 可行性分析6</p><p> 第三章 關(guān)鍵的技術(shù)7</p><p> 第四章 數(shù)據(jù)庫設(shè)計(jì)10</p><p> 第五章 需求分析13</p><p> 第六章 總體設(shè)計(jì)14</p><p> 第一節(jié) 程序設(shè)計(jì)14</p
6、><p> (1) 輸入功能模塊14</p><p> (2) 查詢, 修改模塊15</p><p> (3) 退出系統(tǒng)模塊15</p><p> 第二節(jié) 總體設(shè)計(jì)小結(jié)15</p><p> 第七章 詳細(xì)設(shè)計(jì)15</p><p><b> 第八章 體會26</
7、b></p><p><b> 參考文獻(xiàn)26</b></p><p><b> 第一章 緒論</b></p><p> Sybase power Builder 9.0 是一個(gè)企業(yè)級的,面向?qū)ο蟮目焖賾?yīng)用開發(fā)工具,它易于使用的,可伸縮的,并經(jīng)實(shí)踐證明的快速集成開發(fā)環(huán)境, 在給用戶提供一條轉(zhuǎn)移到下一代平臺的途徑
8、的同時(shí),使用戶仍能夠保護(hù)和擴(kuò)展現(xiàn)有的技術(shù)和應(yīng)用上的投資。多年來,用戶一直贊賞 Power Builder 用于客戶/服務(wù)器應(yīng)用開發(fā)的快捷性,簡便性以及先進(jìn)性?,F(xiàn)在,用戶可以在他熟悉的相同的Power Builder 環(huán)境中使用相同的技術(shù)來創(chuàng)建同樣功能強(qiáng)大的Wed和分布式應(yīng)用。 Power Builder 9.0 是美國著名的 Power soft 公司開發(fā)的可視化數(shù)據(jù)庫編稱語言,它是完全按照客戶機(jī)/服務(wù)器體系結(jié)構(gòu)設(shè)計(jì)的,特別是其提
9、供了用于創(chuàng)建和管理不同對象的眾多畫板,具有強(qiáng)大的數(shù)據(jù)庫操作功能,是一款極其優(yōu)秀的面向?qū)ο蟮臄?shù)據(jù)庫開發(fā)工具。使用它將會使應(yīng)用程序的開發(fā)速度更快,成本更底,質(zhì)量更高,功能更強(qiáng),使開發(fā)人員從枯燥復(fù)雜的編程中解放出來,令開發(fā)應(yīng)用系統(tǒng)這一讓人頭痛的工作變成了真正的享受。它提供了對面向?qū)ο缶幊痰娜嬷С?,集成?qiáng)大并易于使用的編程語言。</p><p> 使用Power Builder 可以快速地開發(fā)出當(dāng)今最流行的各種商業(yè)應(yīng)
10、用,如客戶/服務(wù)器應(yīng)用,分布式應(yīng)用,基于組件的應(yīng)用和wed應(yīng)用。在Power Builder 強(qiáng)大功能和友好的集成開發(fā)環(huán)境支持下,開發(fā)人員的效率得到空前的提高,使程序設(shè)計(jì)與開發(fā)工作變的更加有趣,仿佛是一個(gè)藝術(shù)家在創(chuàng)作一件藝術(shù)品,因此它深受國內(nèi)外廣大開發(fā)人員的喜歡。</p><p> Power Builder 9.0的特點(diǎn)主要表現(xiàn)在以下幾個(gè)方面:</p><p><b> 高
11、效率的應(yīng)用開發(fā)</b></p><p> Power Builder 通過提供大量新的功能和特征繼續(xù)擴(kuò)展其快速應(yīng)用開發(fā)和無比卓越的生產(chǎn)率傳統(tǒng),顯著地加快了應(yīng)用的周期。</p><p> 緊密集成Sybase EAServer</p><p> 當(dāng)運(yùn)行于EAServer 中時(shí),Power Builder 應(yīng)用的功能非常強(qiáng)大。EAServer 是 Sy
12、base公司的一個(gè)獨(dú)具特色的應(yīng)用服務(wù)器,它融合了組件事務(wù)處理服務(wù)器和動態(tài)頁面服務(wù)器的功能。</p><p> 強(qiáng)大的Wed應(yīng)用開發(fā)能力</p><p> Power Builder 9.0 現(xiàn)在是一個(gè)綜合性的Wed集成開發(fā)環(huán)境,它提供了一個(gè)基于圖形用戶界面,功能強(qiáng)大而快捷的環(huán)境,用于高級Wed應(yīng)用和Wed站點(diǎn)的創(chuàng)建。從熟悉的Power Builder 環(huán)境中,你可以充分地利用大量新的W
13、ed應(yīng)用開發(fā)功能,將你的應(yīng)用,你的用戶以及你的技術(shù)帶到Wed世界與分布式計(jì)算領(lǐng)域。</p><p> Power Builder 9.0是一個(gè)非常優(yōu)秀的數(shù)據(jù)庫應(yīng)用開發(fā)工具,完全支持面向?qū)ο蟮拈_發(fā)。它擁有多種數(shù)據(jù)庫接口,可以非常方便地連接到各種數(shù)據(jù)源,再加上其專利品Data window,程序員不需要編寫任何SQL語句既可輕松地查詢和更新后臺數(shù)據(jù)庫,這使當(dāng)時(shí)的同類開發(fā)工具望塵莫及。</p><
14、p> 基于組件的開發(fā)增強(qiáng)了面向?qū)ο蟮募夹g(shù),它提供了一個(gè)更有效地封裝,管理,重用和擴(kuò)展企業(yè)規(guī)劃和處理的高層途徑。在使用面向?qū)ο蟮姆椒ㄔO(shè)計(jì)組件的過程中,貫穿始終的一個(gè)原則就是“企業(yè)邏輯要和表示邏輯分離”。這樣,傳統(tǒng)的客戶/服務(wù)器應(yīng)用和基于Wed的應(yīng)用都可以重用核心的企業(yè)規(guī)則和處理,核心代碼的更新也更加容易。</p><p> 在滿足用戶和完成系統(tǒng)的前提下,我們認(rèn)為選用Power Builder 9.0來開發(fā)
15、本次畢業(yè)設(shè)計(jì)是最佳選擇。</p><p><b> 可行性分析</b></p><p> 為了以最小的代價(jià)盡可能短的時(shí)間內(nèi)確定問題是否能夠解決,在進(jìn)行設(shè)計(jì)開發(fā)前首先進(jìn)行了可行性分析。</p><p> 在任何高等院校,學(xué)生成績管理都是學(xué)校教務(wù)管理的重要環(huán)節(jié)之一。隨著學(xué)校學(xué)生人數(shù)的增多,學(xué)生成績管理的任務(wù)更加繁重,必須借助現(xiàn)代的管理工具和手
16、段提高學(xué)生成績管理效率,因此我們的系統(tǒng)主要完成以下任務(wù):</p><p> 新學(xué)期開始時(shí),對應(yīng)每一位新生輸入相關(guān)的詳細(xì)記錄。</p><p> 建立各類課程的詳細(xì)記錄。</p><p> 建立各班級的細(xì)記錄。</p><p> 建立各班學(xué)生成績的詳細(xì)記錄。</p><p> 隨時(shí)可對學(xué)生信息,課程信息,班級信
17、息學(xué)生的成績進(jìn)行查詢。</p><p> 對系統(tǒng)的登錄進(jìn)行控制,用戶的管理和密碼的修改。</p><p><b> 第三章 關(guān)鍵的技術(shù)</b></p><p> Powersoft的powerbuilder為用戶提供了功能強(qiáng)大的集成開發(fā)環(huán)境。POWERBUILDER是圖形用戶界面的c/s開發(fā)工具,利用其提供的各種面向?qū)ο蟮拈_發(fā)工具,同時(shí)支
18、持分布式計(jì)算和WEB環(huán)境。powerbuilder具有強(qiáng)大的多個(gè)數(shù)據(jù)庫描述連接功能和數(shù)據(jù)庫檢索力。Powerbuilder為開發(fā)人員提供全面綜合性的支持主要有以下幾點(diǎn):</p><p><b> 可視化的開發(fā)</b></p><p> POWERBUILDER具有一個(gè)可視化的開發(fā)環(huán)境。大大減少了編寫代碼的工作量,不僅在用戶界面的開發(fā)是可視的,在數(shù)據(jù)庫的設(shè)計(jì)和表的設(shè)
19、計(jì)也是如此。降低了開發(fā)程序的難度,程序的開發(fā)效果更直觀,降低了開發(fā)時(shí)間節(jié)省開支。</p><p><b> 事件驅(qū)動的應(yīng)用程序</b></p><p> Powerbuilde的應(yīng)用程序是事件驅(qū)動的,并不是逐條執(zhí)行的,在程序運(yùn)行中能夠?qū)崿F(xiàn)與用戶的交互,即用戶通過各種動作控制應(yīng)用程序的流程。它為開發(fā)人員提供了一個(gè)集成環(huán)境,每個(gè)對象接受消息后,觸發(fā)事件完成所要處理的過
20、程。</p><p> Powercrip的語言和函數(shù)</p><p> Powerbuilder具有功能很強(qiáng)的編程語言,powerbuilder語言編寫的程序由powerscrip命令,函數(shù),SQL語句和事件中處理過程構(gòu)成。開發(fā)人員可以自定義類,對象完成復(fù)雜的事物邏輯與應(yīng)用相結(jié)合。Powerbuilder中含有豐富的內(nèi)置函數(shù)。可以利用這些函數(shù)完成對控件和對象的操作。</p>
21、;<p><b> 面向?qū)ο蟮木幊?lt;/b></p><p> powerbuilder中創(chuàng)建的窗口,菜單,數(shù)據(jù)窗口等都是對象,每個(gè)對象都有自己的特性,即屬性,事件,功能。這種面向?qū)ο蠓绞绞归_發(fā)人員不需要精通專門的語言,就能熟練地進(jìn)行程序的開發(fā)工作。除系統(tǒng)預(yù)先定義的對象外開發(fā)人員可以自己定義對象(用戶對象)擴(kuò)展系統(tǒng)定義的對象,使各種對象有機(jī)的結(jié)合起來構(gòu)成POWERBUILDE
22、R應(yīng)用程序。利用封裝性,繼承性和多態(tài)性等面向?qū)ο蟮木幊碳夹g(shù),能夠?qū)崿F(xiàn)窗口,控件等對象的重復(fù)使用,使程序具有重用性和可擴(kuò)展性,從而提高程序員的效率,減少了開發(fā)時(shí)間。</p><p><b> 跨平臺的開發(fā)</b></p><p> powerbuilder支持跨平臺的開發(fā)和分布,例如在window下利用powerbuilder開發(fā)的應(yīng)用程序,可以將此程序在Unix平
23、臺上運(yùn)行,開發(fā)人員可以分布在不同的平臺開發(fā)同一應(yīng)用程序。</p><p><b> 與數(shù)據(jù)庫的連接性</b></p><p> powerbuilder不僅提供的了ODBC接口,還有一系列專用接口,POWERBUILDER可以通過不同的接口連接不同的數(shù)據(jù)庫,并且支持多個(gè)數(shù)據(jù)庫的連接。ODBC(開放數(shù)據(jù)庫連接)是微軟公司的數(shù)據(jù)庫標(biāo)準(zhǔn),使用ODBC時(shí)需要定義由存取數(shù)據(jù)
24、構(gòu)成的ODBC數(shù)據(jù)源,實(shí)現(xiàn)數(shù)據(jù)源的存儲和管理應(yīng)用程序所需的數(shù)據(jù)。對于大型數(shù)據(jù)庫來說POWERBUILDER充分發(fā)揮專用接口的功能, POWERSOFT的專用接口與某一數(shù)據(jù)庫直接連接,通過專用的接口存取數(shù)據(jù)庫POWERBUILDER中的數(shù)據(jù)窗口對象可以方便地訪問數(shù)據(jù)庫。</p><p> 1.使用數(shù)據(jù)窗口技術(shù)</p><p> POWERBUILDER中的數(shù)據(jù)窗口對象是PWERBUILD
25、ER與其他面向數(shù)據(jù)庫應(yīng)用前端開發(fā)工具最主要的區(qū)別之一,數(shù)據(jù)窗口技術(shù)包括數(shù)據(jù)窗口對象而后數(shù)據(jù)窗口控件兩方面的內(nèi)容。</p><p> 數(shù)據(jù)窗口對象主要用于操作數(shù)據(jù)庫中的數(shù)據(jù),除不能完成數(shù)據(jù)庫中的數(shù)據(jù)定義,可以隨意操作數(shù)據(jù)(添加,刪除,修改,更新,查詢)在使用數(shù)據(jù)窗口對象時(shí)可以指定數(shù)據(jù)的顯示風(fēng)格。</p><p> 數(shù)據(jù)窗口控件則是把數(shù)據(jù)窗口對象的數(shù)據(jù)顯示在窗口上。</p>
26、<p><b> 使用數(shù)據(jù)窗口對象</b></p><p> 首先在數(shù)據(jù)窗口畫板中創(chuàng)建數(shù)據(jù)窗口對象,</p><p> 選擇數(shù)據(jù)源POWERBUILDER 提供了多種數(shù)據(jù)源包括快速數(shù)據(jù)源(QUICK SELECT),SQL選擇(SQL SELECT),查詢對象(QUERY)外部數(shù)據(jù)源(EXTERNAL)存儲過程(STORE D PROCEDURE)&l
27、t;/p><p> 定義顯示風(fēng)格POWERBUILDER中的每種顯示風(fēng)格都有自己的特點(diǎn)復(fù)合風(fēng)格,交叉風(fēng)格,自由格式。統(tǒng)計(jì)圖,表格格式,分組格式,標(biāo)簽格式,分?jǐn)r格式,超文本,列表格式,OLE20</p><p> 設(shè)置數(shù)據(jù)窗口對象的屬性及其對象內(nèi)部對象的屬性??梢跃庉嬶@示風(fēng)格,跳轉(zhuǎn)次序,有效性規(guī)則,排序等在有些設(shè)置過程中,最終對應(yīng)SQL 語句</p><p> 最后
28、在窗體中創(chuàng)建數(shù)據(jù)窗口控件使其與數(shù)據(jù)窗口對連接,顯示數(shù)據(jù)</p><p> 2.在POWERBUILDER中使用SQL 語句</p><p> 雖然POWERBUILDER提供了功能強(qiáng)大的datawindow和datastore來訪問和操作數(shù)據(jù)庫,但有些時(shí)候使用SQL 語句更能實(shí)現(xiàn)開發(fā)人員的要求,SQL語言占用資源少,操作靈活。并且可以在腳本中直接插入SQL語句訪問數(shù)據(jù)庫。POWERBU
29、ILDER中提供了SQL 畫板,開發(fā)人員可以輕松的使用SQL語句</p><p><b> 3.使用繼承技術(shù)</b></p><p> 利用繼承技術(shù)可以已有窗口的定義,包括風(fēng)格,事件,函數(shù),腳本,結(jié)構(gòu)和控件等。這樣可以大大提高開發(fā)的效率,節(jié)省時(shí)間。</p><p> 使用繼承技術(shù)有以下優(yōu)點(diǎn):</p><p> (
30、1)當(dāng)修改祖先窗口時(shí),其繼承窗口也隨著修改,不用再次修改繼承窗口減少 維護(hù)時(shí)間。</p><p> (2)后代繼承祖先的腳本,無須編寫代碼</p><p> (3)在程序代碼和應(yīng)用程序窗口中獲得一致性</p><p><b> 第四章 數(shù)據(jù)庫設(shè)計(jì)</b></p><p> 本課題采用Microsoft SQL
31、Server2005作為數(shù)據(jù)庫后臺,SQL語言功能豐富,使用方式靈活,語言簡潔易學(xué),它的功能包括查詢,操縱,定義和控制4個(gè)方面。它的主要特點(diǎn)是:一體化,聯(lián)機(jī)交互使用和嵌入式有統(tǒng)一的語法結(jié)構(gòu),過度非過程化以及語言簡潔,易學(xué)易用等。</p><p> SQL的數(shù)據(jù)定義包括3部分:定義基本表,定義視圖和定義索引。視圖是從一個(gè)或幾個(gè)基本表(或視圖)導(dǎo)出的表。在應(yīng)用系統(tǒng)中視圖是極其重要組成部分。它的外模式是由若干基本表和
32、若干視圖組成的,視圖是一個(gè)虛表。它的優(yōu)點(diǎn)有:</p><p> 1 對于數(shù)據(jù)庫的重構(gòu)造提供了一定程度上的邏輯獨(dú)立性。</p><p><b> 2 簡化了用戶觀點(diǎn)</b></p><p> 3 視圖的機(jī)制是不同的用戶能以不同的方式看待同一數(shù)據(jù)。</p><p> 4 視圖的機(jī)制對機(jī)密數(shù)據(jù)提供了自動的安全保護(hù)功能。
33、</p><p> 索引是數(shù)據(jù)庫檢索經(jīng)常用到的對象,為了提高查找速度應(yīng)該給表建立索引。索引可以是唯一的或不唯一的,可以是簇類的或非簇類的。對一個(gè)基本表,可以根據(jù)應(yīng)用環(huán)境的需要建立若干索引,以提供多種存取路徑,提高系統(tǒng)的運(yùn)行速度。</p><p> 根據(jù)以上分析將數(shù)據(jù)庫設(shè)計(jì)成若干個(gè)基本表,它們是</p><p> 1 用戶表(users)</p>
34、<p> 2 班級表(banji)</p><p> 3 學(xué)生基本信息表(jiben)</p><p> 4 學(xué)習(xí)成績表(xscj)</p><p> 5 班級課程表(bjkc)</p><p><b> 各表之間的關(guān)系</b></p><p><b> 第五章 需
35、求分析</b></p><p> 學(xué)生成績管理工作被視作高校管理工作中一項(xiàng)不容忽視的重要分支,其工作量大,涉及面廣,學(xué)生成績管理工作運(yùn)行的好壞直接影響著整個(gè)高校管理工作的各個(gè)環(huán)節(jié)。由于成績管理工作的本身特點(diǎn)及特殊性質(zhì),單純依靠人力,會使從事這項(xiàng)工作的管理人員過度纏身于繁瑣的業(yè)務(wù)中,難免會發(fā)生許多錯(cuò)誤,難以做到管理的規(guī)范化,這不符合管理工作的今后發(fā)展趨勢。因此,需要開發(fā)一種功能全面,操作簡便的管理系統(tǒng)
36、軟件來補(bǔ)助作用,人機(jī)配合,能夠使機(jī)器承擔(dān)部分工作,是管理員逐步擺脫一些無畏的,瑣碎的業(yè)務(wù),這對充分利用人力資源的主導(dǎo)作用及使管理工作逐步步入規(guī)范化軌道有著重要意義。</p><p> 根據(jù)上一章的可行性研究及對用戶調(diào)查,我們可確定本系統(tǒng)必須完成的工作,下面將來做簡要介紹。</p><p><b> 系統(tǒng)管理</b></p><p> 系統(tǒng)
37、管理有登陸控制,用戶管理以及密碼修改三個(gè)內(nèi)容,只有通過密碼才可以登陸我們系統(tǒng)的界面。</p><p><b> 班級信息管理</b></p><p> 在這里我們需要輸入班級的信息,按班級編號,班級名稱,專業(yè)名稱,學(xué)制,入學(xué)時(shí)間以及人數(shù),為方便添加,刪除,保存信息,我們將班級信息建立成數(shù)據(jù)窗口</p><p><b> 學(xué)生基本
38、信息管理</b></p><p> 新學(xué)期開始需將新生檔案輸入,一般來講,應(yīng)按學(xué)號,姓名,性別,出生日期,家庭住址,班級編號等集體輸入,為了存儲數(shù)據(jù)方便把學(xué)生信息建立成數(shù)據(jù)窗口,這樣存盤時(shí)只需點(diǎn)擊保存就可以保存了 </p><p><b> 課程信息管理</b></p><p> 各類課程應(yīng)輸入以備各專業(yè)
39、安排教學(xué)計(jì)劃和學(xué)生選課,為了管理和存儲方便將班級課程信息建立成數(shù)據(jù)窗口,這樣添加,刪除以及保存都很快捷</p><p><b> 成績信息管理</b></p><p> 每學(xué)期末應(yīng)輸入學(xué)生的各門課程成績,為了輸入,修改,查詢成績方便,我們將成績信息管理建立成一個(gè)數(shù)據(jù)窗口,這樣也方便添加,刪除,以及保存。</p><p><b>
40、 總體設(shè)計(jì)</b></p><p> 本次設(shè)計(jì)選擇Powerbuilder 9.0 為開發(fā)工具,以 Microsoft SQL Server 2005分布式客戶服務(wù)器數(shù)據(jù)庫管理系統(tǒng),作為數(shù)據(jù)庫后臺, Win7 操作平臺。</p><p> 學(xué)生成績管理系統(tǒng)是一個(gè)很大的系統(tǒng),若要求一個(gè)人獨(dú)立地較完善地完成各項(xiàng)功能,在如此短暫的時(shí)間內(nèi)簡直是天方夜談。所以,我側(cè)重于輸入模塊進(jìn)行
41、了本次設(shè)計(jì)。下面我將分為兩部分介紹總體設(shè)計(jì)。</p><p><b> 程序設(shè)計(jì)</b></p><p> 根據(jù)第三章的需求分析,將學(xué)生成績管理系統(tǒng)程序設(shè)計(jì)分五大模塊,如圖所示:</p><p> 對整個(gè)系統(tǒng)功能有了總體上的認(rèn)識以后,應(yīng)對每一個(gè)模塊的任務(wù)有一個(gè)清晰的認(rèn)識,以防代碼重復(fù),責(zé)任模糊而浪費(fèi)不必要的工作量。下面談一談我對每一個(gè)模塊
42、總體認(rèn)識。</p><p><b> ?。?)輸入功能模塊</b></p><p> 帳號管理只需要添加姓名和密碼。</p><p> 班級信息輸入時(shí),先輸入班級編號,,課程名稱,學(xué)時(shí),教師姓名,存盤時(shí)保證必要數(shù)據(jù)不為空。</p><p> 新生信息輸入時(shí),先輸入該生的學(xué)號,姓名,性別,出生日期,家庭住址,班級編號
43、,在存盤時(shí)應(yīng)保證必要數(shù)據(jù)不為空。</p><p> 課程信息輸入時(shí),先輸入班級編號,學(xué)期,要修的課程名稱,學(xué)時(shí)以及教師姓名,存盤時(shí)先檢驗(yàn)數(shù)據(jù)是否完整。</p><p> 填寫學(xué)生成績時(shí),先輸入專業(yè)年級和學(xué)期,然后列出所學(xué)課程名點(diǎn)擊其中一個(gè),顯示相應(yīng)其它信息并輸入成績。</p><p> (2 ) 查詢, 修改模塊</p><p> 查
44、詢班級信息需要輸入班級編號,輸入班級編號,班級相關(guān)信息就會出現(xiàn)在數(shù)據(jù)窗口,要修改班級信息直接在數(shù)據(jù)窗口中輸入即可。</p><p> 查詢學(xué)生基本信息就輸入學(xué)生學(xué)號,學(xué)生的相關(guān)信息都會出現(xiàn)在數(shù)據(jù)窗口,要修改學(xué)生信息,輸入學(xué)號將需要修改的信息直接在數(shù)據(jù)窗口中輸入即可。</p><p> 3 查詢課程信息需要輸入課程編號,關(guān)于課程的全部信息都會顯示在數(shù)據(jù)窗口,如果要修改課程信息,直接在數(shù)
45、據(jù)窗口中點(diǎn)擊修改然后更新即可。</p><p> 4 查詢學(xué)生成績時(shí),輸入學(xué)號,數(shù)據(jù)窗口就會顯示該學(xué)生的學(xué)號,姓名,性別,課程名稱,學(xué)期,成績,如要修改也是將學(xué)號輸入,對應(yīng)學(xué)生的成績需要修改的信息都會顯示在數(shù)據(jù)窗口,然后點(diǎn)擊修改即可。</p><p><b> 退出系統(tǒng)模塊</b></p><p> 對應(yīng)每個(gè)模塊中的窗口我們都設(shè)有退出按
46、鈕。</p><p> 第二節(jié) 總體設(shè)計(jì)小結(jié)</p><p> 以上對整個(gè)系統(tǒng)有了比較完整地系統(tǒng)地認(rèn)識,數(shù)據(jù)庫后臺的基本表格已經(jīng)初步建立,但索引和視圖的建立將在詳細(xì)設(shè)計(jì)中作具體的介紹。</p><p> 用戶的界面是應(yīng)用程序的重要部分,是用戶應(yīng)用程序進(jìn)行信息交流的地方,一個(gè)應(yīng)用程序的實(shí)用性不僅僅取決于它的功能,在很大程度上依賴于它的界面,因?yàn)閷τ脩舳越缑婢褪?/p>
47、應(yīng)用程序,用戶感覺不出幕后正在執(zhí)行的代碼。因此,我在進(jìn)行程序設(shè)計(jì)時(shí)盡量把自己當(dāng)成用戶,使界面易于操作,方便用戶。</p><p><b> 第六章 詳細(xì)設(shè)計(jì)</b></p><p> 本章將詳細(xì)地對各個(gè)模塊進(jìn)行分解和剖析,包括程序的流程,變量使用和窗體的構(gòu)成等。系統(tǒng)分為三個(gè)模塊,下面依次對各個(gè)模塊進(jìn)行敘述。</p><p><b>
48、; 1 班級信息</b></p><p><b> 添加鍵</b></p><p> 按添加,輸入班級編號,班級名稱,專業(yè)名稱,學(xué)制,入學(xué)時(shí)間,人數(shù)</p><p><b> 保存鍵</b></p><p> 用戶添加數(shù)據(jù)后存盤,檢測數(shù)據(jù)是否完整,數(shù)據(jù)庫操縱是否成功,然后按保存
49、。</p><p><b> 刪除鍵</b></p><p> 設(shè)置提示信息,確定用戶要?jiǎng)h除當(dāng)前記錄后提交。</p><p><b> 添加按鈕代碼:</b></p><p> integer ii</p><p> ii=dw_1.insertrow(0)<
50、;/p><p> dw_1.scrolltorow(ii)</p><p><b> 刪除按鈕代碼:</b></p><p> dw_1.deleterow(0) // 刪除當(dāng)前行</p><p> dw_1.update()</p><p><b> 保存按鈕代碼:</b
51、></p><p> dw_1.update()</p><p><b> 退出按鈕的代碼:</b></p><p> close(parent)</p><p> w_banji_luru的open代碼:</p><p> dw_1.settransobject(sqlca)&l
52、t;/p><p> dw_1.retrieve( )</p><p><b> 2 班級修改</b></p><p><b> 刪除按鈕的代碼:</b></p><p> dw_1.deleterow(0) // 刪除當(dāng)前行</p><p> dw_1.update(
53、)</p><p><b> 更新按鈕的代碼:</b></p><p> dw_1.update()</p><p><b> 退出按鈕的代碼:</b></p><p> close (parent)</p><p> w_banji_xiugai的open 代碼:
54、</p><p> dw_1.settransobject(sqlca)</p><p> sle_1 的modified的代碼</p><p> dw_1.retrieve(sle_1.text)</p><p><b> 3 查詢班級成績</b></p><p><b>
55、刪除按鈕的代碼:</b></p><p> dw_1.deleterow(0) // 刪除當(dāng)前行</p><p> dw_1.update()</p><p><b> 更新按鈕的代碼:</b></p><p> dw_1.update()</p><p><b>
56、 退出按鈕的代碼:</b></p><p> close (parent)</p><p> W_chengji_cxbj的open代碼</p><p> dw_1.settransobject(sqlca)</p><p> sle_1 的modified的代碼</p><p> dw_1.r
57、etrieve(sle_1.text)</p><p><b> 4 學(xué)生基本信息</b></p><p><b> 添加按鈕的代碼:</b></p><p> integer ii</p><p> ii=dw_1.insertrow(0)</p><p> d
58、w_1.scrolltorow(ii)</p><p><b> 刪除按鈕的代碼:</b></p><p> dw_1.deleterow(0) // 刪除當(dāng)前行</p><p> dw_1.update()</p><p><b> 保存按鈕的代碼:</b></p><
59、;p> dw_1.update()</p><p><b> 退出按鈕的代碼:</b></p><p> close(parent)</p><p> W_jiben_luru的open代碼:</p><p> dw_1.settransobject(sqlca)</p><p>
60、 dw_1.retrieve( )</p><p><b> 5 修改學(xué)生信息</b></p><p><b> 刪除按鈕的代碼:</b></p><p> dw_1.deleterow(0) // 刪除當(dāng)前行</p><p> dw_1.update()</p><
61、p><b> 更新按鈕的代碼:</b></p><p> dw_1.update()</p><p><b> 退出按鈕的代碼:</b></p><p> close (parent)</p><p> W_jiben_xiugai的open代碼</p><p&g
62、t; dw_1.settransobject(sqlca)</p><p> sle_1 的modified的代碼</p><p> dw_1.retrieve(sle_1.text)</p><p><b> 6 查詢學(xué)生信息</b></p><p><b> 退出按鈕的代碼:</b>&
63、lt;/p><p> close(parent)</p><p> W_jiben_chaxun 的open代碼:</p><p> dw_1.settransobject(sqlca)</p><p> sle_1 的modified的代碼</p><p> dw_1.retrieve(sle_1.text)&
64、lt;/p><p><b> 7 輸入課程信息</b></p><p><b> 添加按鈕代碼:</b></p><p> integer ii</p><p> ii=dw_1.insertrow(0)</p><p> dw_1.scrolltorow(ii)&l
65、t;/p><p><b> 刪除按鈕代碼:</b></p><p> dw_1.deleterow(0) // 刪除當(dāng)前行</p><p> dw_1.update()</p><p><b> 保存按鈕代碼:</b></p><p> dw_1.update()&l
66、t;/p><p><b> 退出按鈕的代碼:</b></p><p> close(parent)</p><p> w_kecheng_luru的open代碼:</p><p> dw_1.settransobject(sqlca)</p><p> dw_1.retrieve( )<
67、;/p><p><b> 8 修改課程信息</b></p><p><b> 刪除按鈕的代碼:</b></p><p> dw_1.deleterow(0) // 刪除當(dāng)前行</p><p> dw_1.update()</p><p><b> 更新按鈕的
68、代碼:</b></p><p> dw_1.update()</p><p><b> 退出按鈕的代碼:</b></p><p> close (parent)</p><p> W_kecheng_xiugai的open代碼</p><p> dw_1.settransob
69、ject(sqlca)</p><p> sle_1 的modified的代碼</p><p> dw_1.retrieve(sle_1.text)</p><p><b> 9 查詢課程成績</b></p><p><b> 刪除按鈕的代碼:</b></p><p>
70、; dw_1.deleterow(0) // 刪除當(dāng)前行</p><p> dw_1.update()</p><p><b> 更新按鈕的代碼:</b></p><p> dw_1.update()</p><p><b> 退出按鈕的代碼:</b></p><p&
71、gt; close (parent)</p><p> W_kecheng_chaxun的open代碼</p><p> dw_1.settransobject(sqlca)</p><p> sle_1 的modified的代碼</p><p> dw_1.retrieve(sle_1.text)</p><p
72、><b> 10 錄入修改成績</b></p><p><b> 添加按鈕代碼:</b></p><p> integer ii</p><p> ii=dw_1.insertrow(0)</p><p> dw_1.scrolltorow(ii)</p><p
73、><b> 刪除按鈕代碼:</b></p><p> dw_1.deleterow(0) // 刪除當(dāng)前行</p><p> dw_1.update()</p><p><b> 保存按鈕代碼:</b></p><p> dw_1.update()</p><p
74、><b> 退出按鈕的代碼:</b></p><p> close(parent)</p><p> w_chengji_luru的open代碼:</p><p> dw_1.settransobject(sqlca)</p><p> dw_1.retrieve( )</p><p&
75、gt;<b> 11 查詢個(gè)人成績</b></p><p><b> 刪除按鈕的代碼:</b></p><p> dw_1.deleterow(0) // 刪除當(dāng)前行</p><p> dw_1.update()</p><p><b> 更新按鈕的代碼:</b>&
76、lt;/p><p> dw_1.update()</p><p><b> 打印按鈕的代碼:</b></p><p> if dw_1.rowcount( )>0 then</p><p> print(dw_1)</p><p><b> else</b><
77、;/p><p> messagebox("提示","無數(shù)據(jù)可打印?。?!")</p><p><b> end if</b></p><p><b> 退出按鈕的代碼:</b></p><p> close(parent)</p><p&
78、gt; W_chengji_cxgr 的open代碼:</p><p> dw_1.settransobject(sqlca)</p><p> sle_1 的modified的代碼</p><p> dw_1.retrieve(sle_1.text)</p><p> 12 查詢班級成績 </p><p>
79、<b> 刪除按鈕的代碼:</b></p><p> dw_1.deleterow(0) // 刪除當(dāng)前行</p><p> dw_1.update()</p><p><b> 更新按鈕的代碼:</b></p><p> dw_1.update()</p><p&g
80、t;<b> 退出按鈕的代碼:</b></p><p> close (parent)</p><p> W_chengji_cxbj的open代碼</p><p> dw_1.settransobject(sqlca)</p><p> sle_1 的modified的代碼</p><p&
81、gt; dw_1.retrieve(sle_1.text)</p><p><b> 第七章 測試報(bào)告</b></p><p> 軟件測試在開發(fā)軟件過程中是一個(gè)不可缺少的部分。因?yàn)樵陂_發(fā)軟件系統(tǒng)的漫長過程中,面對著極其錯(cuò)綜復(fù)雜的問題,人的主觀認(rèn)識不可能完全符合客觀現(xiàn)實(shí),與工程密切相關(guān)的各類人員之間的通信和配合也不可能完美無缺,因此,在軟件生命周期的各個(gè)階段都不可
82、避免地產(chǎn)生差錯(cuò)。我們力求在每個(gè)階段結(jié)束之前通過嚴(yán)格的技術(shù)審查,盡可能早地發(fā)現(xiàn)并糾正錯(cuò)誤;但是,經(jīng)驗(yàn)表明審查并不能發(fā)現(xiàn)所有的差錯(cuò),此外在編碼過程中還不可避免地會引入一些新的錯(cuò)誤。如果在軟件生產(chǎn)性運(yùn)行之前,沒有發(fā)現(xiàn)并糾正軟件中的大部分差錯(cuò),則這些錯(cuò)誤遲早在生產(chǎn)過程中暴露出來,那時(shí)不僅僅改正這些錯(cuò)誤的代價(jià)更高,而且往往會造成很惡劣的后果。測試的目的就是在軟件投入生產(chǎn)運(yùn)行之前,盡可能多地發(fā)現(xiàn)并糾正軟件中的錯(cuò)誤。基于上述的原因,我在編碼過程中進(jìn)行
83、了模塊測試,編碼結(jié)束進(jìn)行了系統(tǒng)測試和驗(yàn)收測試。下面將介紹測試方案,測試過程和測試結(jié)果。</p><p><b> 一 模塊測試</b></p><p><b> 1 測試方案</b></p><p> 采用了白盒測試,即按照程序內(nèi)部的邏輯結(jié)構(gòu),檢驗(yàn)程序中的每條通路是否都按預(yù)定要求正常工作。</p>&l
84、t;p><b> 2 測試過程</b></p><p> 檢驗(yàn)?zāi)K之間的接口。</p><p> A 每個(gè)被調(diào)用模塊是否正確接受參數(shù)。</p><p> B 每個(gè)調(diào)用模塊是否能調(diào)用每個(gè)自己想要調(diào)用的模塊。</p><p><b> 3 測試結(jié)果</b></p><
85、p> 測試結(jié)果表明,每個(gè)模塊之間的接口都吻合,即被調(diào)用模塊都能正確接受參數(shù),調(diào)用模塊能調(diào)用自己想要調(diào)用的每個(gè)模塊。</p><p><b> 二 測試過程</b></p><p><b> 1 測試方法</b></p><p> 采用了黑盒測試,即檢查程序功能是否能按照規(guī)格說明書的規(guī)定正常使用,程序是否適當(dāng)?shù)?/p>
86、接受數(shù)據(jù)產(chǎn)生正確的輸出信息,并且保持外部信息的完整性。</p><p> 2 測試過程:主要檢驗(yàn)是否能正確實(shí)現(xiàn)每個(gè)功能</p><p> A 每個(gè)功能時(shí)候按照規(guī)格說明書的要求正常使用。</p><p> B 數(shù)據(jù)庫里的記錄是否符合要求。</p><p> C 用戶界面是否友好</p><p><b>
87、 三 測試結(jié)果</b></p><p> 結(jié)果表明,每個(gè)功能都能按照規(guī)格說明書里的要求正常使用且速度達(dá)到了預(yù)期的標(biāo)準(zhǔn)。數(shù)據(jù)庫里的記錄符合要求,用戶界面友好。</p><p> 當(dāng)然,整個(gè)系統(tǒng)在測試過程中仍發(fā)現(xiàn)了不少的錯(cuò)誤,但在知道老師的指導(dǎo)下改正并完善了所發(fā)現(xiàn)的錯(cuò)誤和不足之處,達(dá)到了測試要求。</p><p><b> 第八章 體會&l
88、t;/b></p><p> 通過本次設(shè)計(jì),收獲很大。不但對PowerBuider這一開發(fā)工具有所掌握,更重要的是對進(jìn)行軟件設(shè)計(jì)的整體設(shè)計(jì)流程及思維方法有了深刻的認(rèn)識。到了最后,發(fā)現(xiàn)的許多問題都源、于沒有認(rèn)真地按步驟進(jìn)行設(shè)計(jì),不重視需求分析,總體設(shè)計(jì)部分,對各個(gè)方面將會產(chǎn)生的問題考慮不周全。</p><p> 同時(shí),在畢業(yè)設(shè)計(jì)的過程中,我們小組的同學(xué)互相學(xué)習(xí),相互鼓勵(lì),營造了一個(gè)
89、良好的學(xué)習(xí)氛圍。在這樣一種團(tuán)結(jié),緊張的氛圍中,不但使我學(xué)會了與別人合作,我還真正領(lǐng)會到了團(tuán)結(jié)合作的團(tuán)隊(duì)精神的實(shí)質(zhì)和重要性。沒有一個(gè)良好和睦的工作環(huán)境,沒有團(tuán)結(jié)合作的團(tuán)隊(duì)精神,就不可能取得成功,今后也不可能取得大的成就。</p><p> 在設(shè)計(jì)過程中,對于我來說,由于很多都是新知識,這就迫使我到處查閱相關(guān)資料,學(xué)習(xí)新知識,從而培養(yǎng)了獨(dú)立思考解決問題的能力。</p><p> 總之,在整
90、個(gè)設(shè)計(jì)完善的過程中,我學(xué)到了在書本里根本學(xué)不到的許多知識,體會到軟件設(shè)計(jì)中,總體把握系統(tǒng)的流程的為實(shí)現(xiàn)某個(gè)功能的各個(gè)程序的流程是多么的重要,再一次感謝周秀梅老師的細(xì)心指導(dǎo)!</p><p><b> 參考文獻(xiàn)</b></p><p> 1 《PowerBuider8.0 徹底研究》,中國鐵道出版社2003年1月 第一版 </p><p>
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 計(jì)算機(jī)畢業(yè)設(shè)計(jì)---vb學(xué)生成績管理系統(tǒng)
- 計(jì)算機(jī)畢業(yè)設(shè)計(jì)5c#學(xué)生成績管理系統(tǒng)
- 計(jì)算機(jī)畢業(yè)設(shè)計(jì)5c#學(xué)生成績管理系統(tǒng)
- 計(jì)算機(jī)畢業(yè)設(shè)計(jì)5c#學(xué)生成績管理系統(tǒng).doc
- 計(jì)算機(jī)畢業(yè)設(shè)計(jì)5c#學(xué)生成績管理系統(tǒng).doc
- 計(jì)算機(jī)畢業(yè)論文--學(xué)生成績管理系統(tǒng)
- 計(jì)算機(jī)專業(yè)畢業(yè)論文---學(xué)生成績管理系統(tǒng)
- 計(jì)算機(jī)應(yīng)用畢業(yè)論文--學(xué)生成績管理系統(tǒng)
- 計(jì)算機(jī)信息管理畢業(yè)論文--學(xué)生成績管理系統(tǒng)
- 畢業(yè)設(shè)計(jì)----學(xué)生成績管理系統(tǒng)
- 學(xué)生成績管理系統(tǒng)畢業(yè)設(shè)計(jì)
- 學(xué)生成績管理系統(tǒng)畢業(yè)設(shè)計(jì)
- 學(xué)生成績管理系統(tǒng)畢業(yè)設(shè)計(jì)
- 學(xué)生成績管理系統(tǒng)畢業(yè)設(shè)計(jì)
- 學(xué)生成績管理系統(tǒng)---畢業(yè)設(shè)計(jì)
- 學(xué)生成績管理系統(tǒng)畢業(yè)設(shè)計(jì)
- 學(xué)生成績管理系統(tǒng)畢業(yè)設(shè)計(jì)
- 計(jì)算機(jī)高級語言課程設(shè)計(jì)(c)學(xué)生成績管理系統(tǒng)
- 學(xué)生成績管理系統(tǒng)畢業(yè)設(shè)計(jì)論文
- 學(xué)生成績管理系統(tǒng)畢業(yè)設(shè)計(jì) (3)
評論
0/150
提交評論