摘要:隨著計算機技術(shù)的飛速發(fā)展和高等教育體制改革的不斷深入,傳統(tǒng)教育管理方法、手段以及工作效率已不能適應(yīng)新的發(fā)展需要,無法很好地完成教學(xué)管理工作。提高教學(xué)管理水平的主要途徑是更新管理者的思想,增強對管理活動的科學(xué)認(rèn)識?;贘ava與SQL server數(shù)據(jù)庫技術(shù)建立一個高校成績管理系統(tǒng)該系統(tǒng)為管理員、學(xué)生和教師提供了查詢、修改、增加記錄、刪除等功能,功能比較齊全,基本上能滿足學(xué)生和老師的要求。
關(guān)鍵詞:Java;需求分析;概要設(shè)計;學(xué)生成績管理系統(tǒng)
中圖分類號:TP311.52 文獻(xiàn)標(biāo)識碼:A 文章編號:1007—9599 (2012) 14—0000—02
一、系統(tǒng)分析
(一)系統(tǒng)開發(fā)目地
1.使用本系統(tǒng)將大大提高學(xué)院教務(wù)人員管理業(yè)務(wù)的處理效率;
2.提高成績信息數(shù)據(jù)的準(zhǔn)確性和安全性;
3.減少成績信息管理的重復(fù)性和低效性,節(jié)約人力、物力和時間。
(二)系統(tǒng)開發(fā)背景
學(xué)院在教學(xué)這一部分主要是由教務(wù)處對課程、對學(xué)生、對學(xué)生成績進(jìn)行合理地安排以及統(tǒng)籌計劃,以及讓教務(wù)處在最短的時間段把學(xué)生的成績核算出來,提高教務(wù)處的辦事效率。
(三)開發(fā)工具
本系統(tǒng)前端開發(fā)工具選擇了Java,后臺數(shù)據(jù)庫采用sql server2000。
1.Java簡介:Java是一種可以撰寫跨平臺應(yīng)用軟件的面向?qū)ο蟮某绦蛟O(shè)計語言,是由Sun Microsystems公司于1995年5月推出的Java程序設(shè)計語言和Java平臺(即JavaSE,JavaEE,JavaME)的總稱。Java技術(shù)具有卓越的通用性、高效性、平臺移植性和安全性,廣泛應(yīng)用于個人PC、數(shù)據(jù)中心、游戲控制臺、科學(xué)超級計算機、移動電話和互聯(lián)網(wǎng),同時擁有全球最大的開發(fā)者專業(yè)社群。
2.sql server2000簡介:SQL Server 2000是Microsoft公司推出的SQL Server數(shù)據(jù)庫管理系統(tǒng)的一個版本。該版本繼承了SQL Server 7.0版本的優(yōu)點同時又比它增加了許多更先進(jìn)的功能,具有使用方便,可伸縮性好與相關(guān)軟件集成程度高等優(yōu)點,可跨越從運行Microsoft Windows 98 的膝上型電腦到運行Microsoft Windows 2000 的大型多處理器的服務(wù)器等多種平臺使用。
二、概述
(一)需求分析
1.可行性分析:所謂可行性分析就是用最小的代價在盡可能短的時間內(nèi)確定問題是否能夠解決??尚行匝芯康淖罡救蝿?wù)是對以后的行動方針提出建議,以避免時間、資源、人力和金錢的浪費,推薦一個較好的解決方案,并且為工程制定一個初步的計劃。
(1)技術(shù)可行性:本系統(tǒng)采用sql server進(jìn)行數(shù)據(jù)的管理、操作和維護(hù),用Java進(jìn)行前臺設(shè)計、數(shù)據(jù)的錄入、修改、刪除、查詢、瀏覽、統(tǒng)計等功能。由于sql server強大的數(shù)據(jù)存儲功能、方便快捷的驗證功能、使用的靈活、良好的可擴(kuò)展性、以及廣泛實際應(yīng)用,充分說明本系統(tǒng)在技術(shù)方面的可行性。
(2)工具可行性:
軟件方面:信息時代對于軟件的應(yīng)用已不是人們的難題,人們在日常辦公中用的計算機操作的系統(tǒng)等都屬于軟件部分。
硬件方面:計算機普及到今天,人們對于它的擁有已不少見,它的硬件設(shè)備完全能夠滿足人們的需求,而價格也能被人們所接受。
(3)經(jīng)濟(jì)可行性:這是個超小型的管理系統(tǒng),從投入的人力,財力與物力來講是非常之小的,只要一臺電腦,一臺打印機,這個系統(tǒng)就可以搞起來,考慮到學(xué)校里有電腦,現(xiàn)只要購置一臺打印機就可以了。
(4)操作可行性:本系統(tǒng)設(shè)計清晰,有良好的用戶接口,操作簡潔,符合教務(wù)管理的工作需要,并達(dá)到操作過程中的直觀、方便、實用、安全等要求,因此操作方面具有可行性。
2.功能需求分析:該學(xué)生成績管理系統(tǒng)具備三方面的功能:一方面是學(xué)生用戶,學(xué)生通過輸入學(xué)號和密碼進(jìn)下該系統(tǒng)后,可以進(jìn)行一些基礎(chǔ)查詢(學(xué)生信息查詢、班級信息查詢、課程信息查詢)、成績管理(成績查詢、計算平均分)重新登陸系統(tǒng);一方面老師進(jìn)入該系統(tǒng)則比學(xué)生多一些權(quán)限:成績輸入、成績查詢。
具體功能的詳細(xì)描述如下:
(1)點擊[登陸]按鈕可以進(jìn)入管理系統(tǒng)
(2)點擊[退出]按鈕可以退出登陸界面
(3)進(jìn)入登陸界面后選擇[返回登陸]菜單可以返回登陸界面換帳號登陸
(4)選擇[信息維護(hù)]菜單點擊[個人信息]顯示數(shù)據(jù)庫中這個登陸帳號所對應(yīng)的個人信息
(5)選擇[信息維護(hù)]菜單點擊[修改信息]顯示數(shù)據(jù)庫中這個登陸帳號所對應(yīng)的個人信息,提供修改,并切一起修改數(shù)據(jù)庫對應(yīng)信息
(6)選擇[基礎(chǔ)查詢]菜單點擊[學(xué)生信息]根據(jù)登陸帳號的權(quán)限顯示信息,若是學(xué)生則顯示自己的信息,若是老師則顯示所有學(xué)生信息
(7)選擇[基礎(chǔ)查詢]菜單點擊[班級信息]根據(jù)登陸帳號的權(quán)限顯示信息,若是學(xué)生則顯示自己的班級信息,若是老師則顯示自己所教班級的信息
(8)選擇[基礎(chǔ)查詢]菜單點擊[課程信息]根據(jù)登陸帳號的權(quán)限顯示信息,若是學(xué)生則顯示自己的課程信息,若是老師則顯示所有老師的信息并顯示每個老師所教班級
(9)選擇[信息管理]菜單點擊[成績查詢]根據(jù)登陸帳號的權(quán)限顯示信息,若是學(xué)生則顯示自己的成績信息,若是老師則顯示所有學(xué)生的成績信息
(10)選擇[信息查詢]菜單點擊[計算平均分]根據(jù)登陸帳號的權(quán)限顯示信息,若是學(xué)生則顯示計算后自己每門課程平均分,若是老師則顯示所有學(xué)生計算后的每門課程的平均分
(11)選擇[幫助]菜單點擊[幫助信息]跳出幫助文檔(自己寫的txt幫助文檔)
3.性能需求分析:時間特性要求:在軟件方面,響應(yīng)時間有點慢,因為是用JFrame做的,它占用內(nèi)存比較大,更新處理時間比較快而且迅速。
安全性:設(shè)立口令號和密碼驗證方式,防止非法用戶登錄進(jìn)行操作。也就是用戶只有管理員、學(xué)生和教師才能進(jìn)入這個系統(tǒng),用戶憑口令號和密碼進(jìn)入此系統(tǒng),系統(tǒng)會自動判斷用戶是那種類型,分別擁有不同的權(quán)限。
4.數(shù)據(jù)庫需求分析:在學(xué)生成績管理系統(tǒng)中功能模塊主要牽涉到的信息包括:是學(xué)生信息(student)、班級信息(class)、課程信息(course)、成績表(chengji、選課表 、登陸表(denglu)。
學(xué)生信息:學(xué)號(id)、姓名(Sname)、班級(Sclass)、性別(Ssex)、專業(yè)(Sdept)
課程信息:課程編號(courseid)、課程名稱(coursename)、教師(teacher)、專業(yè)(Sdept)、對應(yīng)班級(Java092,測試093,測試094)
成績表:編號(coursename)、學(xué)號(id)、課程名稱(coursename)、成績(result)、教師(teacher)
班級信息:班級編號(Sclassno)、班級(Sclass)、班主任(bzr)、專業(yè)(Sdept)、課程老師(Java,English,F(xiàn)lex,Uml,Linux)
老師信息:
登陸表:口令號(id)、密碼(password)、權(quán)限(rightlimit)。
5.數(shù)據(jù)結(jié)構(gòu)分析
(1)數(shù)據(jù)結(jié)構(gòu):
學(xué)生信息={組成:{學(xué)號(id)、姓名(Sname)、班級(Sclass)、性別(Ssex)、專業(yè)(Sdept)}}
課程信息={組成:{編號(courseid)、課程名稱(coursename)、教師(teacher)、專業(yè)(Sdept)、對應(yīng)班級1(Java092)、對應(yīng)班級2(測試093)、對應(yīng)班級3(測試094)}}
成績表包括={組成:編號(courseid)、學(xué)號(id)、課程名稱(coursename)、成績(result)、教師(teacher)}}
課程信息包括={組成:課程編號(courseid)、課程名稱(coursename)、教師(teacher)}}
班級信息={組成:班級編號(Sclassno)、班級(Sclass)、班主任(bzr)、專業(yè)(Sdept)、課程老師1(Java)、課程老師2(English)、課程老師3(Linux)、課程老師4(Flex)、課程老師5(Flex)、課程老師5(Uml)}}
登陸表={組成:口令號(id)、密碼(password)、權(quán)限(rightlimit)}
(二)概要結(jié)構(gòu)設(shè)計
1.系統(tǒng)功能結(jié)構(gòu)設(shè)計
(1)模塊的功能設(shè)計:根據(jù)需求分析階段得到的功能需求,學(xué)生和教師用戶通過輸入口令號和密碼進(jìn)下該系統(tǒng)后,可以進(jìn)行一些學(xué)生基礎(chǔ)信息查詢(學(xué)生信息查詢、班級信息查詢、課程信息查詢)、學(xué)生信息維護(hù)、成績管理(成績查詢、計算平均分)重新登陸系統(tǒng)、退出。
模塊功能大概可以分為如下4個方面:這幾個模塊學(xué)生基礎(chǔ)維護(hù)、成績管理、登陸、退出。其中基礎(chǔ)維護(hù)還要包括學(xué)生信息維護(hù)、班級信息維護(hù)、課程信息維護(hù)。成績管理包括成績查詢、添加成績、成績輸入等。
2.數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計:根據(jù)需求分析階段得到的數(shù)據(jù)字典以及數(shù)據(jù)流圖,由以上分析可以得到系統(tǒng)中出現(xiàn)的實體有:學(xué)生信息實體、課程信息實體、班級信息實體、成績表實體等等。
3.邏輯結(jié)構(gòu)設(shè)計:根據(jù)上面概念結(jié)構(gòu)設(shè)計階段得得到關(guān)系模型??梢缘玫綄?yīng)的關(guān)系模式為:
student(id、Sname、Sclass、Ssex、Sdept)
Class(Sclassno、Sclass、teacher、bzr、Sdept、Java、English、Flex、Linux、Uml)
chengjibiao(coursename、id、coourseid、teacher、result)
course(courseid、coursename、teacher)
denglu(id、password、rightlimit)
4.詳細(xì)設(shè)計及功能實現(xiàn)
(1)用戶登錄模塊設(shè)計與實現(xiàn)
設(shè)計思路:為了檢驗登錄用戶是否是一個合法用戶,當(dāng)用戶輸入用戶名和密碼后,需要查詢數(shù)據(jù)庫以便驗證該用戶是否為非法用戶。同時通過用戶輸入的口令號就可知道用戶是管理員、學(xué)生,還是教師,他們的權(quán)限不同。
實現(xiàn)功能:用戶可以從登陸界面進(jìn)入到教務(wù)管理系統(tǒng)界面,然后進(jìn)行一些操作。
①登陸界面:程序設(shè)計了連接數(shù)據(jù)庫,先查詢有沒有登錄名有的話則再判斷和數(shù)據(jù)庫中登陸名是否一致,若一致則跳出成功登陸 并且彈出主界面,若不正確則彈出錯誤提示,并要求重新輸入。
②用戶名或密碼錯誤提示界面(用戶名正確但密碼錯誤或者用戶名不存在)
③權(quán)限錯誤提示界面(選擇權(quán)限與數(shù)據(jù)庫中該用戶權(quán)限不吻合)
(2)主界面模塊設(shè)計與實現(xiàn)
設(shè)計思路:為了實現(xiàn)(3)—(11)的功能來完成相應(yīng)的操作。
實現(xiàn)功能:用戶可以完成(3)—(11)所有功能。
①主界面內(nèi)容:在該界面中用戶可以根據(jù)菜單選擇相應(yīng)操作。
②[信息維護(hù)]菜單中[個人信息]之后的內(nèi)容
該功能是通過連接數(shù)據(jù)庫查詢登陸用戶的信息并把查詢結(jié)果返回給主界面中表格顯示。
③[信息維護(hù)]菜單中[修改信息]之后的內(nèi)容
該界面是通過將前一個界面的相應(yīng)信息傳給該界面,并連接數(shù)據(jù)庫,將輸入框中輸入修改的內(nèi)容返回給數(shù)據(jù)并且將數(shù)據(jù)庫中的內(nèi)容修改更新。
④[基礎(chǔ)查詢]中點擊[班級信息查詢]后的內(nèi)容(登陸權(quán)限為學(xué)生)
該功能是通過連接數(shù)據(jù)庫查詢登陸用戶所在的班級并把查詢結(jié)果返回給主界面中表格顯示。
⑤[基礎(chǔ)查詢]中點擊[課程信息查詢]后的內(nèi)容(登陸權(quán)限為學(xué)生)
該功能是通過連接數(shù)據(jù)庫查詢登陸用戶的課程信息并把查詢結(jié)果返回給主界面中表格顯示。
三、總結(jié)
綜上詳細(xì)闡述了本系統(tǒng)的整個開發(fā)過程和實現(xiàn)功能,能夠進(jìn)行學(xué)生成績信息錄入、修改、查詢、瀏覽、刪除、統(tǒng)計等操作,整體界面美觀大方,完成了教務(wù)人員對學(xué)生成績管理工作的要求,適用于一系列的教育單位。本系統(tǒng)的應(yīng)用,將會使學(xué)生和教務(wù)管理人員在第一時間內(nèi)獲得理想信息。
但是,由于一些技術(shù)和設(shè)備所限,本系統(tǒng)存在一些不足之處,有待進(jìn)一步改進(jìn)和完善,在開發(fā)過程中遇到了以下問題:
1.對后臺數(shù)據(jù)庫中數(shù)據(jù)的日常維護(hù),包括自動清理過時數(shù)據(jù);
2.程序中錯誤處理和輸入控制不夠全面,可能導(dǎo)致輸入無效引發(fā)錯誤;
3.對補考學(xué)生的處理。
參考文獻(xiàn):
[1]葉核亞.Java程序設(shè)計使用教程(第三版).電子工業(yè)出版社
[2]王珊,薩師煊.數(shù)據(jù)庫系統(tǒng)概論(第四版).高等教育出版社