剖析學(xué)生成績管理系統(tǒng)設(shè)計與實現(xiàn)的重點與難點教育文檔_第1頁
剖析學(xué)生成績管理系統(tǒng)設(shè)計與實現(xiàn)的重點與難點教育文檔_第2頁
剖析學(xué)生成績管理系統(tǒng)設(shè)計與實現(xiàn)的重點與難點教育文檔_第3頁
剖析學(xué)生成績管理系統(tǒng)設(shè)計與實現(xiàn)的重點與難點教育文檔_第4頁
剖析學(xué)生成績管理系統(tǒng)設(shè)計與實現(xiàn)的重點與難點教育文檔_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、剖析學(xué)生成績管理系統(tǒng)設(shè)計與實現(xiàn)的重點與難點:thisarticlefocusesontheanalysisofstudentachievementmanagementsystem,focusingonthesystemarchitecture,systemfunction,databasedesignandsystemimplementationandotheraspectstoillustratethedifficultiesandprioritiesinthedesignandimplementationofstudentachievementmanagementsystem1概述軟件技術(shù)

2、專業(yè)綜合實踐教學(xué)環(huán)節(jié)是畢業(yè)設(shè)計。通過畢業(yè)設(shè)計,能將學(xué)生所學(xué)的各種理論知識和職業(yè)技能聯(lián)結(jié)起來,培養(yǎng)學(xué)生的綜合能力,為學(xué)生走上工作崗位打好基礎(chǔ)。我校畢業(yè)設(shè)計采用以自主選題為主結(jié)合給定選題為輔的原則,在選題中,很多學(xué)生喜歡選擇“學(xué)生成績管理系統(tǒng)”作為自己的研究課題,究其原因?qū)W生認(rèn)為他們對“學(xué)生成績管理系統(tǒng)”這一課題的管理流程比較熟悉,但往往意識不到學(xué)生成績管理系統(tǒng)的復(fù)雜性,由于每個學(xué)校的應(yīng)用環(huán)境不一樣,業(yè)務(wù)流程不統(tǒng)一,所以許多現(xiàn)成的成績管理系統(tǒng)不是拿過來就能用的,開發(fā)符合自身學(xué)校特色的學(xué)生成績管理系統(tǒng)是十分必要。本文以筆者指導(dǎo)的2013級軟件技術(shù)專業(yè)學(xué)生開發(fā)“基于c#的學(xué)生成績管理系統(tǒng)”為例,剖析系

3、統(tǒng)設(shè)計與實現(xiàn)的重點與難點。2系統(tǒng)架構(gòu)剖析從目前應(yīng)用系統(tǒng)的發(fā)展方向看,學(xué)生成績管理系統(tǒng)理應(yīng)采用b/s結(jié)構(gòu),即瀏覽器/服務(wù)器模式,它的特點是通過瀏覽器來進入工作界面,系統(tǒng)分布性強、維護方便、開發(fā)簡單且共享性強。但就本次學(xué)生畢業(yè)設(shè)計方向看,筆者指導(dǎo)的軟件技術(shù)專業(yè)是c#winform方向,所以學(xué)生成績管理系統(tǒng)的架構(gòu)定位采用的是c/s結(jié)構(gòu),即客戶機/服務(wù)器的模式,它主要應(yīng)用于局域網(wǎng)中,針對小范圍的用戶,數(shù)據(jù)的安全性可以保證,但不能實現(xiàn)真正大范圍的信息共享、信息傳達和發(fā)布。不同的架構(gòu)技術(shù)基本決定了系統(tǒng)服務(wù)對象,基于c#的學(xué)生成績管理系統(tǒng)主要的服務(wù)對象應(yīng)該是教師用戶和教務(wù)管理員用戶,這里不考慮學(xué)生用戶。3系

4、統(tǒng)功能剖析開發(fā)一個應(yīng)用系統(tǒng)的重點是確定系統(tǒng)的功能。這就需要開發(fā)者從了解和調(diào)研用戶的業(yè)務(wù)流程和用戶的需求開始,確定系統(tǒng)的功能。業(yè)務(wù)流程不同,實現(xiàn)的功能就不同。結(jié)合我校實際情況,教務(wù)管理員的主要業(yè)務(wù)是:1)每年新生入學(xué)需要組建學(xué)生信息;2)規(guī)劃每學(xué)期每個班級的課程表;3)安排授課教師;4)學(xué)生成績管理。學(xué)生成績管理主要包括成績存檔及成績統(tǒng)計。成績存檔主要是收集學(xué)生每學(xué)期的每一門課程的平時成績、期中考試和期末考試成績等信息,并按指定的比例折算出總評成績。成績統(tǒng)計包括匯總班級成績總表、班級補考信息、單科課程的成績情況(包括計算課程平均分、統(tǒng)計各分?jǐn)?shù)段人數(shù)及占比等)及匯總出每學(xué)期每個學(xué)生的成績單。教師主

5、要業(yè)務(wù)是分階段遞交成績,負(fù)責(zé)遞交所授課程的學(xué)生平時成績,期中成績和期末成績并對缺考等情況作說明,老師應(yīng)確保上交的成績信息正確無誤。因此,在功能設(shè)計中,教務(wù)管理員在系統(tǒng)登錄后不僅可以完成學(xué)生、教師、系別、班級、學(xué)期、課程、授課等信息管理,同時還要完成成績管理模塊的功能,通過選擇學(xué)期、系別、班級及所授課程等信息后,即完成學(xué)生的成績錄入、成績修改、成績刪除、成績統(tǒng)計、成績打印等功能。4數(shù)據(jù)庫設(shè)計剖析在系統(tǒng)開發(fā)中,最難的應(yīng)該是數(shù)據(jù)庫設(shè)計。一方面,系統(tǒng)的功能規(guī)模直接影響數(shù)據(jù)庫的設(shè)計,另一方面數(shù)據(jù)庫結(jié)構(gòu)設(shè)計的好壞又直接影響系統(tǒng)的效率以及實現(xiàn)效果。如何設(shè)計合理的數(shù)據(jù)庫結(jié)構(gòu),保證數(shù)據(jù)存儲效率及方便程序的實現(xiàn)是

