- 相關(guān)推薦
考試分析管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)的論文
目前,由于我國的考生人數(shù)不斷增加,教師的工作量日益增加。而一場(chǎng)考試的各項(xiàng)數(shù)據(jù)指標(biāo)是衡量教師工作情況和學(xué)生學(xué)習(xí)情況的重要指標(biāo)?荚嚪治鲕浖侵父鶕(jù)學(xué)生考試成績(jī)快速分析數(shù)據(jù)庫的應(yīng)用程序?荚嚪治龉芾硐到y(tǒng)使用數(shù)據(jù)庫開發(fā)工具,利用繼承、封裝的方法,建立了易于維護(hù)的數(shù)據(jù)庫應(yīng)用軟件。軟件的設(shè)計(jì)以實(shí)用性、易用性為前提,允許教師輸入相應(yīng)的評(píng)語,并有打印和數(shù)據(jù)導(dǎo)入功能,能以圖表的方式將數(shù)據(jù)顯示在用戶界面上,直觀地表現(xiàn)了考試分析結(jié)果,體現(xiàn)了Windows程序易用性的特點(diǎn)。
1面向?qū)ο蟮姆治龊驮O(shè)計(jì)
面向?qū)ο蠓治龊驮O(shè)計(jì)是當(dāng)前最流行的應(yīng)用系統(tǒng)的分析和設(shè)計(jì)方法,其特點(diǎn)在于將系統(tǒng)中的各要素以對(duì)象的形式進(jìn)行抽象,并提取出關(guān)鍵抽象。具體的面向?qū)ο蠓治鲈O(shè)計(jì)方法,比如UML不在本文的論述范圍內(nèi)。由于考試分析系統(tǒng)較為簡(jiǎn)單,在此只進(jìn)行簡(jiǎn)單分析。在數(shù)據(jù)庫應(yīng)用系統(tǒng)中,所有的系統(tǒng)模塊可分為系統(tǒng)的客戶端界面和相應(yīng)的數(shù)據(jù)庫處理模塊。在設(shè)計(jì)過程中,對(duì)上述二者的處理應(yīng)盡量分開,即隔離界面的修改與數(shù)據(jù)庫數(shù)據(jù)流程的修改,這樣有利于應(yīng)用系統(tǒng)的維護(hù)。數(shù)據(jù)庫中的對(duì)象分為考試、學(xué)生分?jǐn)?shù)、成績(jī)分布直方圖和編碼表等。為了實(shí)現(xiàn)這些對(duì)象的編程,必須使用面向?qū)ο蟮木幊碳夹g(shù)。在面向?qū)ο蟮木幊讨,類由屬性和屬性上的方法?gòu)成,對(duì)象是類的實(shí)例化。
2PowerBuild應(yīng)用程序設(shè)計(jì)
PowerBuild采用獨(dú)特的數(shù)據(jù)窗口對(duì)象,使數(shù)據(jù)庫數(shù)據(jù)的相關(guān)錄入、編輯、報(bào)表制作非常方便。
2.1與數(shù)據(jù)庫的連接
PowerBuild是一種非常方便的數(shù)據(jù)庫應(yīng)用開發(fā)工具,其可利用多種方法與數(shù)據(jù)庫建立連接,并提供多種方法實(shí)現(xiàn)與數(shù)據(jù)庫的數(shù)據(jù)交互。以下為一段簡(jiǎn)單的數(shù)據(jù)庫連接代碼:sqlca.database=ksfx//數(shù)據(jù)庫名sqlca.logid=sa//登錄名sqlca.logpass="*******"//密碼sqlca.servername=ksfx_server//服務(wù)器名sqlca.DBMS="MSSMicrosoftSQLServer6.x"//DBMS類型為MSSQLSERVERconnectusingsqlca;在PowerBuild與數(shù)據(jù)庫的交互過程中,所有與數(shù)據(jù)庫交互的語句,比如CONNECT、嵌入式SQL都需要在語句結(jié)束后加上“;”。
2.2嵌入式SQL
PowerBuild可直接在應(yīng)用程序中使用嵌入式SQL,嵌入式SQL可使PowerBuild與數(shù)據(jù)庫的交互更加簡(jiǎn)單、快捷。但有時(shí)用戶需要進(jìn)行一些數(shù)據(jù)錄入、修改工作,這些工作都是在DataWindow上進(jìn)行的。數(shù)據(jù)窗口是PowerBuild的可視控件之一,每個(gè)數(shù)據(jù)窗口都與1個(gè)數(shù)據(jù)源相連接,該數(shù)據(jù)源就是1條SELECT語句。數(shù)據(jù)窗口實(shí)質(zhì)上是利用1個(gè)SQLCA對(duì)象訪問該數(shù)據(jù)源,從數(shù)據(jù)源中提取數(shù)據(jù),并以用戶自定義的格式將數(shù)據(jù)顯示出來的方式。
2.3數(shù)據(jù)源
用戶可使用Insertrow、Deleterow插入、刪除新行,也可直接在可視界面上修改記錄,但是這些修改都不會(huì)實(shí)時(shí)寫入數(shù)據(jù)庫。只有當(dāng)執(zhí)行Update方法時(shí),數(shù)據(jù)庫才會(huì)將修改過的數(shù)據(jù)記錄以SQL命令的形式發(fā)送至數(shù)據(jù)庫。如果發(fā)送失敗,則Update的反饋信息為“-1”。此時(shí),用戶可通過SQLCA對(duì)象中的相應(yīng)屬性(SQLDBCode、SQLErrText)了解具體出錯(cuò)的代碼及出錯(cuò)原因;如果修改成功,則Update的反饋信息為“1”。
3考試系統(tǒng)的設(shè)計(jì)
3.1考試分析窗口
考試分析窗口是考試分析的主窗口,也是該系統(tǒng)應(yīng)用中最重要的窗口,如圖1所示。該窗口由活頁夾(考試分析、圖示、錄入考試評(píng)語)組成。考試分析項(xiàng)主要是指考試的各項(xiàng)指標(biāo),比如平均成績(jī)、難度系數(shù)等。圖示中會(huì)生成考試成績(jī)的直方圖,考試評(píng)語為手工輸入的教師評(píng)語。該窗口左上方有1個(gè)小數(shù)據(jù)窗口,這個(gè)數(shù)據(jù)窗口采用了下拉子數(shù)據(jù)窗口的方式,可為用戶提供自由輸入考試編碼的界面,從而幫助用戶確定需要分析考試的場(chǎng)次。此外,統(tǒng)計(jì)按鈕用于生成數(shù)據(jù)統(tǒng)計(jì),保存按鈕用于保存教師輸入的評(píng)語。在統(tǒng)計(jì)按鈕的設(shè)計(jì)中,用戶可從小數(shù)據(jù)窗口中提取考試數(shù)據(jù),并調(diào)用窗口方法wf_ksfx計(jì)算、分析各類考試數(shù)據(jù),比如最高分、最低分、平均分、人員總數(shù)、難度系數(shù)和標(biāo)準(zhǔn)偏差;將統(tǒng)計(jì)出的數(shù)據(jù)插入到dw_2的相關(guān)數(shù)據(jù)字段中,數(shù)據(jù)窗口會(huì)自動(dòng)繪制相關(guān)的直方圖。
3.2系統(tǒng)測(cè)試
針對(duì)數(shù)據(jù)庫應(yīng)用程序的特點(diǎn),測(cè)試主要圍繞數(shù)據(jù)庫進(jìn)行。對(duì)于數(shù)據(jù)錄入程序,分別以插入多行、一行、空行測(cè)試,并錄入了錯(cuò)誤數(shù)據(jù),比如重復(fù)編碼等;對(duì)于考試分析程序,分別統(tǒng)計(jì)了一行、多行、空記錄,從而檢驗(yàn)程序的健壯性。經(jīng)過測(cè)試發(fā)現(xiàn)了一系列錯(cuò)誤,比如,如果統(tǒng)計(jì)時(shí)無考試成績(jī),系統(tǒng)會(huì)用0除以分母。因此,對(duì)該錯(cuò)誤進(jìn)行了預(yù)處理。