王美茹
摘 要:為提高學生個性化學習效率和教師與管理員對學科系統(tǒng)資源的管理效率,文章基于ASP.NET技術,以Microsoft Visual Studio 2010為開發(fā)環(huán)境,以SQL Server 2008為后臺數(shù)據(jù)庫創(chuàng)建工具,按照軟件工程學的方法進行設計與開發(fā),完成了一個《教育技術學研究方法》在線測試系統(tǒng)。該系統(tǒng)包括管理員、教師和學生三大模塊,除了實現(xiàn)基本的信息管理、試卷制定維護、在線測試和試卷評閱外,較好地滿足了學習者對形成性評價以及與教師互動的需求。
關鍵詞:測試系統(tǒng);ASP.NET;數(shù)據(jù)庫;教育技術學研究方法
中圖分類號:TP393 ? ? ? ? ?文獻標志碼:A ? ? ? ? ?文章編號:1673-8454(2016)20-0085-05
隨著計算機多媒體和網(wǎng)絡信息技術的發(fā)展與普及,在線學習在教學和學習中所占的比重越來越大。作為在線學習的重要組成部分,在線測試系統(tǒng)已成為在線學習過程中不可或缺的一個環(huán)節(jié)。建立在互聯(lián)網(wǎng)上的在線測試系統(tǒng),客戶端配置簡單,測試不受時間和地域限制,用戶在學習過后能夠上網(wǎng)及時檢測自己的學習效果,發(fā)現(xiàn)自己的不足,從而大大提高自己的學習效率 [1]。
形成性評價是基于對學生學習全過程的持續(xù)觀察、記錄、反思而做出的發(fā)展性評價,其主要目的是為了明確活動運行中存在的問題和改進的方向,及時修改或調整活動計劃,以期獲得更加理想的效果[2]。本系統(tǒng)作為形成性評價的一種工具,可以有效激勵學生,幫助學生調控自己的學習過程,使學生獲得成就感,增強自信心,培養(yǎng)學生的合作精神。教師和管理員還可以自己添加課程、單元、試題,并可動態(tài)生成試卷,在形成性測驗中記錄下每個學生答題的時間,以便進行學習分析,并對主觀測試題給出反饋,挖掘出對改善教與學有價值的參考信息。
一、 研究現(xiàn)狀與需求分析
1.研究現(xiàn)狀
在線測試系統(tǒng)現(xiàn)已發(fā)展得較為成熟,主要經(jīng)歷了第一代計算機測試、第二代計算機自適應測試、第三代連續(xù)性測試和第四代智能化測試四個階段[3],并且在題庫建設和統(tǒng)計測量等方面取得很多顯著的理論和實踐成果,如經(jīng)典測量理論、項目反應理論、題庫理論和自適應測驗理論等,與之相適,比較著名的測試系統(tǒng)有WebCT、ASSYST、WebMCQ、愛考等。
然而在這些在線測試系統(tǒng)中,最常見的試題類型是容易實現(xiàn)自動判分和評估的客觀型試題,典型的試題類型有判斷、單項選擇、多項選擇以及填空題,這些系統(tǒng)仍未達到很好地測試學生的操作能力或者分析能力的目的。而且關于Internet環(huán)境下《教育技術學研究方法》這一學科的在線測試系統(tǒng)的研究開發(fā)目前仍處于發(fā)展階段,相關學科的在線測試系統(tǒng)仍較為少見。本文針對以上研究現(xiàn)狀,基于ASP.NET技術,以Microsoft Visual Studio 2010為開發(fā)環(huán)境,以SQL Server 2008為數(shù)據(jù)庫創(chuàng)建工具,完成了一個功能較為全面的《教育技術學研究方法》在線測試系統(tǒng)。
2.需求分析
(1)可行性研究
在系統(tǒng)開發(fā)過程中使用的SQL Server 2008和Microsoft Visual Studio 2010都是可以從網(wǎng)上免費下載的資源,因此很適合學生團體開發(fā)和使用,具有一定的經(jīng)濟可行性。目前利用c#語言構建網(wǎng)站的技術已相當成熟,且ASP技術和SQL語言相對簡單,易于上手。筆者對以上開發(fā)工具的使用較為熟練并進行過相關課程的學習,具有一定的理論基礎和實踐經(jīng)驗。因此,本課題的在線測試系統(tǒng)具有技術可行性。本系統(tǒng)是基于c#語言開發(fā)的,代碼可重用率高,操作簡單,界面友好,在局域網(wǎng)上可以正常運行,適用于集中的班級測試和分散的個人練習,便于教學過程的管理與控制,系統(tǒng)維護也相對容易,這些都保證了系統(tǒng)操作的可行性。
(2)系統(tǒng)功能分析
本系統(tǒng)實現(xiàn)的主要功能如下:
用戶登錄和退出功能:不同用戶的賬號和密碼由管理員預先設置,各用戶根據(jù)指定賬號登錄系統(tǒng)或者退出系統(tǒng)。系統(tǒng)管理員具有最高權限,可對用戶進行添加、刪除等管理操作。同時,鑒于《教育技術學研究方法》課程是院際公共平臺課,課程組包含多位任課教師,為實現(xiàn)資源共享,系統(tǒng)支持注冊多位系統(tǒng)管理員和教師角色。
個人信息管理功能:不同用戶根據(jù)指定賬號進入系統(tǒng)后,可在相關頁面進行密碼重置并查看系統(tǒng)的使用幫助。
用戶信息管理功能:管理員可以添加刪除用戶(賬號)信息并修改用戶權限。
測試章目管理功能:教師和管理員進入該模塊后,可對學科各章節(jié)進行查看、增加、刪除和修改。
試卷制定維護功能:①試卷制定。教師或管理員制定試卷時既可隨機出題也可自由出題,既可以實現(xiàn)教學過程中的形成性評價即章節(jié)性的測試,又可實現(xiàn)總結性評價即期末考試。②試卷維護。教師或管理員可對已命制好的試卷進行增、刪、改、查,并對試卷狀態(tài)即停用或可用進行設置。
用戶試卷管理功能:①試卷評閱。教師可查看測試者的作答情況、測試時間、評閱狀態(tài)等并對試卷做出評閱給出反饋,其中客觀題如單選、多選和填空題由系統(tǒng)自動給出分數(shù),主觀題如問答題則由教師進行人工閱卷評分。②用戶成績。教師可以對成績進行導出、查閱和刪除。
試題類別管理功能:此模塊主要設置了五種題型:單項選擇題、多項選擇題、填空題、判斷題和問答題。教師進入該模塊后,可根據(jù)教學進度和學生情況對題庫進行查看、增加、刪除和修改。充分體現(xiàn)出在線測試系統(tǒng)作為教學形成性評價工具對學生學習的作用。
學生測試功能:此模塊為學生測試界面,測試者可自行選擇測試章目和試卷,并可查看自己的測試成績和教師評語。
二、系統(tǒng)設計
1.系統(tǒng)功能模塊設計
本系統(tǒng)可按管理員、教師和學生用戶角色的不同劃分為三大模塊,框架圖圖1描述了系統(tǒng)內各個模塊所存在的關系、順序和管理信息流向。
2.數(shù)據(jù)庫設計
學生、教師和管理員三大模塊的數(shù)據(jù)庫信息表包括:試卷內容信息表(PaperDetail)、學生作答情況查詢信息表(UserAnswer)、控制列表信息表(TreeMenu)、用戶信息表(Users)、角色權限信息表(Role)、測試章目信息表(Course)、試卷制定維護信息表(Paper)、學生成績信息表(score)和試題類別管理信息表(class)等,以填空題為例,填空題信息表如圖2所示。
三、系統(tǒng)開發(fā)
1.用戶登錄
系統(tǒng)用戶通過此界面輸入用戶名與密碼進入系統(tǒng)進行測試,輸入正確會直接跳轉到相應主頁,輸入錯誤則會在頁面上提示錯誤并重新輸入。筆者在系統(tǒng)開發(fā)階段以管理員的身份預先設置了多個管理員、教師和學生用戶角色,如圖3所示。
登錄功能的關鍵代碼如下:
if (user.UserPwd == pwdMd5)
{if (object.Equal(Request.Cookies["UserID"], null))
{CreateCookie();}
else{CreateCookie();}
Session["userID"] = txtUserID.Text.Trim();
Response.Redirect("Default.aspx"); }[5]
2.學生在線測試
學生用戶登錄系統(tǒng)后,可根據(jù)自己的學習情況和興趣自由選擇測試卷,并可參考系統(tǒng)顯示的時間把握答題速度。測試者也可以看到自己的測試記錄和測試成績,整個前臺頁面簡潔,容易上手。如圖4所示。
3.個人信息管理
(1)使用幫助
對系統(tǒng)不熟悉的用戶可通過查看使用幫助獲得使用指南。如圖5所示。
(2)修改密碼
用戶可以根據(jù)個人需要重置密碼,有利于保障賬號的安全性,充分考慮到用戶的個人隱私。修改密碼功能的關鍵代碼為:user.ModifyPassword(this.Session["userID"].ToString())
4.用戶信息管理
具有用戶信息管理權限的用戶(管理員用戶)可以在此模塊實現(xiàn)對用戶管理和權限管理的功能。
(1)用戶管理
管理員用戶可以在此模塊對各用戶信息進行增加、刪除、更新、瀏覽、重置密碼以及設定用戶角色等。其關鍵代碼如下:
DataSet ds = user.QueryUsers();
user.DeleteByProc(userID);
user.UpdateByProc(userID);
user.ModifyPassword(UserID);
(2)權限設置
管理員用戶在此模塊對登錄到后臺的用戶進行權限設置,既保護了系統(tǒng)的安全,又分工合理,模塊功能高效而快捷。權限設置功能的關鍵代碼如下(以用戶管理為例):
if(OnLineExam.DataAccessHelper.GetSafeData.ValidateDataRow_N(dt.Rows[i], "HasDuty_UserManage") == 1)
((CheckBox)GV.Rows[i].FindControl("chkUserManage")).Checked = true;//用戶管理
if(OnLineExam.DataAccessHelper.GetSafeData.ValidateDataRow_N(dt.Rows[i], "HasDuty_CourseManage") == 1)
5.測試章目管理
管理員或教師用戶進入章目測試管理頁面后,可以在此添加、刪除或修改教育技術學研究方法各測試章節(jié),以完善測試題庫和學科內容。實現(xiàn)測試章目管理功能的關鍵代碼如下:
Course course = fresh Course();//創(chuàng)立測試章目對象
course.Name = txtName.Text;//設置測試章目對象屬性
course.InsertByProc()//調用添加測試章目方法添加測試章目
6.試卷制定維護
管理員或教師在進入系統(tǒng)后可以進行試卷的管理和維護,保障試卷的安全性、科學性和可獲得性。
(1)試卷制定
教師用戶進入模塊后,可以通過自由出題和隨機出題兩種方式編制試卷,具有較好的靈活性。筆者已在系統(tǒng)開發(fā)階段以管理員的身份針對學科中四個章節(jié)的內容生成了6套試題,學生進入前臺測試模塊后,可根據(jù)實際情況選擇不同試卷進行測試。其關鍵代碼如下:
protected void GVbind()
{ DataBase db = new DataBase();
string GridView1Str = "select * from SingleProblem";
DataSet ds1 = db.GetDataSetSql(GridView1Str);
GridView1.DataSource = ds1.Tables[0].DefaultView;
GridView1.DataBind();}
(2)試卷維護
管理員或教師用戶登錄系統(tǒng)后,可以在此頁面查看或編輯測試章目、試卷名稱、試卷狀態(tài)??梢詫υ嚲矸奖愕倪M行權限管理,保證了試卷的安全性。試卷維護功能的關鍵代碼如下:
paper.UpdateByProc(ID)//使用Paper類UpdateByProc方法修改試卷狀態(tài)
7.學生試卷管理
教師用戶登錄到系統(tǒng)后,可以對學生測試過的試卷進行評閱和成績管理,并導出成績表格,讓學生及時得到反饋,充分體現(xiàn)出本系統(tǒng)作為形成性評價工具的優(yōu)勢。
(1)試卷評閱
教師用戶進入該模塊后,可以查看測試者用戶姓名、測試時間、是否評閱等信息,也可以對所提交的試卷進行刪除。其中客觀題由系統(tǒng)自動評閱,主觀題由教師人工閱卷,對學生進行反饋互動。試卷評閱功能關鍵代碼如下:
Params1[0] = DB.MakeInParam("@PaperID", SqlDbType.Int, 4, paperID);
Params1[1] = DB.MakeInParam("@Type", SqlDbType.VarChar, 10, "單選題");
DataSet ds1 = DB.GetDataSet("Proc_PaperDetail", Params1);
GridView1.DataSource = ds1;
GridView1.DataBind();
((Label)GridView1.HeaderRow.FindControl("Label27")).Text=((Label)GridView1.Rows[0].FindControl("Label4")).Text;[6] //初始化試卷,從數(shù)據(jù)庫中將試題取出
(2)用戶成績
教師進入該模塊后可以清楚地看到學生的測試卷、測試成績、測試時間和閱卷時間等信息,也可以將學生的成績表格導出進行名詞排列。
8.試題類別管理
教師用戶進入系統(tǒng)后,在該模塊可以對題庫中的題目進行查看、修改和刪除,并可增加新題目完善題庫,保證題庫試題的時限性、正確性和科學性。其中題庫既有客觀題也有主觀題,題型共包含五大類,分別是單項選擇題、多項選擇題、填空題、判斷題和簡答論述題,使學生各方面水平充分得到測試。以單項選擇題為例,其關鍵代碼如下:
QuestionProblem questionproblem = new QuestionProblem();
Sinproblem.UpdateByProc(int.Parse(Request["ID"].ToString()))
四、系統(tǒng)功能測試
1.黑盒測試
本文主要介紹使用黑盒測試方法對系統(tǒng)功能進行測試的結果。黑盒測試是根據(jù)軟件的規(guī)格對軟件進行的測試,這類測試不考慮軟件內部的運作原理,因此軟件對用戶來說就像一個黑盒子[7]。黑盒測試也稱功能測試或者數(shù)據(jù)驅動測試,軟件測試人員從用戶的角度出發(fā),不關心程序的具體實現(xiàn)過程,通過各種輸入和觀察軟件的各種輸出結果來發(fā)現(xiàn)軟件存在的缺陷。
2.測試用例
測試用例是:管理員/教師客戶端按照出題功能描述是否能完成各類題型的出題功能,學生客戶端是否能完成在線測試功能。
3.測試結果與分析
學生客戶端測試用例如表1所示:
五、使用與推廣
任何系統(tǒng)都需要在實踐應用中不斷成熟和完善,只有在實踐中整個系統(tǒng)才會更加結構化,邏輯性更加嚴密。因此, 筆者在系統(tǒng)開發(fā)完成后以教師身份共添加了《教育技術學研究方法》科目十個章節(jié),對學科中四個章節(jié)的內容生成了6套試題,向題庫錄入300道題目,面向S大學教育技術學專業(yè)大三學生策劃組織了三次測試,對系統(tǒng)的功能、性能和安全性等進行了檢測,通過分析得出該系統(tǒng)基本功能均得以實現(xiàn):前臺完成了學生個性化的在線測試,后臺確保了系統(tǒng)穩(wěn)定、安全、健康的運行,并保障了網(wǎng)站內容的合法性。同時筆者也發(fā)現(xiàn)了一些問題并對系統(tǒng)做出了有針對性的改進。如在界面舒適度方面,學生測試界面中個人信息管理中的修改密碼占據(jù)過多主頁篇幅,根據(jù)學生的反饋意見,筆者對該頁布局進行了調整,基本達到了和諧美觀的要求;再如本系統(tǒng)在完成初期未能實現(xiàn)同一學生賬號對同一套題的重復測試,對此,筆者將代碼進行了修改,最終使得學生在做過一套試題以后可以對該套試題進行重復測試。一個相對完整的在線測試系統(tǒng)需要成千上萬道試題,編寫和測試這些試題的工作量是巨大而長期的,需要后續(xù)的使用者不斷更新和修改,從而不斷完善系統(tǒng)。
參考文獻:
[1]鄭本益.基于ASP.NET的校園考試系統(tǒng)的設計和實現(xiàn)[D].成都:電子科技大學,2012.
[2]徐天杰.構建高職外貿英語聽說課程教學形成性評價體系探討[J].現(xiàn)代企業(yè)教育,2013(22):321-322.
[3]Gawali R.D Meshram.Agent-based autonomous Examination Systems[C].Intelligent Agent& Multi-Agent Systems,IAMA 2009,International Conference,2009:1-7.
[4]吳洪艷.智慧學習視角下個性化在線學習系統(tǒng)設計與應用[J].中國電化教育,2015(6):127-131.
[5]蔡琳. “計算機應用基礎”課程考試系統(tǒng)的設計與開發(fā)[D].上海:華東師范大學,2010.
[6]袁艷軍.在線考試系統(tǒng)的設計與實現(xiàn)[D].成都:電子科技大學,2012.
[7]陳熙妍.基于工作流的報關代理管理系統(tǒng)的設計與實現(xiàn)[D].中山:中山大學,2011.
(編輯:魯利瑞)