郭文杰,郭成林
(太原理工大學(xué),山西 榆次 030600)
基于WEB的全國計(jì)算機(jī)等級考試報(bào)名系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
郭文杰,郭成林
(太原理工大學(xué),山西 榆次 030600)
根據(jù)多年組織NCRE考試的經(jīng)驗(yàn),通過對考試報(bào)名系統(tǒng)的細(xì)致分析,研制了基于WEB的網(wǎng)上報(bào)名系統(tǒng)。該系統(tǒng)采用B/S結(jié)構(gòu),在實(shí)踐中取得了良好的效果,減輕了考務(wù)人員的工作負(fù)擔(dān)。
NCRE;中間件;B/S
全國計(jì)算機(jī)等級考試(National Computer Rank Examination,簡稱NCRE)是經(jīng)原國家教育委員會(huì)(現(xiàn)教育部)批準(zhǔn),由教育部考試中心主辦,面向社會(huì),用于考察應(yīng)試人員計(jì)算機(jī)應(yīng)用知識(shí)與技能的全國性計(jì)算機(jī)水平考試體系。
NCRE考試在全國范圍內(nèi)已經(jīng)開展了多年,但其報(bào)名系統(tǒng)仍然采用的是手工填報(bào)或者是機(jī)讀卡報(bào)名:手工報(bào)名方式速度慢,易出錯(cuò),加之報(bào)名時(shí)間短,對各考點(diǎn)的考務(wù)工作造成很大的壓力;而機(jī)讀卡報(bào)名設(shè)備昂貴,使用及維護(hù)成本高,對于中小考點(diǎn)來說難以承受。筆者根據(jù)多年組織報(bào)考經(jīng)驗(yàn),自行研發(fā)了網(wǎng)上報(bào)名系統(tǒng),與考試中心下發(fā)的報(bào)名系統(tǒng)實(shí)現(xiàn)了無縫對接,大大減輕了考務(wù)人員的工作負(fù)擔(dān)。
NCRE考務(wù)軟件采用SQL-SERVER作為自己的核心數(shù)據(jù)庫,不過,中間交換數(shù)據(jù),包括導(dǎo)入導(dǎo)出的數(shù)據(jù)都是采用DBF格式的文件。
NCRE導(dǎo)入導(dǎo)出的報(bào)名數(shù)據(jù)是一個(gè)ZIP壓縮包,其中至少包含兩個(gè)文件,一個(gè)名為bmk.dbf,另一個(gè)名為Export.xm l。而bmk.dbf就是包含考生報(bào)名信息的數(shù)據(jù)表。
通過試驗(yàn)得知,只要將制好的報(bào)名數(shù)據(jù)追加到NCRE考務(wù)軟件導(dǎo)出的bmk.dbf中,然后將修改后的導(dǎo)出文件重新導(dǎo)入到NCRE考務(wù)軟件里,其效果和直接錄入的沒有區(qū)別。
bmk.dbf表的數(shù)據(jù)結(jié)構(gòu)。該數(shù)據(jù)表中,xh字段并不是bmk中原有的字段,但因?yàn)閎mk缺少一個(gè)穩(wěn)定的字段做主字段,所以選擇學(xué)籍庫中的學(xué)號(hào)字段增加到數(shù)據(jù)表中,當(dāng)然,最終導(dǎo)入報(bào)名系統(tǒng)的時(shí)候,刪除該字段即可。
而 xm、xb、csrq、mz、sfzh、zy、whcd共 7 個(gè)字段由學(xué)籍庫導(dǎo)出,yzkzh,blcjzl,kspxzl,kspxzl,lxdz,lxdh由學(xué)生在網(wǎng)上報(bào)名的時(shí)候提供。zkzh,bmh由系統(tǒng)自動(dòng)生成,其中報(bào)名號(hào)的格式為:六位的考點(diǎn)編號(hào)加上兩位的報(bào)考等級編號(hào)再加上六位的流水號(hào);而準(zhǔn)考證號(hào)則由兩個(gè)“0”加上報(bào)名號(hào)組成。
表1
NCRE考試是面向社會(huì)的一種考試,但絕大多數(shù)考點(diǎn)都是由學(xué)校承擔(dān)。根據(jù)報(bào)考人員的類型,我們將考點(diǎn)分為兩種,一種是面向全體社會(huì)人員,其考生來源復(fù)雜。另一種則是面向單位內(nèi)部人員(如學(xué)生),其考生來源簡單。
對于第一類考點(diǎn),如果采用網(wǎng)上報(bào)名的話,一般應(yīng)采用注冊——登錄模式,這種方式不受自有數(shù)據(jù)的限制,可以不停地追加新用戶,所有信息均由考生本人提供。但也正因?yàn)槿绱耍紫葧?huì)產(chǎn)生大量的無效注冊信息。因?yàn)榭荚噲?bào)名不像QQ、購物、網(wǎng)銀等有穩(wěn)定的客戶群,事實(shí)上,絕大多數(shù)人一生只會(huì)報(bào)考一次。其次,注冊——登陸模式在實(shí)踐中有著較高的失誤率,特別是考生身份證號(hào)等關(guān)鍵信息的錄入,經(jīng)過統(tǒng)計(jì),信息的出錯(cuò)率可達(dá)到4%,而且,其中35%以上的錯(cuò)誤,在考生簽字核對階段是發(fā)現(xiàn)不了的,而直到發(fā)準(zhǔn)考證甚至發(fā)考試合格證的時(shí)候才會(huì)發(fā)現(xiàn)。筆者所負(fù)責(zé)的考點(diǎn)在早期采用的就是這種報(bào)名方式,正是由于考點(diǎn)的特點(diǎn)與之不符,所以我們最終放棄了這種報(bào)名方式。
對于第二類考點(diǎn),一般不接受本單位以外的考生,像筆者所負(fù)責(zé)的考點(diǎn)目前就是這樣,作為高??键c(diǎn),一般只接收在校學(xué)生的報(bào)名。加之注冊——登錄模式較高的失誤率。所以我們?nèi)∠丝忌缘沫h(huán)節(jié),直接同在校學(xué)生學(xué)籍庫實(shí)現(xiàn)對接。從學(xué)籍庫中取出姓名、性別、身份證號(hào)等個(gè)人信息。讓考生在登錄界面僅需要輸入學(xué)號(hào)和身份證號(hào),就可以登陸考試報(bào)名系統(tǒng)。
對于網(wǎng)上報(bào)名方式的選擇,應(yīng)當(dāng)根據(jù)考點(diǎn)的特點(diǎn)、規(guī)模、資源等多方面因素綜合考量。
圖1 注冊登錄模式流程圖
NET是Microsoft公司最新推出的一個(gè)XML Web services平臺(tái),具有執(zhí)行效率高、功能強(qiáng)大、適應(yīng)性強(qiáng)、簡單易學(xué)等特點(diǎn),故我們采用NET作為開發(fā)平臺(tái)。
數(shù)據(jù)庫方面,如果考點(diǎn)規(guī)模較大,可以采用SQL-SERVER等大型數(shù)據(jù)庫,其功能較強(qiáng),在并發(fā)數(shù)據(jù)處理上性能很好,但對于配置服務(wù)器、數(shù)據(jù)庫等方面有較高要求;如果考點(diǎn)規(guī)模較小,可以采用ACCESS數(shù)據(jù)庫,其支持網(wǎng)絡(luò)連接、小巧精干、易學(xué)易用,但當(dāng)并發(fā)數(shù)據(jù)量太大時(shí),可能出現(xiàn)死機(jī)情況。
圖2 登錄報(bào)名模式流程圖
體系結(jié)構(gòu)我們采用B/S(Browser/Server)模式,即瀏覽器和服務(wù)器結(jié)構(gòu)。它是隨著Internet技術(shù)的興起,對C/S結(jié)構(gòu)的一種變化或者改進(jìn)的結(jié)構(gòu)。在這種結(jié)構(gòu)下,用戶工作界面是通過WWW瀏覽器來實(shí)現(xiàn),極少部分事務(wù)邏輯在前端(Browser)實(shí)現(xiàn),但是主要事務(wù)邏輯在服務(wù)器端(Server)實(shí)現(xiàn),形成所謂3層3-tier結(jié)構(gòu)。該結(jié)構(gòu)大大簡化了客戶端電腦載荷,減輕了系統(tǒng)維護(hù)與升級的成本和工作量,降低了用戶的總體成本。以目前的技術(shù)看,局域網(wǎng)建立B/S結(jié)構(gòu)的網(wǎng)絡(luò)應(yīng)用,并通過Internet/Intranet模式下數(shù)據(jù)庫應(yīng)用,相對易于把握、成本也是較低的。它能實(shí)現(xiàn)不同的人員,從不同的地點(diǎn),以不同的接入方式(比如LAN,WAN,Internet/Intranet等)訪問和操作共同的數(shù)據(jù)庫;它能有效地保護(hù)數(shù)據(jù)平臺(tái)和管理訪問權(quán)限,服務(wù)器數(shù)據(jù)庫也很安全。
注冊登錄模式見圖1,分為注冊、報(bào)名兩個(gè)部分,考試需要先注冊成合法用戶,然后才能登陸報(bào)名。
登陸報(bào)名模式見圖2,報(bào)名人員直接登陸即可。
//按鈕:“提交報(bào)名信息”
//功能:將學(xué)生填好的報(bào)名信息導(dǎo)入數(shù)據(jù)庫
protected void Bsave_Click1(objectsender,EventArgs e)
{
string strConnection="Provider=Microsoft.Jet.OLEDB.4.0; Data Source="+Server.MapPath(".")+"..\App_Data/bmk.mdb;";
string Tb_xh=Txh.Text.ToString();string tj_bmk="update bmk set"+
"zkzh='"+DDLbkjbyy.SelectedValue+"',"+
"blcjzl='"+DDLblcjzl.SelectedValue+"',"+
"kspxzl='"+DDLcjpx.SelectedValue+"',"+
"yzkzh='"+Tyzkzh.Text+"',"+
"lxdh='"+Tlxdh.Text+"'"+
"where xh='"+Tb_xh+"'";
OleDbConnection myConn_last=new OleDbConnection(strConnection);
OleDbCommand tjCmd=new OleDbCommand(tj_bmk,myConn_last);
tjCmd.Connection.Open();
tjCmd.ExecuteNonQuery();
tjCmd.Connection.Close();
Response.Wr ("");//關(guān)閉現(xiàn)有頁面,打開注冊結(jié)束頁面
}
}
計(jì)算機(jī)是一門面向應(yīng)用的學(xué)科,它的推廣改變了我們看待事物的方式,變革了我們解決問題的方法。通過對NCRE考試報(bào)名系統(tǒng)的分析,結(jié)合自身考點(diǎn)特性,最終開發(fā)出了可行的解決方案,使考務(wù)人員的工作模式發(fā)生了根本性改變。除此之外,該方案還可以推而廣之,作為學(xué)籍庫同其他異構(gòu)數(shù)據(jù)庫的中間件,與CET報(bào)名、選課報(bào)名等等系統(tǒng)結(jié)合,成為一個(gè)不同數(shù)據(jù)相互轉(zhuǎn)換、綜合利用的中間件。
[1] 高傳善.數(shù)據(jù)通信與計(jì)算機(jī)網(wǎng)絡(luò).[M].高等教育出版社2004
[2] 翁健紅.基于C#的ASP.NET程序設(shè)計(jì).[M]機(jī)械工業(yè)出版社,2007
[3] 史紅梅.教學(xué)管理信息系統(tǒng)的設(shè)計(jì)與開發(fā).[D]山東大學(xué)碩士學(xué)位論文,2010
The Design and Implementation of W eb-based National Computer Rank Examination
Guo Wenjie,Guo Chenglin
According to the several years’experiences of organizing NCRE, I analyzed the examination system seriously and developed the WEB-based enrolling system on Internet.The system uses the B/S structure,It has achieved good effect in practice,reduced the burden of the laborers.
NCRE;Middleware;B/S.
TP315
A
1000-8136(2010)32-0134-03