6、整個系統(tǒng)設(shè)計的難點和關(guān)鍵點。根前面的功能解析,能夠滿足用戶需求的實體有:管理員、授課教師、學(xué)生、班級、學(xué)期,課程、授課及成績。1)管理員(用戶名和密碼)。2)教師表(教師名、教師密碼)。3)系別表(系別編號、系別名稱)。4)班級表(班級編號、班級名稱、系別編號)。5)學(xué)生表(學(xué)號、姓名、性別、入學(xué)成績,班級編號)。6)學(xué)期表(學(xué)期編號、學(xué)期名稱)。7)課程表(課程編號、課程名稱、學(xué)時)。8)授課表(授課編號、教師名、課程號、班級號、學(xué)期編號)。9)成績表(成績編號、授課編號、學(xué)號、平時成績、期中成績、期末成績、總評成績、是否補考、補考成績、備注)。為了方便代碼編寫,可以通過視圖方式創(chuàng)建數(shù)據(jù)表與

7、數(shù)據(jù)表之間的關(guān)系,這里比較重要的視圖是成績處理視圖resultview,需要將成績表、教師表、授課表、學(xué)生表、課程表、班級表、學(xué)期表和系別表聯(lián)系起來,方便學(xué)生的成績統(tǒng)計、分析及查詢。5系統(tǒng)實現(xiàn)剖析在學(xué)生成績管理系統(tǒng)的實現(xiàn)中,學(xué)生信息、教師信息、課程信息等管理的功能基本相似,實現(xiàn)起來比較容易,這里不進行分析討論。在整個系統(tǒng)實現(xiàn)過程中,不僅要考慮到數(shù)據(jù)的完整性還要考慮到數(shù)據(jù)如何獲取。1)觸發(fā)器是sqlserver提供給程序員和數(shù)據(jù)分析員來保證數(shù)據(jù)完整性的一種方法。教務(wù)管理員在安排授課表時,每添加一條授課記錄,在成績表就應(yīng)該添加與該授課編號相關(guān)的班級學(xué)生名單,用于記錄平時成績、期中成績等。為了保證成

8、績表中學(xué)生名單準(zhǔn)確無誤且與學(xué)生信息表名單的完整性,在技術(shù)處理上,采用在授課表上需要創(chuàng)建觸發(fā)器,以實現(xiàn)每添加或刪除一條授課記錄,成績表中就批量添加或刪除授課班級的學(xué)生名單及授課號?;敬a如下:createtriggerdbo.sktrigondbo.skinfoafterinsert,deleteasbegindeclaresidint,cidintifexists(select*frominserted)beginselectsid=sid,cid=cidfrominsertedinsertintoresultinfo(stuid,sid)selectstuid,sidfromstuinfo

9、wherecid=cidendelsebeginselectsid=sidfromdeleteddeletefromresultinfowheresid=sidend2)?r總班級成績總表是學(xué)生成績管理系統(tǒng)實現(xiàn)中的難點。學(xué)期、系別、班級不同所授的課程不同。因為在匯總成績總表時,每個班級的課程名是動態(tài)的。因此在數(shù)據(jù)匯總的技術(shù)處理時,通過編制成績表的存儲過程的來實現(xiàn),并采用動態(tài)交叉表來匯總不同的系別,不同學(xué)期,不同班級的學(xué)生所學(xué)課程的總評成績,再通過數(shù)據(jù)綁定技術(shù)綁定匯總出來的交叉表,實現(xiàn)界面顯示。createproceduredbo.crosstablestrtablenamevarchar(50

10、)=,查詢的表名strcolvarchar(50)=,橫向列所在的字段名strgroupvarchar(50)=,分組名strnumbervarchar(50)=,被統(tǒng)計的列strcomputevarchar(50)=sum,運算方式intxidvarchar(50),intcidvarchar(50)asdeclarestrsqlasvarchar(1000),strtempcolasvarchar(100)execute(declarecorss_cursorcursorforselectdistinct+strcol+from+strtablename+forreadonly)生成游標(biāo)b

11、eginsetnocountonsetstrsql=select+strgroupopencorss_cursorwhile(0=0)beginfetchnextfromcorss_cursorintostrtempcolif(fetch_status0)breaksetstrsql=strsql+,+strcompute+(case+strcol+when+strtempcol+then+strnumber+else0end)as+strtempcol+endsetstrsql=strsql+,+strcompute+(+strnumber+)as總成績+from+strtablename+

12、wherecid=+intcid+andxid=+intxid+groupby+strgroupprintstrsqlexecute(strsql)iferror0returnerrorprinterrorclosecorss_cursordeallocatecorss_cursorreturn0end3)單科成績分?jǐn)?shù)段的統(tǒng)計也是學(xué)生成績管理模塊中的難點。在數(shù)據(jù)處理的技術(shù)上,需要對成績處理視圖resultview采用復(fù)雜查詢技術(shù)來實現(xiàn)。在界面實現(xiàn)上通過綁定查詢的結(jié)果進行顯示,這里以單科匯總期中成績?yōu)槔M行說明。(selectkname,selectcount(*)fromresultviewwhereqzresult=60andqzresult=70andqzresult=80andqzresult=90andkname=t.kname)as90以上fromresultviewtgrou

溫馨提示

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

評論

0/150

提交評論