王宏勇
摘 要:學(xué)生成績(jī)管理系統(tǒng)是典型的信息管理系統(tǒng)(MIS),其開(kāi)發(fā)主要包括后臺(tái)數(shù)據(jù)庫(kù)的建立和維護(hù)以及前端應(yīng)用程序的開(kāi)發(fā)兩個(gè)方面。對(duì)于前者要求建立起數(shù)據(jù)一致性和完整性強(qiáng)、數(shù)據(jù)安全性好的庫(kù)。而對(duì)于后者則要求應(yīng)用程序功能完備,易使用等特點(diǎn)。
本論文通過(guò)用VFP編寫(xiě)學(xué)生成績(jī)管理系統(tǒng),利用軟件工程原理,采用生命周期方法學(xué),其開(kāi)發(fā)主要包括后臺(tái)數(shù)據(jù)庫(kù)的建立和維護(hù)以及前端應(yīng)用程序的開(kāi)發(fā)兩個(gè)方面,實(shí)現(xiàn)了學(xué)生成績(jī)數(shù)據(jù)庫(kù)的創(chuàng)建及學(xué)生成績(jī)的輸入、瀏覽、維護(hù)和統(tǒng)計(jì)。
關(guān)鍵字:成績(jī)管理;瀏覽;打?。痪S護(hù);統(tǒng)計(jì)
學(xué)生成績(jī)管理系統(tǒng)是為了更好的管理學(xué)生考試成績(jī)而開(kāi)發(fā)的數(shù)據(jù)庫(kù)管理軟件。根據(jù)學(xué)校實(shí)際要求,即實(shí)現(xiàn)學(xué)生基本信息、成績(jī)的錄入,刪除,查詢(xún),維護(hù)以及成績(jī)的統(tǒng)計(jì)分析等幾方面功能。管理員可以通過(guò)查詢(xún),實(shí)現(xiàn)刪除、修改學(xué)生的基本信息;可根據(jù)實(shí)際需求,自由添加、刪除課程;還能打印學(xué)生成績(jī)表(總分成績(jī)表和單課成績(jī)表)。學(xué)生成績(jī)管理系統(tǒng)可幫助老師們方便快捷地管理這些繁瑣地?cái)?shù)據(jù)。學(xué)生成績(jī)管理系統(tǒng)具有手工管理無(wú)比優(yōu)越的優(yōu)點(diǎn):查找方便,可靠性高,保密性好,成本低。
基于上述因素,利用軟件工程原理,采用生命周期方法學(xué),經(jīng)過(guò)可行性研究,需求分析,總體設(shè)計(jì),以及編碼、測(cè)試和最后運(yùn)行成功。微軟公司地VISUAL FOXPRO具有強(qiáng)大的數(shù)據(jù)庫(kù)管理功能,可以方便編寫(xiě)出小型的信息處理系統(tǒng),能夠有效地存儲(chǔ)數(shù)據(jù),滿(mǎn)足用戶(hù)的應(yīng)用需求(信息要求和處理要求)。設(shè)計(jì)指導(dǎo)思想:一切為用戶(hù)著想,界面美觀(guān)大方,操作盡量簡(jiǎn)單明了,而且作為一個(gè)實(shí)用系統(tǒng)要有良好的容錯(cuò)性,在用戶(hù)出現(xiàn)誤操作時(shí),及時(shí)給出警告,以便用戶(hù)及時(shí)更正。
1 需求分析
需求分析簡(jiǎn)單的說(shuō)就是分析用戶(hù)的要求,通過(guò)調(diào)查、收集與分析,獲得用戶(hù)對(duì)數(shù)據(jù)庫(kù)的如下要求:
1.1 數(shù)據(jù)流程
《成績(jī)管理系統(tǒng)》主要是為了對(duì)學(xué)生基本信息、成績(jī)信息等進(jìn)行計(jì)算機(jī)管理。所以主要的數(shù)據(jù)源應(yīng)是學(xué)生的各種信息。它們?cè)谙到y(tǒng)中流動(dòng)和處理??梢钥闯觯簩W(xué)生基本信息的流動(dòng)首先是以學(xué)籍號(hào)的特征為流動(dòng)方向的依據(jù)。非0學(xué)籍號(hào)可以繼續(xù)流動(dòng),并檢驗(yàn)數(shù)據(jù)庫(kù)中是否已經(jīng)注冊(cè),已經(jīng)注冊(cè)的信息可以修改、查詢(xún)、并將查詢(xún)結(jié)果報(bào)表。未注冊(cè)的信息可以錄入到數(shù)據(jù)庫(kù)中。這里注冊(cè)的信息包括:學(xué)籍號(hào),姓名,性別,班級(jí),出生日期等。這里可以分析得出:要實(shí)現(xiàn)學(xué)生基本信息的流動(dòng),需要設(shè)計(jì)一個(gè)學(xué)生基本信息數(shù)據(jù)庫(kù)表(學(xué)生基本信息.DBF)。并對(duì)該表實(shí)現(xiàn)信息的錄入、修改、查詢(xún)、統(tǒng)計(jì)、報(bào)表。
1.2 信息要求:指用戶(hù)需要從數(shù)據(jù)庫(kù)中獲得信息的內(nèi)容與性質(zhì)
本系統(tǒng)需要的輸入數(shù)據(jù):學(xué)生信息(學(xué)號(hào),姓名,班級(jí),性別,出生日期)、課程信息(課程名,滿(mǎn)分)、考生成績(jī);輸出數(shù)據(jù):學(xué)生成績(jī)報(bào)表、學(xué)生信息報(bào)表、課程報(bào)表、成績(jī)報(bào)表。
1.3 處理要求:指用戶(hù)要完成什么處理功能
本系統(tǒng)功能需求可歸納如下:
(1)、數(shù)據(jù)登記
登記功能用于把各種手填的數(shù)據(jù)及時(shí)登記系統(tǒng)定義表中,還能修改這些數(shù)據(jù)(學(xué)生信息、課程信息、成績(jī))。
(2)、數(shù)據(jù)瀏覽
能瀏覽學(xué)生信息、課程信息、成績(jī)。
(3)、數(shù)據(jù)打印
能打印學(xué)生信息表、課程信息表、成績(jī)表(單課成績(jī)和總分成績(jī))。
(4)、數(shù)據(jù)統(tǒng)計(jì)
能統(tǒng)計(jì)各班學(xué)生總數(shù)和男女人數(shù),統(tǒng)計(jì)各班學(xué)生的總分、排名,及各單課的排名。
1.4 性能要求:維護(hù)數(shù)據(jù)的安全性
設(shè)定密碼,限制非法用戶(hù)的使用;還能修改密碼,維護(hù)系統(tǒng)的安全性。
2 數(shù)據(jù)庫(kù)設(shè)計(jì)
數(shù)據(jù)庫(kù)是一種存儲(chǔ)數(shù)據(jù)并對(duì)數(shù)據(jù)進(jìn)行操作的工具。數(shù)據(jù)庫(kù)的作用在于組織和表達(dá)信息,簡(jiǎn)而言之,數(shù)據(jù)庫(kù)就是信息的集合。計(jì)算機(jī)的數(shù)據(jù)庫(kù)可以分為兩類(lèi):非關(guān)系數(shù)據(jù)庫(kù)和關(guān)系數(shù)據(jù)庫(kù)。關(guān)系數(shù)據(jù)庫(kù)中包含了多個(gè)數(shù)據(jù)表的信息,數(shù)據(jù)庫(kù)含有各個(gè)不同部分的術(shù)語(yǔ),象記錄、域等。
數(shù)據(jù)庫(kù)設(shè)計(jì)的任務(wù)是確定系統(tǒng)所需的數(shù)據(jù)庫(kù)。數(shù)據(jù)庫(kù)是表的集合,通常一個(gè)系統(tǒng)只需一個(gè)數(shù)據(jù)庫(kù)。建立本系統(tǒng)的數(shù)據(jù)庫(kù)創(chuàng)建任何一個(gè)數(shù)據(jù)庫(kù)的第一步是仔細(xì)的規(guī)劃數(shù)據(jù)庫(kù),設(shè)計(jì)必須是靈活的、有邏輯的。創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)結(jié)構(gòu)的過(guò)程被認(rèn)為是數(shù)據(jù)模型設(shè)計(jì)。
1、標(biāo)識(shí)需要的數(shù)據(jù);2、 收集被標(biāo)識(shí)的字段到表中;3、 標(biāo)識(shí)主關(guān)鍵字字段;4、 繪制一個(gè)簡(jiǎn)單的數(shù)據(jù)圖表;5、 規(guī)范數(shù)據(jù);6、 標(biāo)識(shí)指定字段的信息;7、 創(chuàng)建物理表。
(1)、邏輯設(shè)計(jì):確定數(shù)據(jù)庫(kù)所含表及字段
學(xué)生信息表:xs(學(xué)號(hào),姓名,班級(jí),性別,出生日期)
課程信息表:kc(課程號(hào),課程名,滿(mǎn)分)
考生成績(jī)表:cj(學(xué)號(hào),姓名,班級(jí),課程名,成績(jī),名次)
括號(hào)外字符號(hào)是表名,括號(hào)內(nèi)是字段名,有下劃線(xiàn)的字段為關(guān)聯(lián)關(guān)鍵字
(2)、物理設(shè)計(jì): 學(xué)生信息表、 課程信息表:、 考生成績(jī)表、自由表:
2.1 修改已建的數(shù)據(jù)庫(kù)
數(shù)據(jù)庫(kù)的修改分為:添加、編輯和刪除記錄。這三種操作均可由Visual foxpro 創(chuàng)建的程序來(lái)完成,下面的章節(jié)將詳細(xì)描述實(shí)現(xiàn)的具體方法。
2.2 實(shí)現(xiàn)數(shù)據(jù)庫(kù)之間的聯(lián)系
數(shù)據(jù)庫(kù)之間的關(guān)系指明兩個(gè)庫(kù)之間共享一個(gè)共同的關(guān)鍵字值。一個(gè)連接是指一種虛擬的表,這種表是在當(dāng)用戶(hù)要求從相互關(guān)聯(lián)的各個(gè)不同的表中獲取信息時(shí)建立的,關(guān)鍵字段用于在相互連接的不同表中查找匹配的記錄。一個(gè)更高級(jí)的連接形式稱(chēng)為自連接。這種連接是指一個(gè)表被連接到它自己的一個(gè)字段,或在不同的紀(jì)錄中由重復(fù)數(shù)據(jù)的組合字段。數(shù)據(jù)庫(kù)中有三種不同類(lèi)型的關(guān)鍵字:主關(guān)鍵字、組合關(guān)鍵字和外關(guān)鍵字。在表中使用的關(guān)鍵字類(lèi)型用于描述庫(kù)表示什么以及在數(shù)據(jù)庫(kù)中如何與其它的庫(kù)建立關(guān)系。
3 系統(tǒng)總體設(shè)計(jì)
按功能分類(lèi)是總體設(shè)計(jì)的常用方法,用層次圖(Hierarchy Chart 簡(jiǎn)稱(chēng)HC圖)表示,自上而下分層
系統(tǒng)功能:
可以進(jìn)行文本操作、 添加一個(gè)數(shù)據(jù)庫(kù)項(xiàng)目;、 刪除一個(gè)數(shù)據(jù)庫(kù)項(xiàng)目、修改一個(gè)數(shù)據(jù)庫(kù)項(xiàng)目、查詢(xún)信息、 察看課程表。
3.1 數(shù)據(jù)維護(hù)模塊
包括對(duì)學(xué)生信息表、課程信息表、考生成績(jī)表的插入、修改、刪除、搜索等。
3.2 數(shù)據(jù)瀏覽模塊
包括對(duì)學(xué)生信息表、課程信息表、考生成績(jī)表的選擇瀏覽、打印。
3.3 成績(jī)管理模塊
包括對(duì)學(xué)生成績(jī)的輸入,總分和單課的統(tǒng)計(jì)和排名,分析各分?jǐn)?shù)段人數(shù)的分布情況。
4 系統(tǒng)具體實(shí)現(xiàn)
初始用戶(hù)界面設(shè)計(jì)
系統(tǒng)層對(duì)應(yīng)菜單文件,子系統(tǒng)層對(duì)應(yīng)菜單標(biāo)題,功能層對(duì)應(yīng)子菜單項(xiàng)
參考文獻(xiàn)
[1]薩師煊 《數(shù)據(jù)庫(kù)系統(tǒng)概論》 高等教育出版社 2000.02
[2]張海藩 《軟件工程導(dǎo)論》 清華大學(xué)出版社 2001.05