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