王啟才
(北京建筑工程學(xué)院現(xiàn)代教育技術(shù)中心北京100044)
高校學(xué)生的體育成績是由該生的各體育單項考核成績、體育達(dá)標(biāo)成績以及平時成績按照一定的比例綜合評定的。各體育單項考核成績是按照教學(xué)大綱的考試標(biāo)準(zhǔn)確定,體育達(dá)標(biāo)成績則是按照《國家體育鍛煉標(biāo)準(zhǔn)》評分表進(jìn)行評定,平時成績是體育教師根據(jù)學(xué)生體育課表現(xiàn)給定的。因此,體育成績的計算較其它課程相對繁雜。此外,體育課是一門全校性的公共必修課,體育教師所授課的學(xué)生人數(shù)相對較多。因而高校學(xué)生體育成績的計算工作量很大,管理更為復(fù)雜。
通常,學(xué)生的體育課成績管理一般流程是:每學(xué)期的考試項目有三到五項,每個同學(xué)的每項成績需要通過查“考試成績對照表”,統(tǒng)計出單項成績,然后才能綜合評定計算出學(xué)生學(xué)期成績。這個計算過程非常繁瑣(單項成績相加后平均,然后乘90%,在這個基礎(chǔ)上加上態(tài)度分,再減去出勤扣分,最后才得到該同學(xué)的學(xué)期成績)。
通過手工計算來完成體育成績的評定和統(tǒng)計,計算復(fù)雜,管理過程繁瑣,教師的工作量,容易出錯。尤其在學(xué)生畢業(yè)和補(bǔ)考時,成績核對和查閱工作極為繁瑣。為了減輕教師的工作量和工作強(qiáng)度,希望通過計算機(jī)來簡化體育課成績的計算與統(tǒng)計,將繁瑣的計算工作由機(jī)器完成,并且成績自動匯入學(xué)生成績數(shù)據(jù)庫。實現(xiàn)成績數(shù)據(jù)的錄入、查詢的動態(tài)管理過程。
運用計算機(jī)計算、管理學(xué)生的體育成績不但能夠大大地減少失誤,能夠快速、準(zhǔn)確地進(jìn)行成績排序、查找、篩選、統(tǒng)計,而且能直觀地反映出各年級、各專業(yè)、各單科項目的成績分布情況,從而使體育教師對各年級、各專業(yè)、各單科項目的情況有一個直觀的、全面的掌握和了解。
系統(tǒng)開發(fā)采用快速原型法,借助于快速原型生成工具,快速完成系統(tǒng)的設(shè)計和實施,提供給用戶進(jìn)行評價。信息查詢功能作為系統(tǒng)的重要組成部分,設(shè)計和實現(xiàn)動態(tài)組合查詢模塊,使用戶能根據(jù)實際需求來設(shè)計查詢條件,從而不僅避免了重復(fù)編碼,提高了開發(fā)效率,而且提高了軟件的可靠性和重用性。
在傳統(tǒng)的軟件工程方法中,主要使用瀑布式順序開發(fā)方法,開發(fā)人員通過與相關(guān)業(yè)務(wù)人員交流或直接深入實際工作,根據(jù)原始資料寫出用戶需求說明草本。經(jīng)修改得到相關(guān)人員的確定、認(rèn)可后雙方簽字,形成合同式需求說明書。開發(fā)人員根據(jù)需求說明書進(jìn)行系統(tǒng)設(shè)計、編程。系統(tǒng)實現(xiàn)后雙方組織人員進(jìn)行測試,然后便進(jìn)入系統(tǒng)的運行、維護(hù)期。利用生命周期模式開發(fā)系統(tǒng)基于這樣兩個假設(shè):其一,用戶能清楚地、完整地提供系統(tǒng)要求;其二,開發(fā)者能完整地、嚴(yán)格地理解和定義要求。
但在實際開發(fā)中,以上兩個假設(shè)顯然很難得到滿足,首先,用戶難以準(zhǔn)確地描述出系統(tǒng)需求,多數(shù)情況下,用戶在系統(tǒng)開發(fā)初期只有一個隱約的、大致的考慮,根本不可能提出具體明確的需求。其次,用戶需求通常采用自然語言描述,自然語言本身具有兩義性,這往往使開發(fā)人員對用戶的描述產(chǎn)生誤解,從而提高了準(zhǔn)確定義用戶需求的難度。第三,由于用戶需求是通過文字或圖表定義的,要求用戶僅通過靜態(tài)的信息和靜止的畫面來認(rèn)可尚未建成的系統(tǒng)近于苛求和不切實際。第四,需求是變化的。今天整個社會都在以高速度向前發(fā)展,企業(yè)為了適應(yīng)社會,其業(yè)務(wù)也在不斷變化,從而使得其系統(tǒng)需求也在不停的變化。第五,系統(tǒng)中存在大量隱性需求。多數(shù)用戶為非軟件開發(fā)專業(yè)人員,只能提出外在的淺顯的需求,而系統(tǒng)中很多需求是隱性的和不易挖掘的,對于這種需求,只有通過開發(fā)人員和用戶深入的交流才能被發(fā)現(xiàn)。
快速原型法是首先構(gòu)造一個功能簡單的原型系統(tǒng),然后通過對原型系統(tǒng)逐步求精,不斷擴(kuò)充和完善從而得到最終的軟件系統(tǒng)??焖僭头ǖ暮诵氖窃?,是系統(tǒng)的早期可運行版本。隨著用戶和開發(fā)者對系統(tǒng)理解的加深,不斷地對原型進(jìn)行補(bǔ)充和細(xì)化。系統(tǒng)的定義是在逐步發(fā)現(xiàn)的過程中進(jìn)行,快速原型法的最大優(yōu)點是能使系統(tǒng)功能正確反映用戶的需求。采用快速原型法,系統(tǒng)主要包括如下主要功能模塊:
此部分主要完成兩個功能:其一,體育項目管理。系統(tǒng)管理員使用該功能,實現(xiàn)體育項目的添加、修改、刪除、打印。其二,項目評分表管理。對于需要依據(jù)評分表進(jìn)行評分的體育單項,設(shè)定其評分表。系統(tǒng)管理員使用該功能,可以為每個評分項目確定評分標(biāo)準(zhǔn),并可以編輯、打印、查詢評分標(biāo)準(zhǔn)。
教師使用此功能模塊,生成其指定學(xué)期的上課學(xué)生名冊和教授的體育項目清單,并可對學(xué)生名冊進(jìn)行添加、修改、刪除、打印、查詢學(xué)生信息等操作,可對體育項目清單進(jìn)行添加、刪除、打印等操作。
主要完成學(xué)生單項成績的輸入、修改、計算、查詢;學(xué)生總評成績的計算、分析,以及學(xué)生總評成績單的匯總、打印和導(dǎo)出。
通常,開發(fā)人員會根據(jù)不同的查詢條件而設(shè)計成的查詢界面,使得軟件的查詢模塊需要隨著需求的變化而重新設(shè)計。實現(xiàn)動態(tài)查詢功能,不僅避免了重復(fù)編碼,提高了開發(fā)效率,而且提高了軟件的可靠性和重用性。動態(tài)查詢模塊應(yīng)滿足如下這些要求:
1、查詢條件完全取決于用戶的需求,可以隨意創(chuàng)建,沒有任何的限制。因此,在事先不知道用戶如何定義查詢條件的情況下,要適時獲取用戶的需求,并能按語法規(guī)則動態(tài)正確地生成SQL查詢語句和查詢結(jié)果;
2、能夠提供對各種數(shù)據(jù)庫管理系統(tǒng)的支持;
3、查詢內(nèi)容可以是任意表、任意字段的組合;
4、由于系統(tǒng)的用戶往往是非計算機(jī)專業(yè)人員,因此查詢界面設(shè)計要求直觀、友好,盡可能實現(xiàn)透明的查詢;
5、具有容錯性,允許用戶操作失誤,對用戶的誤操作給予明確的提示并及時糾正,避免造成系統(tǒng)故障或崩潰。
信息查詢是根據(jù)用戶的需要篩選出符合條件的信息,其實質(zhì)是根據(jù)用戶的需求動態(tài)生成SQL語句中的Where子句中的搜索表達(dá)式。因此,只要能設(shè)計出某種方法,能動態(tài)的生成SQL語句中的Where子句中的搜索表達(dá)式,就可以實現(xiàn)動態(tài)查詢。動態(tài)查詢模塊的設(shè)計就是依據(jù)此原理,根據(jù)用戶確定的查詢條件,生成相應(yīng)的搜索表達(dá)式。
Where子句中的搜索表達(dá)式是由主表字段、關(guān)聯(lián)表字段和各種常量構(gòu)成。要想動態(tài)的構(gòu)成搜索表達(dá)式,首先是必須能正確地識別出這些內(nèi)容;其次,一個復(fù)雜查詢通常由是一個主表關(guān)聯(lián)多個從表組成,其搜索內(nèi)容多種多樣,搜索表達(dá)式的構(gòu)成復(fù)雜;第三,數(shù)據(jù)表中字段的數(shù)據(jù)類型不同,其表達(dá)式表述形式不同。根據(jù)上述分析,筆者設(shè)計一個專門用于存儲查詢項的數(shù)據(jù)字典,程序由數(shù)據(jù)字典中讀出查詢項信息,依據(jù)這些信息來構(gòu)建搜索表達(dá)式。
在實際軟件系統(tǒng)開發(fā)中,由于用戶通常難以準(zhǔn)確地描述出系統(tǒng)需求,使得系統(tǒng)開發(fā)完畢后,不能很好地滿足用戶需求,達(dá)不到預(yù)期目標(biāo)。系統(tǒng)采用快速原型法,使用快速開發(fā)工具,構(gòu)建出一個系統(tǒng)原型,通過對原型的不斷修改來明確用戶的需求,從而構(gòu)建出滿足用戶需求的系統(tǒng)。信息查詢是系統(tǒng)的重要功能,通過動態(tài)組合查詢條件,有效地提高了查詢的靈活性,既方便了開發(fā)人員,也方便了用戶的使用。
高校體育成績管理系統(tǒng)的研制,大大提高了工作效率,同時也加強(qiáng)了學(xué)生、教師、各級教務(wù)管理人員之間的聯(lián)系與合作。對高校體育教學(xué)管理工作的科學(xué)化、規(guī)范化和計算機(jī)網(wǎng)絡(luò)化的實施提供了有力的支持。
[1]Steve Teixeira,Xavier Pacheco.Delphi5開發(fā)人員指南[M].北京:機(jī)械工業(yè)出版社.2000.
[2]Richard Anderson,Chris Blexrud.ASP 3高級編程[M].北京:機(jī)械工業(yè)出版社.2000.
[3]李維.Delphi5.x分布式多層應(yīng)用系統(tǒng)篇[M].北京:機(jī)械工業(yè)出版社.2000.
[4]李維.Delphi5.x ADO/MTS/COM+高級程序設(shè)計篇[M].北京:機(jī)械工業(yè)出版社.2000.