時間:2023-05-30 09:38:27
開篇:寫作不僅是一種記錄,更是一種創(chuàng)造,它讓我們能夠捕捉那些稍縱即逝的靈感,將它們永久地定格在紙上。下面是小編精心整理的12篇數(shù)據(jù)結構試題及答案,希望這些內容能成為您創(chuàng)作過程中的良師益友,陪伴您不斷探索和進步。
Abstract: Exam question bank is made according to a certain kind of index which based on a theoretical and maehemetical medels with the feature of being consistent with a discipline or course of target detection ability of all the knowledge contained in the many questions asked. It is a collection system of stoarge, indentification of delection, sampling and examing function. Exam question bank examiniation is objectivly impartial. China's exam question bank construction is relatively late, the related subject's exam question bank construction is in the process of improvement. Starting from the necessarity of building of the exam question bank and the overall data structure of the bank and the design of bank management system, the develop of college exam question bank management is discussed.
關鍵詞:題庫管理系統(tǒng);數(shù)據(jù)庫;開發(fā)平臺
Key words: exam question bank management system; database; development platform
中圖分類號:TP39 文獻標識碼:A文章編號:1006-4311(2010)36-0225-01
1建立題庫系統(tǒng)的必要性
1.1 題庫應用技術推廣以后,教師將告別手工命題的傳統(tǒng)方式,只要通過鍵盤操作就能讓計算機自動產(chǎn)生高質量的試卷。這對于提高教學質量管理水平,對于逐步實現(xiàn)教師辦公自動化等都有重要意義。
1.2 題庫是大批優(yōu)良試題的儲存庫,凡是入庫的試題都是經(jīng)過嚴格篩選,并按合理的原則組織起來的,其技術參數(shù)、質量指標(如難度、區(qū)分度等)是經(jīng)過測定的。
1.3 題庫內的全部試題都具有標準統(tǒng)一的技術參數(shù),便于人們按照一定的科學程序,按試題已有的技術參數(shù)挑選試題,優(yōu)化組合成內容、性質、難度等各不相同的試卷,使試卷符合預定的各項質量指標,保證考試的信度和效度。
1.4 由計算機管理題庫,自動化程度高,可大大提高命題工作的效率,減輕命題教師負擔。計算機題庫系統(tǒng)具有自動尋找的功能,便于教師通過手指擊鍵、自行選題編卷。利用這種管理系統(tǒng)還能讓計算機根據(jù)命題要求自動自成試卷,自動完成試卷及考分的等值處理,必要時還能生成互相等值的平行試卷,能客觀地比較歷次考試的不同水平。
1.5 利用題庫系統(tǒng)自動生成試卷,要求命題者事先制訂好詳細的命題計劃,并按規(guī)定輸入有關信息,這有助于克服命題的盲目性和隨意性,使命題過程規(guī)范化。
2題庫總體數(shù)據(jù)結構
對于較大的題庫系統(tǒng),其試題庫總體結構是分層分塊的,總庫下有子庫,子庫中有分庫等。試題信息常按題文(題目中的文字部分)、題圖(題目中的附圖)、答文(答案信息為文字)、答圖(答案信息為圖形)、屬性指標等分類,分別存放于不同的子庫當中;全部試題又常按課程的內容、或題型、或按測試目標層次分類存儲,這樣每個子庫被相應地分成若干分庫。各個子庫要設定相同的關鍵字,利用關鍵字把同一道試題的各種信息聯(lián)系在一起(例如同題號作關鍵字,那么在各子庫中部應有題號這個數(shù)據(jù)項)。為了提高檢索和庫管理速度,一般要根據(jù)需要建立各種索引文件,如對各個子庫建立各分庫的題號索引,以指出各分庫中存放的試題題號范圍。通常可用分庫中第一個試題的題序號和該庫中存放的試題總數(shù)目來標明該范圍(因題庫中題號是有順序的,題目按題號有序地存儲在分庫中)。
設計題庫總體數(shù)據(jù)結構時要考慮圖形存儲問題。許多學科題庫都不可避免地存儲帶有圖形的試題,而圖形需要占據(jù)大量存儲空間,應采用數(shù)據(jù)壓縮技術來解決節(jié)省圖形存儲空間的問題。有關壓縮存儲的方法很多,針對不同學科的圖形特點可設計不同的方法來實現(xiàn)圖形數(shù)據(jù)壓縮。例如,將試題中的圖形以圖段拼成,而圖段則由一些圖元組成,每個圖元給予不同的編碼,不同的編碼值代表不同的作圖算法,然后用參數(shù)表明圖的大小及它的相對位置。這樣使用適當?shù)木庉嬅睿湍芎芊奖愕乩L制題目中所需要的圖形。可以看出,這種方法已把一幅圖形變成一些代碼和參數(shù)存儲起來。當圖形顯示時,失調出相應的圖形記錄,分解并翻譯那些代碼和參數(shù),然后根據(jù)代碼值所表示的算法,繪出每個圖段的各圖形元,這樣一幅題圖就顯示出來。
3題庫管理系統(tǒng)的設計
3.1 數(shù)據(jù)庫和表的設計。數(shù)據(jù)層在分布式三層體系結構中處于最底層,提供數(shù)據(jù)存取及處理服務。在所有的MIS系統(tǒng)的事務處理過程中,數(shù)據(jù)庫處于核心地位。由于本系統(tǒng)涉及大量數(shù)據(jù)存貯、管理與檢索,需要有高性能的后臺數(shù)據(jù)庫支持,選擇合適的數(shù)據(jù)庫是很重要的,目前大型數(shù)據(jù)庫有不少,候選的主要有Oracle、DB2、SQLServer。通過對其性能及功能的綜合比較,以SQLServer2000作為首選數(shù)據(jù)庫。
利用SQLServer2000管理工具創(chuàng)建一個數(shù)據(jù)庫,命名為TK,即題庫數(shù)據(jù)庫。配置好連接數(shù)據(jù)庫的用戶及權限,再建立數(shù)據(jù)表和數(shù)據(jù)表之間的關系。
3.2 系統(tǒng)功能設計。題庫管理系統(tǒng)包括用戶管理、課程管理、題庫管理、試題組卷和退出題庫等五大功能模塊。用戶管理包括對用戶信息、課程信息和考生信息的管理;課程管理包括課程清單、錄入課程信息、課程信息列表幾項子功能;題庫管理主要是由任課教師根據(jù)所授課程,按照章節(jié)、知識點、題型、難度實現(xiàn)試題的錄入、修改、刪除、保存和查詢等功能;試題組卷功能是由任課教師根據(jù)所授課程試題信息按組卷策略算法組成試卷,并可將組卷方案保存,備日后查看。或著直接生成Word文檔,供學生考試之用。
綜上所述,題庫建設是高校課程建設的重要內容,它對提高教學質量有著至關重要的意義。利用計算機數(shù)據(jù)庫技術,開發(fā)試題庫管理系統(tǒng),可以達到試卷的自動生成,信息全面快捷的查找和方便的管理操作,大大節(jié)省了教師組卷時間,提高了工作效率,并且為學校的教務管理提供了較好的管理方法,能夠充分地實施考教分離, 提高了教學質量,促進了教師教書育人的積極性,進一步提高了學校的辦學水平。
參考文獻:
[1]夏幫貴,郭勝,等.SQLSEVER數(shù)據(jù)庫開發(fā)入門與范例解析[M].北京:機械工業(yè)出版社.
[2]何克抗.建立題庫的理論[C]//全國CBE學會第七屆學術會議論文集.長沙:國防科技大學出版社,1995.
【關鍵詞】題庫;組卷;組卷策略;人工設置
1引言
目前,市面上的題庫軟件為數(shù)不少,但能投入實用的卻不多,原因當然是多方面的。有的是因為組建題庫的困難太大,有的是因為題型單一,還有很大一部分原因是組卷方式死板,不能符合教師的要求。因此,要設計一款針對學校日常考試的具有較強可用性的通用題庫軟件,除了要解決建庫難、題型少等問題外,還必須具備一種靈活實用、符合教師思維習慣的組卷策略,只有這樣才能使命題教師靈活運用該題庫軟件得心應手地進行組卷。否則,一種組卷算法即使在理論上是無懈可擊的,但如果它所用的思維方式與命題教師日常組卷所用的思維方式有很大的差別的話,那也會遭到命題教師的排斥從而不利于題庫系統(tǒng)的推廣使用。
2人工組卷的基本方法
為了設計一種符合教師日常出卷習慣的組卷策略,我們先來分析一下日常的考試中教師是如何出一套試卷的。首先,必須明確本套試卷的總分,大部分試卷的滿分當然是100分,但也有一些要求總分為120,甚至是150。其次,確定本套試卷的試題類型以及每種類型試題的分值。第三,針對某一具體的題型,根據(jù)該題型的分值,確定該類型題的小題數(shù)、每小題的分數(shù)及內容。在此過程中要考慮到試題對知識點的覆蓋面及每道題的難度系數(shù)等。當對所有的題型都完成了出題后,則組卷工作宣告結束。
針對上面的分析,我們可以按此思路來設計一套基于人工設置參數(shù)的組卷策略,它既能仿真人工組卷方法又能確保試卷的多樣性和針對性。
3基于人工設置參數(shù)的組卷策略的實現(xiàn)
3.1有關題庫數(shù)據(jù)結構的說明
題庫的數(shù)據(jù)結構是實現(xiàn)組卷策略的基礎,系統(tǒng)各項功能的實現(xiàn)都基于題庫的結構而對其進行操作。題庫的結構包含以下幾個字段:
Ÿ試題標識:(字符型)試題標識是識別試題的唯一標志,作為試題庫的主關鍵字。題庫的很多內容要通過試題標識相關聯(lián)。為了便于維護,試題標識是由系統(tǒng)自動產(chǎn)生的,用戶無權修改。
Ÿ題型代碼:(字符型)用于標識試題的題型信息,在設置題庫的配置時,用戶可以在題型信息表中輸入本題庫所含的題型。題型信息由用戶設置,解決了通用題庫中題型偏少的缺點。
Ÿ知識點代碼:(字符型)用于標識試題所覆蓋的知識點內容,在設置題庫的配置信息時,用戶把題庫所涉及到的知識點在知識點信息表中輸入。值得一提的是,用戶在編輯知識點信息表時,不宜把一個題庫所涉及的必考知識點分得太細,如對于《C語言程序設計》,有關C的概述、常量、變量、運算符、表達式等都可以歸類到“C語言基礎知識”這一點中。而對一些可選的知識點,則可以單獨列出,如C語言的“文件”部分。這樣做,在組卷時可以減少參數(shù)的輸入個數(shù),同時又能撇開某些可選的知識點,不作為考試的范圍。
Ÿ難度系數(shù):(字符型)試題的難度分為三個等級(1-3),分別表示易、中、難,難度系數(shù)如果分得太細,則會增加創(chuàng)建題庫的難度。
Ÿ參考分值:(整型)表示該試題在試卷中的參考分數(shù),用戶在組卷時可以根據(jù)需要進行修改。對于同一個知識點的試題,如果題型和難度系數(shù)一致,則要求其分值也一致。
Ÿ選中標識:(邏輯型)表示本次組卷是否被選中。
Ÿ選中時間:(日期時間型)表示最后一次被采用的時間,程序根據(jù)此字段的值,可以避免在一個指定的時間段內重復抽取同一試題。
Ÿ錄入時間:(日期時間型)用來表示錄入的時間,以便數(shù)據(jù)更新。
Ÿ試題內容:(MEMO型)試題的具體內容。
Ÿ試題答案:(MEMO型)試題的答案。
3.2組卷流程及界面設計
本組卷策略采取模擬人工組卷的流程,其各項參數(shù)如“總分”、“題型”、“每種題型的分值”以及試題所涉及的“知識點”和“難度”分布等均由人工設置,這擴大了選題的自由度,增加了組卷的成功率,為用戶提供了較大的靈活性。其流程及界面設計如下:
第一步,確定本試卷的總分及題型,如圖1所示。用戶在試題庫包含的所有題型中選擇本次組卷所要出現(xiàn)的題型。
第二步,確定每一種題型的分值,如圖2所示。計算機將自動校驗所有題型的分值總和是否等于步驟一所確定的總分,若不相等,則會給出提示,要求修改。
第三步,為每一種題型抽題,如圖3所示。在抽題時,對于指定的題型,計算機會顯示每個知識點其難、中、易的題數(shù),供教師參考。然后要求輸入以下一些信息。首先,確定該類題的組分方式,系統(tǒng)提供兩種策略。第一種適合于選擇題、填空題等,即在同一題型下,不管知識點、難度如何,每小題的分值是一樣的,但小題的分值由人工決定。第二種策略適合于問答題、編程題等,即在同一題型下,不同知識點或不同難度的題目,其分數(shù)均可以由教師指定,這樣大大增加了組分的靈活性。同時,系統(tǒng)要求,當試題的題型、知識點、難度均相同時,其分值也相同。當確定了組分的方式后,下一步要求人工輸入?yún)?shù)進行抽題,對每個知識點,確定其難、中、易的題數(shù)。參數(shù)輸入完畢,計算機會進行一次校驗,累加每小題的分值,其結果應等于本題型的分值,否則,提示用戶修改。當對所有的題型都抽題完畢后,則本次的組卷工作也宣告完成。
圖1:確定總分和題型
圖2:確定每種題型的分值
圖3:為指定的題型抽題
3.3關于抽題的算法
由于組卷的參數(shù)是由人工確定的,抽題的算法相對比較簡單,無須考慮難度的正態(tài)分布、試題對知識點的覆蓋是否全面等問題,因為這些問題都已經(jīng)由人工通過參數(shù)加以確定了,也就是說,計算機在組卷時充分融合了人的智慧。抽題時采用隨機選取法就可以解決問題,基本算法用VFP語句描述如下:
USE本次試卷的題型信息表(以該試卷的題型記錄來控制循環(huán))
SCAN
USE該題型的選題策略表(以該題型的知識點記錄來控制循環(huán))
SCAN
FOR難度系數(shù)={難、中、易}
檢查用戶對此題型、此知識點、此難度系的出題數(shù),若為0,則跳過此步,否則,把符合題型條件、知識點條件和難度系數(shù)條件的題目篩選到一張臨時表中,然后根據(jù)用戶要求的出題數(shù)進行隨機選取。
ENDFOR
ENDSCAN
ENDSCAN
4結束語
基于人工設置參數(shù)的題庫軟件,高度仿真人工的組卷過程,同時由于參數(shù)設置方便,操作簡單,組卷的自由度大、針對性強,因此組卷的成功率很高,組卷策略的設計比較成功,達到了預期的目的。
關鍵詞:網(wǎng)絡考試系統(tǒng);難度級別;評標;多約束組題算法
中圖分類號:TP311文獻標識碼:A文章編號:1009-3044(2008)08-1pppp-0c
1 引言
試題庫隨機組卷系統(tǒng)是CAI的重要組成部分之一,它的主要功用就是幫助教師利用計算機進行信息化教學,其主要功能就是利用計算機對試題進行分類管理及試卷的自動生成、輸出、排版和打印等輔助工作。可大大促進教學信息化、減輕教師工作量、提高教學效率、改善教學方法和增強教學質量等。本文自行研究開發(fā)了基于面向對象的試題庫隨機組卷系試題選取策略等關鍵性技術,并根據(jù)教學要求提出了系統(tǒng)開發(fā)的結構和方案。
2 系統(tǒng)總體方案設計
題庫系統(tǒng)是一個信息管理系統(tǒng),它用于對數(shù)據(jù)進行集中管理并且從中進行有用信息的輸出。試題庫信息系統(tǒng)主要用于試題的管理和試題的輸出,在進行試題的有效輸入之后,使得大量的信息存儲于數(shù)據(jù)庫之中,然后通過參數(shù)的設置對庫中數(shù)據(jù)進行有效的提取。
試題庫隨機組卷系統(tǒng)是由七個模塊組成的,分別是系統(tǒng)維護模塊、試題維護模塊、試題查詢模塊、試卷管理模塊、答案管理模塊、打印模塊和試題選取標準模塊。如圖1所示。另外,考慮到系統(tǒng)的安全性,系統(tǒng)還必須有身份驗證功能。身份驗證功能應該由三部分組成:用戶名驗證、密碼驗證和容錯驗證。其中容錯驗證是指當用戶名和密碼輸入三次或者N次不正確時,系統(tǒng)會自動判斷身份驗證錯誤,并退出系統(tǒng)。從而防止惡意登錄。
圖1 試題庫組題系統(tǒng)總體方案圖
系統(tǒng)管理模塊包括密碼管理、用戶管理、以及系統(tǒng)退出三個子功能模塊;試題維護模塊包括試題輸入、試題修改和試題刪除三個子功能模塊;試題查詢模塊包括按章節(jié)查詢和按難度查詢兩個子功能模塊;試題管理模塊包括試卷設置、試卷生成、試卷輸出三個子功能模塊;答案管理模塊包括答案生成、答案輸出、試卷答案三個子功能模塊;打印模塊包括試卷打印和答案打印兩個子功能模塊。試題選取標準由難度計算、區(qū)分度計算和信度計算三個子功能模塊。
3 系統(tǒng)的數(shù)據(jù)結構
3.1 試題類型
試題庫中的試題是本系統(tǒng)的最基本信息,依章節(jié)按教學內容、測試形式、測試目的等不同要求,將試題分成不同類型(一般均將試題分成:基礎知識、概念理解、簡單應用、綜合應用、發(fā)展應用五大類) 。試題的類型越多,組卷方案越多,試題庫的適應性越強,適用面越廣,但過多的試題和組卷方案,會使組卷工作變得煩瑣和低效。
3.2 試題特征符號
本題庫以章為基礎,按類型進行編號,Ti,j代表試題分類庫,Di,j代表試題分類庫對應的答案庫,其中:i表示課程的章節(jié),j表示該題型類型。如以數(shù)學分析試題庫自動組卷系統(tǒng)為例:
T0109:代表第1章發(fā)展型應用型中的計算類試題;D0109:代表對應試題答案;
T2101:代表第21章基礎知識型中的填空類試題;D2101:代表對應試題答案。
題庫中每道試題及與其對應答案以3位數(shù)字開始順序編號,以“f”和“~”兩字符結尾,以便系統(tǒng)組卷抽題時能正確識別每道試題和對立的答案。試題和答案以文本文件的方式順序存放。
3.3 試題難度系數(shù)確定
一套試卷是否合理,主要由試題的難易程度結構來體現(xiàn),故準確確定試題的難度是優(yōu)化試卷的核心。本系統(tǒng)將各種題型的難度值分為五級,其難度系數(shù)分別為0.5 (容易的題) ,1.0(較容易的題),1.5 (中等難度的題),2.0 (較難的題),2.5 (難題)。這里的難度系數(shù)0.5~2.5 只是用以表示試題難易程度的標示符,位于每道題的末端。
4 隨機自動化組卷的算法設計和賦分原則
4.1 試題庫隨機組卷系統(tǒng)的算法
試題庫隨機組卷系統(tǒng)主要采用的是多約束組題算法,所謂多約束組題算法就是在系統(tǒng)進行隨機組題時所必須滿足的一些條件,這些條件也就是所說的約束問題。一般情況下,在進行試題抽取時都要考慮試題的類型、試題的知識點、試題的難度以及試卷分數(shù)等約束條件。如果用向量坐標來表示的話,可以用Y(V,M,N)來表示試題的抽取。其中,V表示一個有限變量集,它對應于試題的每一個屬性,其數(shù)學表示為:V(v1,v2,…,vn);M表示一個有限數(shù)字集,表示各種屬性的取值范圍,其數(shù)學表示為:M(m1,m2, …,ms);N表示一個有限規(guī)則集,表示各試題應滿足的約束條件,其數(shù)學表示為:N(nl,n2,…,nt)。即:試題的抽取過程Y是在同時滿足V,M,N的條件進行的一個約束滿足過程。
對于V來講試題屬性一般是指知識點,試題類型以及難度等,這里如果所要抽取的試題有L個知識點,類型有X個,難度有P種。而所抽取的題目數(shù)量為Q,則Q(l,x,p)與試題分數(shù)S(l,x,P)之間滿足如下規(guī)則:
規(guī)則M:設卷面總分為S;則卷面總分:S =∑ Q(l,x,p)S(l,x,p)
多約束組題的一般算法如下:
(l)進行試題約束條件判斷,判斷試題類型、知識點、難度以及分數(shù)等規(guī)則,使得滿足條件的試題作為下一步抽取的總體。
(2)利用隨機函數(shù)Rand()進行隨機數(shù)的產(chǎn)生,使產(chǎn)生的隨機數(shù)在試題抽取的題數(shù)范圍內,并利用A[i]數(shù)組記下這個隨機數(shù)。
(3)進行第2步操作,記下此時的隨機數(shù)A[i+1]。
(4)判斷A[i]是否等于A[i+1],若相等則說明試題抽取重復,放棄后重新進行隨機數(shù)產(chǎn)生,并返回第2步。否則讀取相關試題,抽取成功。
(5)重復第2到4步,直到試題抽取完畢。
在利用該方法進行數(shù)據(jù)庫開發(fā)過程中主要存在以下幾點問題:①所產(chǎn)生隨機是否與上次已經(jīng)產(chǎn)生的隨機數(shù)重復。②如果重復如何解決。③如何利用這個隨機訪問數(shù)據(jù)庫。鑒于以上問題,我們利用上面講過的多約束求解算法對此進行設計,其中x為試題數(shù),A[i]為一維數(shù)組。其算法2所示。
圖2 優(yōu)化算法流程圖
在進行試題抽取中,首先應指定約束條件,該約束條件為試題類型、所在章節(jié)、試題難度等。然后利用srand()產(chǎn)生一個時間片種子,并通過rand()函數(shù)產(chǎn)生一個隨機數(shù),而這個隨機數(shù)就是題庫中試題的編號,這個隨機數(shù)的產(chǎn)生是面向題庫中整個試題而產(chǎn)生的。利用該隨機號就可以訪問數(shù)據(jù)庫并提取相應的試題。SQL語句NewID()創(chuàng)建uniqueidentifier類型的唯一值,uniqueidentifier是隨機產(chǎn)生的。NewID()語句使數(shù)據(jù)庫中的數(shù)據(jù)信息隨機排序,然后按一定的題數(shù)從數(shù)據(jù)庫中讀取試題。
4.2 試卷質量測評
應用難度級別分割遞歸算法和基于狀態(tài)鏈表的隨機抽題算法自動組成的試卷是否能真實地反映出教師的教學水平以及學生對知識技能的掌握程度,需要我們對試卷質量進行質量測評。測量試卷的主要檢驗指標是:難度、信度、區(qū)分度和覆蓋度。我們用設待抽樣的試卷題目數(shù)量為n,以M分制計,每題滿分為Aj(j=1,2,3,...,n );抽查的容量為N,其樣本值為Xi(i=1,2,3,...,N) 為抽查的試卷數(shù);抽查的N份試卷各題的實際得分為Xij(i=1,2,3,...,N;j=1,2,3,...,n)。
則樣本值為 hwl03.tif
4.4 區(qū)分度
題目的區(qū)分度也叫題目的鑒別力,它是衡量題目對不同水平被測試者的心理特質的區(qū)分程度的指標。區(qū)分度的取值范圍于-1.00~+1.00 之間,值越大,區(qū)分的效果越佳。一般0.2~0.4 為佳。設Hj、Lj 分別表示高分組和低分組第j 題的平均分(高低分組各占樣本量的25 %~30 %為佳)。
第j題的區(qū)分度為VP=(Hj-Lj)/Aj ,則試卷的總區(qū)分度為hwl07.tif
評測標準:0.4以上:優(yōu)秀題目;0.3~0.39:良好題目;0.2~0.29:勉強合格;0.19 以下:差的題目。
4.5 可信度
指測量數(shù)據(jù)和結論的可靠性程度,它是表明考試質量的穩(wěn)定性和可靠性的一個重要指標。信度一般規(guī)定是真分數(shù)的方差在總體方差S (n 個學生總分的方差) 中所占的比例。測量信度系數(shù)的方法較多,這里采用a系數(shù)法(該公式由克朗巴赫提出)。
6 總結
本文的創(chuàng)新點在于通過分析隨機組卷系統(tǒng)重在對數(shù)據(jù)庫中的試題進行隨機數(shù)據(jù)的抽取,本文提出了多約束情況下的優(yōu)化隨機算法,利用通用開發(fā)語言和SQL語言中的隨機函數(shù)進行了混合編程。這樣,一方面利用了VC程序的靈活性,另一方面利用了SQL語言的訪問快速性。通過系統(tǒng)的運行發(fā)現(xiàn)此算法優(yōu)于以往的單純以開發(fā)語言進行設計的隨機算法;其次通過應用3 個評測指標評測,經(jīng)過有關專業(yè)教師評判,認為算法設計科學,組卷合理,能真實地反映出教師的教學水平以及學生對知識技能的掌握程度。
參考文獻
[1]劉建華,宋志光,徐金祥.基于單用戶數(shù)據(jù)庫的多用戶系統(tǒng)的研究與實現(xiàn)[J].計算機工程與應用,2000.4.
[2]曾一,冉忠,郭永林.試題庫中自動組卷的算法及試卷測評策略[J].計算機工程與設計,2006.8.
[3]張克.基于c/s結構的試題庫隨機組卷系統(tǒng)的研究[D].合肥工業(yè)大學,2006.12.
Abstract: The article introduces the design and implementation of the teaching auxiliary platform. Designs the modules of the administrators, teachers and students in detail. Realizes the function such as the exam management, online examination. Tests the function, performance of the auxiliary teaching platform and it has been used by some class.
關鍵詞: 數(shù)據(jù)結構;教學輔助平臺;數(shù)據(jù)庫;
Key words: data Structure;teaching auxiliary platform;database;
中圖分類號:TP39 文獻標識碼:A 文章編號:1006-4311(2012)32-0226-02
0 引言
隨著網(wǎng)絡技術、軟件技術的迅猛發(fā)展,尤其是高校教改需求的牽引,教學輔助平臺已經(jīng)成為高校改善教學質量、提高教學效果的一種重要途徑。本文的研究目的在于以新型職業(yè)教育理念“做中學,做中教”為指導思想,以高職教育“任務驅動式”為課程開發(fā)模式,針對教學存在的問題進行分析,設計并開發(fā)適用于我系師生的教學輔助平臺。
1 系統(tǒng)功能模塊圖
通過對教學輔助平臺實現(xiàn)功能的分析,可將教學輔助平臺劃分為管理員模塊、教師模塊、學生模塊。教學輔助平臺層次結構劃分如圖1所示。
2 系統(tǒng)功能模塊分析
2.1 管理員模塊:管理員模塊實現(xiàn)用戶管理和論壇管理,圖2為管理員模塊用例圖。
2.2 教師模塊:圖3為教師模塊用例圖,該模塊設置了五項功能:試卷管理、題庫管理、多媒體教學管理、作業(yè)信息管理以及系統(tǒng)留言論壇。教師可以創(chuàng)建課程編寫相應的課程大綱、教學進度、編寫教案等。
2.3 學生模塊:學生模塊設置了在線測試、提交作業(yè)、多媒體教學欣賞、學生留言論壇等模塊。
3 系統(tǒng)各模塊的實現(xiàn)介紹
3.1 管理員模塊
3.1.1 用戶登錄管理子模塊的主要功能是獲取當前登錄用戶的身份和驗證密碼,并判斷兩者是否匹配,從而判斷是否讓用戶進入系統(tǒng)。在教學輔助平臺中,登錄頁面用來確定用戶身份,可以是學生、教師或管理員。根據(jù)不同的權限,可以進入不同的界面,進行不同的操作。
3.1.2 用戶管理模塊可以實現(xiàn)三部分功能:按照用戶ID和用戶名,查找指定的用戶;能夠對所有用戶實現(xiàn)增刪改查,并且能夠批量刪除用戶;能夠讓用戶重新設置新密碼。
①流程設計。以刪除指定用戶為例,我們要首先按照給定的查詢條件,輸入用戶ID和用戶名,然后查詢,這樣查詢結果就以列表形式顯示出來;在刪除用戶時,會彈出對話框詢問是否要刪除選中的用戶;如果確定刪除,則指定記錄被刪除,數(shù)據(jù)庫將執(zhí)行一次更新;而如果沒有刪除,可以繼續(xù)查找或者結束本次查找。具體流程如圖4所示。
②界面設計。中提供了許多數(shù)據(jù)綁定控件,它們以豐富的表現(xiàn)形式將數(shù)據(jù)顯示在頁面中,本平臺中使用了GridView控件綁定到數(shù)據(jù)源為SqlDataSource控件,應用了數(shù)據(jù)綁定列BoundField、復選框數(shù)據(jù)綁定列CheckBoxField、命令數(shù)據(jù)綁定列CommandField等。利用GridView的智能標記中選擇“啟用分頁”、“啟用排序”、“啟用編輯”、“啟用刪除”等,不需要編寫任何代碼的情況下實現(xiàn)對數(shù)據(jù)的排序、分頁和編輯等操作。當綁定數(shù)據(jù)源后,就會顯示用戶管理界面。從而使管理員可以對已注冊的用戶,進行增刪改查。不僅能夠通過復選框選擇一個或多個用戶,還可以用“全選”復選框,實現(xiàn)批量刪除。
③核心實現(xiàn)。用戶信息管理模塊通過對GridView綁定控件的操作實現(xiàn)對用戶信息的增加、刪除、修改、查找。在此以刪除用戶為例,說明實現(xiàn)過程。使用GridView1.DataKeys取出每一行數(shù)據(jù)的鍵值,創(chuàng)建一個新的user對象,根據(jù)主鍵,調用Users類的DeleteByProc方法,通過被選擇行的用戶ID刪除所選中的用戶所在的行。
//GridView控件RowDeleting事件
string userID = GridView1.DataKeys[e.RowIndex].Values[0].ToString(); //取出要刪除記錄的主鍵值
Users user = new Users();//創(chuàng)建Users類對象user
if (user.DeleteByProc(userID))//根據(jù)主鍵使用DeleteByProc方法刪除用戶
{
Response.Write("alert('刪除成功!')");
}
else
{
Response.Write("alert('刪除失敗!')");
}
GridView1.EditIndex = -1;
GridViewBind();//重新綁定數(shù)據(jù)
④動態(tài)模型設計。用戶管理子模塊的時序圖,反映了管理員對用戶的管理過程。用戶登錄管理員界面后,可以增加用戶信息、刪除用戶信息、修改用戶信息、查詢用戶信息。每一次操作結束,都會返回到用戶管理界面。
3.2 教師模塊的設計與實現(xiàn)
①試卷管理子模塊:組卷是試卷管理的核心,一套好的試卷,對師生都有重要的意義。在此重點分析試卷管理模塊組卷的設計與實現(xiàn)。我們需要我們了解相關的算法、試卷難度的確定有所了解。
②題庫管理子模塊:題庫管理模塊是系統(tǒng)根據(jù)不同的考試題目進行維護管理。主要包括以下的功能:單選題管理、多選題管理、判斷題管理、填空題管理。可以實現(xiàn)題目的增加、刪除、更改。以判斷題為例,其流程為:進入判斷題維護界面,編輯題目,選擇答案和難度后,保存到試題庫中。
③作業(yè)管理子模塊:教師可以布置、批改作業(yè)。教師登錄后可以布置作業(yè),也可以添加答案,還可以上傳資料、文件。作業(yè)布置完成后,在一定的期限內,或者存儲能力有限時,可以刪除過時的作業(yè)。
④多媒體管理子模塊:多媒體管理模塊,主要實現(xiàn)為學生播放教學視頻等視頻資料。比如數(shù)據(jù)結構課程中難以理解的算法,可以用視頻資料進行演示,或者播放教師的教學錄像,便于學生復習。
3.3 學生模塊的設計與實現(xiàn)
①在線考試子模塊:學生在線考試模塊可以由教師出題,也可以進行自我測試。學生可以選擇科目進行在線考試,立即查詢成績,則退出考試;如已到考試時間,可以自動交卷,或者選擇繼續(xù)答題,提交試卷;所有的客觀題由系統(tǒng)評閱,并且返回成績和標準答案,學生可以參照考試結果和答案進行進一步學習。
②提交作業(yè)子模塊:學生完成作業(yè)后,就進入了提交作業(yè)模塊。當超過了交作業(yè)的截止時間學生就不能打開作業(yè);有新的作業(yè)可以提交,而且一旦提交就不能修改。
4 測試與評價
通過搭建教學輔助平臺的測試環(huán)境,從功能和性能對平臺進行了測試,效果良好,各項測試指標均合格,運行穩(wěn)定,可擴展性強。并選取試點班進行教學效果測試,測試結果顯示該平臺確實幫助學生提高了學習效果。
5 結束語
本文介紹了基于.NET的教學輔助平臺的設計與實現(xiàn),并以用戶管理子模塊為例,從設計流程,設計界面及核心的實現(xiàn)方法3方面進行了詳細設計的介紹。日后將進一步擴展系統(tǒng)的功能,使系統(tǒng)更加智能化,多元化,更好地促進教學相長。
參考文獻:
[1]李俊平程序設計與Web應用項目開發(fā)[M].清華大學出版社,2010.1第1版
隨著計算機硬件和網(wǎng)絡技術的飛速發(fā)展,高校校園網(wǎng)絡得到大力普及,信息化管理系統(tǒng)所擁有的低成本、高效率、反饋周期短、占用資源少等優(yōu)點得到了充分的體現(xiàn),因此,基于互聯(lián)網(wǎng)的信息管理系統(tǒng)越來越受到人們的重視。近幾年,國內各大高等院校通過網(wǎng)絡教育方式積極共享教學優(yōu)質資源,從而提高了自身相應學科的教學水平,同時也促進了高校網(wǎng)絡教育的發(fā)展。該文設計開發(fā)的在線考試系統(tǒng)就是在這種需求情況下產(chǎn)生的,它是為南京航空航天大學申請《自動控制原理》國家級精品資源共享課程提供服務的。
網(wǎng)絡課程教育不僅對教育思想、教育方法和手段有促進作用,也同時為在線考試系統(tǒng)提供相應的展示平臺。在線考試是網(wǎng)絡精品課程的重要組成部分,也是它的關鍵部分。網(wǎng)絡考試縮短了距離的限制,學生可以遠程接受相應的學習和考核,以此了解學生的學習情況,學習課程的進度,有助于提高學生的學習效率,有利于改進教學質量;而學生可以有針對性地學習自己的薄弱環(huán)節(jié),并能及時和在線同學交流;計算機方便、快速地判卷使得老師工作壓力減小,有利于提高教師教學的工作效率。
2 模塊設計
該系統(tǒng)由考生管理模塊和管理員管理模塊組成,分成兩個界面:一個界面用于考生登錄(即前臺),主要負責考生信息注冊、考生登錄、在線考試、成績查詢;另外一個界面用于管理員登錄(即后臺),主要負責考生信息管理、管理員信息管理、選擇題管理、判斷題管理、計算題管理。其功能模塊圖如圖1所示。
首先,從考生角度考慮,因為該自動控制原理考試系統(tǒng)主要是面向南京航空航天大學修讀該課程學生的,所以考生進入系統(tǒng)需要進行身份匹配。考生進入在線考試系統(tǒng)后,應該能根據(jù)自己的需要選擇相對應的題型(本系統(tǒng)有選擇、判斷、計算題),所以該系統(tǒng)還應具有考試題型的選擇功能。在線考試和普通的單機考試有區(qū)別,它基于網(wǎng)絡環(huán)境,從服務器上的數(shù)據(jù)庫抽取考試題目自動生成試卷。另外,為了確保檢測效果,考生應該控制考試時間,系統(tǒng)有在線實時時間的顯示。考生提交答案后,應該由計算機自動評判并給出該次考試的得分情況,以讓考生知道自己現(xiàn)階段知識的掌握情況,為后面的學習計劃提供參考意見。考生也可以查詢自己的考試成績。考試結束后,考生可以安全退出登錄界面或繼續(xù)考試。
其次,從管理員角度考慮,管理員擁有整個系統(tǒng)的管理權限,負責試卷管理、考生信息管理、管理員信息管理。管理員進入系統(tǒng)后,可以對自己的信息進行變更,如修改密碼;也可以新建管理員賬號,供其他人使用管理員權限;也可以刪除管理員,回收該管理員權限。考生注冊了賬號,可以參加本次自動控制原理考試,若管理員覺得該考生還不應該參加此次考試,可以刪除該生賬號。選擇題,管理員可以根據(jù)教學進度和學生的學習情況,添加(文本、圖片兩種方式)、修改、刪除題庫中的選擇題,以適應學生的水平。判斷題,管理員可以添加(文本、圖片兩種方式)、修改、刪除題庫中的判斷題。計算題,管理員可以以圖片形式添加和刪除題庫中的計算題。
系統(tǒng)主要模塊的基本功能如下所示:
1) 考試試題管理
① 題庫題目信息查看:包括瀏覽選擇、判斷、計算題型的考試試題
② 編輯判斷試題:可以添加(以文本或圖片形式)、修改、刪除題庫中的判斷題目
③ 編輯選擇試題:可以添加(以文本或圖片形式)、刪除、修改題庫中的選擇題目
④ 編輯計算試題:可以添加(以文本或圖片形式)、刪除、修改題庫中的計算題目
⑤ 試卷編輯:系統(tǒng)自動抽題組卷
⑥ 試卷評改:系統(tǒng)自己評改客觀題,并得出相應的分數(shù)
2) 考生數(shù)據(jù)管理
① 添加考生數(shù)據(jù):注冊考生信息,并在線管理
② 更改考生信息:修改考生密碼
③ 考生信息瀏覽:在此處列出所有考生信息,供管理員查看
④ 刪除考生數(shù)據(jù):刪除考生信息,以便于管理員管理
⑤ 考生答題狀態(tài):在考試完成后,在線給出考生答題的各種情況,包括答對試題和答錯試題等
3 數(shù)據(jù)庫設計
針對自動控制原理在線考試系統(tǒng)的需求,設計如下的數(shù)據(jù)項和數(shù)據(jù)結構:
管理員(ID,姓名,密碼);
注冊考生(ID,用戶名,學號,密碼,性別,密保問題,答案,選擇題得分,判斷題得分);
考試題(ID,判斷題數(shù),判斷題每題分數(shù),選擇題題數(shù),選擇題每題分數(shù),計算題數(shù),計算題每題分數(shù));
選擇題(ID,題目,選項A,選項B,選項C,選項D,答案,圖片);
判斷題(ID,題目,答案,圖片);
計算題(ID,題目,答案,圖片)。
根據(jù)以上的分析得出系統(tǒng)的概念模型E-R圖,如圖2所示。
4 詳細設計
該系統(tǒng)可分為前臺和后臺兩大部分。后臺由管理員操作,主要為管理部分,前臺為考試輸出部分。后臺的主要任務是系統(tǒng)數(shù)據(jù)庫的日常維護,管理員能夠在后臺直接對題庫中的題目進行增加、刪除、修改等操作用來維護數(shù)據(jù)庫中的信息。考生能夠在前臺進行在線自控考試,測試自己的學習水平。下面分別介紹自控考試系統(tǒng)的前后臺操作流程。
1) 前臺程序流程設計
如圖3所示,該系統(tǒng)的考生在線考試操作流程圖,考生輸入用戶名和密碼登錄,由系統(tǒng)檢測其是否已經(jīng)登錄過或是否已提交,若是,則重新返回登錄界面,因不合法考生和已經(jīng)在線的考生都不能再登陸參加考試;若否,就進入自控在線考試界面參加考試。考試結束,考生提交答案,系統(tǒng)自動評卷,并得出分數(shù),顯示詳細答題情況。
2) 后臺程序流程設計
當系統(tǒng)管理員在管理員界面正確輸入用戶名以及密碼后,按下登陸,系統(tǒng)自動轉跳,把管理員引到本次考試管理系統(tǒng)的后臺處理頁面。“試題管理”模塊包括試題添加、修改與刪除,我們可以按照網(wǎng)頁提示增加試題,設置試題所在的題型。“考生管理”模塊包含的操作有刪除考生信息。“管理員管理”模塊包含的操作有增加管理員,用來額外分配管理員權限,當然也可以修改管理員信息、刪除管理員信息。后臺管理員操作流程如圖4所示。
5 系統(tǒng)實現(xiàn)
該自 動控制原理在線考試系統(tǒng)核心模塊有:數(shù)據(jù)庫連接模塊、考生注冊界面、身份認證界面、考生/管理員登錄界面、考生密碼找回界面、考生答題界面、題目(選擇、判斷、計算題)處理界面、管理員信息變更界面、學生信息變更、選擇題變更、判斷題變更、計算題變更界面。以下主要說明考生答題界面和選擇題變更的詳細實現(xiàn)代碼。
1) 考生身份認證模塊
6 結束語
該系統(tǒng)滿足為南京航空航天大學《自動控制原理》申請國家級精品資源共享課程服務的需求,實現(xiàn)了預期的設計目標。用戶可以不受時間、地點限制自主進行學習、在線測試;管理員能夠及時方便地編輯自控試題庫、管理考生信息。為學校的信息化、數(shù)字化教學打下堅實的基礎。
然而,系統(tǒng)還有一些不足之處,比如:登陸界面不是非常美觀;系統(tǒng)的功能相對比較單一;軟件內部的數(shù)據(jù)信息完整性不是很好,還有信息查詢條件不是十分完善等。因此,對于該系統(tǒng)還需要后續(xù)人員繼續(xù)研究探討并進行再開發(fā),以滿足用戶提出的越來越多的需求。
參考文獻:
[1] 韋群鋒.基于ASP網(wǎng)上考試系統(tǒng)的設計與實現(xiàn)[J].寧波工程學院學報,2005,17(2):106-108.
[2] 王麗俠,王新,衣治安.基于ASP技術的網(wǎng)上考試系統(tǒng)的設計與實現(xiàn)[J].大慶石油學院學報,2001,25(4):54-57.
數(shù)據(jù)結構導論試題
課程代碼:02142
請考生按規(guī)定用筆將所有試題的答案涂、寫在答題紙上。
選擇題部分
注意事項:
1.答題前,考生務必將自己的考試課程名稱、姓名、準考證號用黑色字跡的簽字筆或鋼筆填寫在答題紙規(guī)定的位置上。
2.每小題選出答案后,用2B鉛筆把答題紙上對應題目的答案標號涂黑。如需改動,用橡皮擦干凈后,再選涂其他答案標號。不能答在試題卷上。
一、單項選擇題(本大題共15小題,每小題2分,共30分)
在每小題列出的四個備選項中只有一個是符合題目要求的,請將其選出并將“答題紙”的相應代碼涂黑。錯涂、多涂或未涂均無分。
1.下列幾種算法時間復雜度中,最小的是
A.O(log2n) B.O(n)
C.O(n2) D.O(1)
2.數(shù)據(jù)的存儲方式中除了順序存儲方式和鏈式存儲方式之外,還有
A.索引存儲方式和樹形存儲方式 B.線性存儲方式和散列存儲方式
C.線性存儲方式和索引存儲方式 D.索引存儲方式和散列存儲方式
3.表長為n的順序表中做刪除運算的平均時間復雜度為
A.O(1) B.O(log2n)
C.O(n) D.O(n2)
4.順序表中定位算法(查找值為x的結點序號最小值)的平均時間復雜度為
A.O(1) B.O(log2n)
C.O(n) D.O(n2)
5.元素的進棧次序為A,B,C,D,E,出棧的第一個元素為E,則第四個出棧的元素為
A.D B.C
C.B D.A
6.帶頭結點的鏈隊列中,隊列頭和隊列尾指針分別為front和rear,則判斷隊列空的條件為
A.front==rear B.front!=NULL
C.rear!==NULL D.front==NULL
7.深度為5的二叉樹,結點個數(shù)最多為
A.31個 B.32個
C.63個 D.64個
8.如果結點A有2個兄弟結點,結點B為A的雙親,則B的度為
A.1 B.3
C.4 D.5
9.將題9圖所示的一棵樹轉換為二叉樹,結點C是
A.A的左孩子
B.A的右孩子
C.B的右孩子
D.E的右孩子
10.n為圖的頂點個數(shù),e為圖中弧的數(shù)目,則圖的拓撲排序算法的時間復雜度為
A.O(n) B.O(e)
C.O(n-e) D.O(n+e)
11.無向圖的鄰接矩陣是
A.對角矩陣 B.稀疏矩陣
C.上三角矩陣 D.對稱矩陣
12.在具有101個元素的順序表中查找值為x的元素結點時,平均比較元素的次數(shù)為
A.50 B.51
C.100 D.101
13.構造散列函數(shù)的方法很多,常用的構造方法有
A.數(shù)字分析法、除留余數(shù)法、平方取中法
B.線性探測法、二次探測法、除留余數(shù)法
C.線性探測法、除留余數(shù)法、鏈地址法
D.線性探測法、二次探測法、鏈地址法
14.就平均時間性能而言,快速排序方法,其時間復雜度為
A.O(n) B.O(nlog2n)
C.O(n2) D.O(1og2n)
15.下述算法中,不穩(wěn)定的排序算法是
A.直接插入排序 B.冒泡排序
C.堆排序 D.歸并排序
非選擇題部分
注意事項:
用黑色字跡的簽字筆或鋼筆將答案寫在答題紙上,不能答在試題卷上。
二、填空題(本大題共13小題,每小題2分,共26分)
16.數(shù)據(jù)的基本單位是_________。
17.雙向循環(huán)鏈表中,在p所指結點的后面插入一個新結點*t,需要修改四個指針,分別為
t->prior=P;t->next=p->next;_________;p->next=t;。
18.在帶有頭結點的循環(huán)鏈表中,尾指針為rear,判斷指針P所指結點為首結點的條件是_________。
19.若線性表中最常用的操作是求表長和讀表元素,則順序表和鏈表這兩種存儲方式中,較節(jié)省時間的是_________。
20.不含任何數(shù)據(jù)元素的棧稱為_________。
21.稀疏矩陣一般采用的壓縮存儲方法是_________。
22.100個結點的二叉樹采用二叉鏈表存儲時,用來指向左、右孩子結點的指針域有_________個。
23.已知完全二叉樹的第5層有5個結點,則整個完全二叉樹有_________個結點。
24.n個頂點的有向圖G用鄰接矩陣A[1..n,1..n]存儲,其第i列的所有元素之和等于頂點
Vi的_________。
25.具有10個頂點的有向完全圖的弧數(shù)為_________。
26.要完全避免散列所產(chǎn)生的“堆積’’現(xiàn)象,通常采用_________解決沖突。
27.在長度為n的帶有崗哨的順序表中進行順序查找,查找不成功時,與關鍵字的比較次數(shù)為_________。
28.歸并排序算法的時間復雜度是_________。
三、應用題(本大題共5小題,每小題6分,共30分)
29.稀疏矩陣A如題29圖所示,寫出該稀疏矩陣A的三元組表示法。
30.設二叉樹的中序遍歷序列為BDCEAFHG,后序遍歷序列為DECBHGFA,試畫出該二叉樹。
31.寫出題31圖所示無向圖的鄰接矩陣,并寫出每個頂點的度。
題31圖
32.已知散列表的地址空間為0至13,散列函數(shù)H(k)=kmod11,(mod為求余運算),待散列序列為(26,61,38,84,49),用二次探測法解決沖突,構造該序列的散列表,要求寫出處理沖突的過程。
33.將一組鍵值(80,50,65,13,86,35,96,57,39,79,59,15)應用二路歸并排序算法從小到大排序,試寫出各趟的結果。
四、算法設計題(本大題共2小題,每小題7分,共14分)
34.設單鏈表及鏈棧S的結構定義如下:
typedef struct node
{ Data Type data;
struct node*next;
}linkstack;
編寫一個算法void ReverseList(1inkstack *head),借助于棧S將帶頭結點單鏈表head中序號為奇數(shù)的結點逆置,序號為偶數(shù)的結點保持不變。(例如:單鏈表的邏輯結構為(a1,a2,a3,a4,a5,a6),逆置后變?yōu)?a5,a2,a3,a4,a1,a6))。
關鍵詞:C+數(shù)據(jù)結構;客觀題;課堂測試;教學改革
中圖分類號:TP311.52 文獻標識碼:B 文章編號:1673-8454(2012)07-0054-03
一、引言
計算機應用于學生考試過程早已不再新奇,如高考閱卷系統(tǒng)、大學一年級新生的期末計算機文化基礎的省級統(tǒng)考等,但由于這些考試系統(tǒng)大多存在軟件版權問題,教師是無法拿來運用在日常教學過程中的,即使有些軟件允許使用,也會因為軟件設計的復雜性,安裝、設置、使用起來往往較為繁瑣,大多作為考試用,不適用于課堂短時間的隨機測試。要掌握學生的學習情況,教師還得采用傳統(tǒng)的布置書面作業(yè)、課堂提問方式,雖然這些方式有其值得肯定的地方,但也不可否認,書面作業(yè)布置多了學生會有情緒,存在相互抄襲現(xiàn)象,教師批改耗費大量精力,課堂提問受課時等限制又存在很大局限性,因而能否隨時掌握學生的學習情況成為教師心頭的一大憂慮,能否設計一套計算機軟件來解決這些問題,已成為教師在教學過程中的迫切需求,也是當前現(xiàn)代教育理念下實施教學改革的現(xiàn)代教育手段之一。
二、軟件簡介
1.軟件特點
大道至簡,一套好的計算機軟件不在于它用什么語言來編寫,使用了哪些復雜的技術和數(shù)學模型,功能菜單項是否很多等。恰恰相反,在能滿足用戶需求的情況下,軟件越小越好,功能越少越好,用起來越簡單越好。本軟件短小精悍,由一個運行程序(120k Byte)和二個文本文檔(試卷.txt、學生名單.txt)組成,采用C語言文件操作與字符串處理技術實現(xiàn)試卷生成和自動批卷閱卷,沒有使用任何數(shù)據(jù)庫,因而軟件無需安裝設置,隨拷隨用,對題庫的更新只要編輯或拷入新的文件即可,是一款“傻瓜”型的綠色實用小軟件。
2.運行流程和功能
運行菜單如圖1所示。
用戶按菜單序號順序執(zhí)行即完成整個測試過程。菜單中”隨機抽題”可輸入抽題數(shù)目,自動生成每位學生的隨機抽題序列。執(zhí)行“生成試卷”按學生抽取的題號生成以學號和姓名作為文件名的電子試卷,將試卷發(fā)給學生,學生作答后提交到提交目錄,執(zhí)行“批閱試卷”在答卷題號前打√、≠、× (≠用于多選題2分值得1分),對答錯題在×后標注正確答案(見圖中16題號前A)并在成績欄填上卷面成績,批閱電子試卷可發(fā)給學生查閱得失分情況,其格式如圖2所示。
菜單中“學生成績”顯示學生得分列表,可選擇按成績排序輸出,同時匯總顯示班級平均分。“題目得分”記錄每題抽中人數(shù)和合計回答正確率。“得失分題”可選擇組得分題卷或組失分題卷,首先選擇組哪類試卷,然后自行輸入題目抽中人數(shù)m和回答正確率n,滿足抽中人數(shù)≥m并且正確率≥n的題目存入文件;滿足抽中人數(shù)≥m并且正確率≤n的題目存入文件。再選擇是否附上標準答案及學生答題信息,圖3是對11計應B班測試后選“失分題卷”,設人數(shù)為10,正確率30%,附標準答案和學生答題信息的失分題試卷內容。從圖中第7題看,由于大多數(shù)學生不理解電腦的啟動過程,所以12人選A,而正確答案是C。
“成績匯總”將每次測試的成績導入到成績匯總表中,測試多少次就在表中增加多少列,統(tǒng)計平均分并可選擇是否按平均分排序輸出。成績匯總表如圖4所示。
3.使用要求
使用前將、二個文件復制到軟件駐留目錄即可運行。內容為班級學生名單,由學號、姓名、性別三列組成,列之間用TAB鍵分隔。文件內容為填上答案的題庫內容,其編輯格式遵循以下三點規(guī)則即可:
(1)每題題目前至少要留一行空行。
(2)每題題號后緊跟圓點或空格,題號不連續(xù)可由電腦自動編號。
(3)在每題的圓括號內(不限制在第幾個圓括號內)用ABCDTF填上答案,大小寫均可,TF用于判斷題,對多選題順序任意,例如( Dab )等。
以上規(guī)則示例可參見圖2。基本無限制條件,符合人為編寫習慣。
如果要使每位學生的試卷相同,執(zhí)行“隨機抽題”時選抽題數(shù)等于題庫總數(shù),試題全部抽出。抽題數(shù)小于題庫總數(shù)將隨機抽題。如果認為某些題較為重要,希望抽取的概率高一些,可以運行另一小程序生成文件,該文件只有2列,第1列是題號,第2列是對應題號的抽取概率值(默認為1),修改該值為N,則抽取概率提高為N倍,題目等概率抽取時無需文件。
三、軟件模塊及程序實現(xiàn)
軟件主要由隨機抽題、生成試卷、批閱試卷、數(shù)據(jù)處理四大功能模塊組成。 生成試卷的功能是依據(jù)學生的抽題序列從(該文件自動生成)中提取相應題目組卷,文件名用學生的學號和姓名命名,并在試卷中填入學號和姓名。批閱試卷在答卷題目題號前打對錯標記,評分并統(tǒng)計記錄成績,同時統(tǒng)計每題的抽中人數(shù),計算學生得分之和,算出題目回答正確率,為組失分題卷和得分題卷提供數(shù)據(jù)源。數(shù)據(jù)處理主要為輸出學生成績,題目得分,得失分卷,匯總成績等結果提供服務,采用文件保存菜單各項執(zhí)行前后的輸入輸出結果。受篇幅限制,以下僅介紹隨機抽題模塊的實現(xiàn)算法和執(zhí)行過程。
抽題程序實現(xiàn)算法:調用C語言中的隨機數(shù)函數(shù)rand()產(chǎn)生隨機數(shù),采用time()函數(shù)做rand()種子,由于time()函數(shù)每次調用時間不同,因而rand()函數(shù)產(chǎn)生的隨機數(shù)是真隨機數(shù)。創(chuàng)建順序表L存放隨機抽題序列,為防止同一份試卷題目重復,隨機數(shù)(題號)加入順序表前查找該數(shù)在順序表中是否已存在,不存在加入順序表L末尾,否則重新生成新的隨機數(shù),再判斷是否要加入順序表,循環(huán)此過程直至加入元素個數(shù)等于用戶輸入抽題數(shù)N后終止,最后將表L中的題號元素按升序排序后輸出到屏幕和文件保存。
程序代碼如下:
srand((int)time(0)); //隨機種子
printf("按任一鍵抽題,按Q鍵退出,結果保存在文件中\(zhòng)n");
for(i=1;!(ch=='q'||ch=='Q')&&i
{
ch=getch(); //等待,按一鍵抽一套題
L.length=1;
for(j=1;j
L.data[j]=0; //表L元素清0
for (j=1;j
{ x=1+rand()*lineCount/32767; //抽取隨機題號x,lineCount題庫總數(shù)
if (SeqSearch(L,x)==0) //題號x未被抽取則加入, 否則跳過,生成新的隨機題號x
{ InsertList(&L,x,L.length); //將題號x加入表尾
j++;
}
}
L.length=N;
Insersort(&L); //按題號大小升序排列
ShowList(&L); //顯示一名學生的抽題序列
}
printf("抽題完畢,按任一鍵返回!");
程序中SeqSearch(L,x)函數(shù)的功能是在表L中查找元素x,找到返回1,否則返回0 ; InsertList(&L,x,L.length)函數(shù)將x追加到表L中; Insersort(&L)函數(shù)采用插入排序算法對表L元素做升序排序; ShowList(&L)函數(shù)在屏幕上顯示表L中的元素。這些函數(shù)是數(shù)據(jù)結構中的常見函數(shù),不再贅述。
四、結束語
本軟件經(jīng)多班級、多次實際課堂測試運行流暢,數(shù)據(jù)正確無誤。與其他常見的計算機考試軟件相比,本軟件具有以下優(yōu)點:(1)無需安裝設置,題庫編輯更新方便;(2)不僅給出考分,還能返回批閱試卷,讓考生了解每題得失分情況,并可根據(jù)學生的回答選項,在批閱試卷中附上教師給出的相應錯誤解答信息;(3)失分題試卷自動抽取統(tǒng)計出學生錯在哪些題目和哪些選項上,便于對癥講解;(4)對每次測試成績進行匯總,全班平均成績,個人平均成績,好生差生盡在掌握中。軟件缺點是不支持除單選題、多選題、判斷題外的其他題型。
另外,本軟件還具有操作簡單,通用性強等特點,適合于各類學校、各類課程和專業(yè)的客觀題測試或考試,不但能減輕教師的日常教學工作量,也可提供給學生自測學習。軟件雖小,但能讓學生體會到軟件的神奇和知識的價值,對培養(yǎng)學生的學習興趣,推動教學工作向工學結合、學以致用的方向發(fā)展具有積極引導作用。
參考文獻:
[關鍵詞]同伴教學法;軟件工程導論;課程教學
1991年,哈佛大學的埃里克馬祖爾教授創(chuàng)建了同伴教學法,其最早應用于物理學教學中。同伴教學法是一種基于合作學習理論和動機學習理論設計的教學方法。它是以教師在課前要求學生進行知識預習,課上提出測試題,要求每名學生獨立答題,學生可以向教師提出1~2個問題,并形成自己的答案;然后由教師將學生進行分組、討論,每名學生都要在本組內闡述自己的答案,答案有差異時,成員之間可以用自己的觀點和理論說服對方,決定自己答案是否更改;教師統(tǒng)計學生上交的試題答案及正確率,根據(jù)準確率及時調整教學策略;學生根據(jù)教師講解的知識點和關鍵點對照自己的答案,并將知識進行有效遷移的教學過程。同伴教學法是在心理發(fā)展水平相當?shù)耐殛P系之間,通過同學之間進行闡述觀點、互相學習、討論、分享經(jīng)驗,傳授技能并獲得同步提高。同伴教學法適用于原理、概念、過程、方法等比較難于理解、難于記憶、容易混淆的理論課程,這是一種講授自然科學課程簡單、有效、實用的教學方法。在軟件工程導論課程中進行同伴教學法進行教學,符合課程特點和教學發(fā)展規(guī)律。
1軟件工程導論課程教學現(xiàn)狀
軟件工程學歸屬于自然科學中計算機科學與技術學科,是為了擺脫軟件開發(fā)成本和進度估計不準、系統(tǒng)滿意度不夠、產(chǎn)品質量不可靠、軟件維護性差、軟件開發(fā)生產(chǎn)率跟不上計算機發(fā)展速度等“軟件危機”的困擾,專門研究軟件開發(fā)與維護的普遍原理、技術的一門工程科學。軟件工程學已成為計算機科學的一個重要分支,研究范圍廣泛,其包括技術方法、工具、管理等多個方面。軟件工程導論課程是計算機專業(yè)開設的一門必修課,是軟件工程學的概要介紹,主要講述軟件工程的原理、概念、技術和方法,介紹各個實施階段的任務、過程、方法和工具。
1.1課程內容繁多
軟件工程導論課程講述的概念、原理、模型、系統(tǒng)內容繁多,講述的知識面廣、軟件的發(fā)展速度快,課程的真實性和綜合性強,理論性的知識眾多,教師準備課程和講解知識雖然耗費了大量的時間和精力,但學生對知識點不易理解,不能完全掌握知識內容。
1.2教學方法陳舊
軟件工程導論課程采用傳統(tǒng)的教學方式,即“滿堂灌”,教師在講臺上用無數(shù)豐富的語言去描述概念、原理、過程,學生只能被動的接受、機械的記憶,師生之間沒有互動,學生想在一節(jié)課上把教師所講的復雜的理論、概念完全記住,非常困難。經(jīng)過實踐證明,這種傳統(tǒng)的教學方法,已不能滿足學生的學習需求,影響了其學習效果。所以,必須要找到一種適合軟件工程導論課程的教學方法,同伴教學法是若干教學法中的最佳選擇。
2同伴教學法的應用實例
以“總體設計的過程”這一節(jié)課程為例。
2.1課前準備
在本節(jié)課前一周,教師布置閱讀任務,要求學生閱讀“總體設計的過程”的內容,在課堂上提出并要求學生回答類似下列的問題。(1)詳述總體設計的過程,需求分析階段的數(shù)據(jù)流程圖在總體設計中起到了什么作用?(2)在選取方案過程中,分析員一般要備份什么資料,這些資料有什么作用?(3)數(shù)據(jù)庫設計的步驟是什么,每一步的功能是什么?(4)在書寫文檔時,都需要哪些文檔?為什么要書寫這些文檔?這些文檔對軟件的開發(fā)起到什么作用?這些問題必須是經(jīng)過教師精心設計的,不能讓學生通過閱讀資料就可以找到答案,需要學生通過閱讀教材、查找資料,對資料進行獨立思考、深入分析,形成自己觀點的問題。教師要綜合知識點,對問題做好答案,以備講解。
2.2問題提出
課堂上,教師先創(chuàng)設模擬情景,如:一個公司現(xiàn)在需要編寫一個財務軟件,最先要明確的就是總體的設計過程,那么這個設計過程應該是什么樣的呢?此時拋出的設計問題,請同學們進行討論,給出答案。學生閱讀教師給出的思考題,根據(jù)閱讀過的教材和資料,給出初步答案。此時,每名學生也可以向教師提出1-2個問題,教師進行回答。
2.3小組討論
教師將學生分成若干個學習小組,每組有4-5名成員,可設置1名組長,也可不設置。在小組中,每名學生按次序將自己的答案提出,并說明形成答案的根據(jù)、理由和設計。小組內根據(jù)不同意見再進行分組,每名同學試圖用自己的理論說服對方,此時,教師可以在各組內進行巡視或旁聽,并給出一些建議,學生根據(jù)討論和交換的意見,再次形成新的答案。
2.4統(tǒng)計答案
學生將答案提交給教師,教師根據(jù)學生方案中存在的問題,進行統(tǒng)計,并給出每道試題的正確率,查看知識點掌握情況,總結學生答案的優(yōu)缺點,分析學生錯誤答案產(chǎn)生的原因,準備相關知識以備講解。
2.5講解答案
教師講解答案如下。(1)總體設計的過程包括設想供選擇的方案、分揀選取合理方案、推選最優(yōu)方案、進行功能分解、設計軟件結構、數(shù)據(jù)庫設計、設置測試計劃、書寫軟件相關文檔及審查和復審等9個步驟,需求分析階段的數(shù)據(jù)流程圖在總體設計中是總設計的開始,數(shù)據(jù)流程圖中的自動化邊界是實現(xiàn)策略的方案。(2)在選取方案過程中,分析員一般要備份系統(tǒng)流程圖、組成系統(tǒng)的物流元素清單、成本或效益分析、實現(xiàn)這個系統(tǒng)進度的計劃四份資料,這些資料是實施方案的基礎,是項目是否可行的依據(jù)。(3)數(shù)據(jù)庫設計的步驟是模式設計、子模式設計、完整性和安全性設計、優(yōu)化。模式設計是確定數(shù)據(jù)庫的物理結構,子模式設計是具體的數(shù)據(jù)規(guī)劃試圖,完整性和安全性設計是保證數(shù)據(jù)庫整體安全穩(wěn)定運行的檢查方案,優(yōu)化是改進模式和子模式數(shù)據(jù)的方案。(4)在書寫文檔時,需要系統(tǒng)說明、用戶手冊、測試計劃、詳細的實現(xiàn)計劃、數(shù)據(jù)庫設計的結果等文檔。這些文檔是進行軟件開發(fā)的根據(jù)和基礎,也是以后開發(fā)同類產(chǎn)品的寶貴資料。教師講解后,歸納總結學生方案的優(yōu)缺點,對錯誤的成因進行分析,提煉出本節(jié)課程的重點和難點內容。同學們根據(jù)自己的答案對照教師的答案,分析自己答案的利弊,鞏固知識,再進行討論,最終領會本節(jié)課的知識和技能,提升自己的知識和能力,進而對知識做到最好的遷移。
3結語
在軟件工程導論課程中使用同伴教學法進行教學,使學生明確了學習目標,掌握了重點和難點,激發(fā)了學習興趣,提高了解決問題的能力,培養(yǎng)了合作精神、溝通能力、競爭意識、互助精神等綜合素質。改變了原有的教學模式,讓同學之間成為互相的傳授者,不但可以共同探討問題,還能共同增長知識和技能,達到了共同進步的目的。同伴教學法在自然科學門類的理論課程教學中具有顯著的作用和十分重要的現(xiàn)實意義,是同類課程的有益借鑒。
主要參考文獻
[1]吳蓓.PI教學法在“JavaWeb開發(fā)”課程中的應用研究[J].西部素質教育,2016(15).
關鍵詞:試題庫;經(jīng)典測量理論;題庫結構;難度系數(shù)
作者簡介:駱健(1976-),女,江西贛州人,南京郵電大學計算機學院,講師。(江蘇 南京 210003)
基金項目:本文系南京郵電大學教學改革研究資助項目(項目編號:JG00411JX31)的研究成果。
中圖分類號: G642.474 文獻標識碼:A 文章編號:1007-0079(2012)04-0029-02
隨著現(xiàn)代科學技術的進步,信息化發(fā)展席卷全球,遍布各個行業(yè)領域,已經(jīng)成為現(xiàn)代社會發(fā)展的主要推動力。考試信息化作為教育信息化改革的重要組成部分之一,它包括:試題庫建設、自動組題、自動閱卷等多方面內容。其中,試題庫建設則是保障考試信息化順利進行的重要基礎,如果沒有合理的試題庫,自動組題和自動閱卷將無從談起。因此,如何對試題庫進行有效建設是考試信息化研究的重點問題之一。
一、傳統(tǒng)考試模式中存在的弊端
目前,考試仍然是高等教育教學過程中的一個重要環(huán)節(jié),是評價學生知識水平,檢查教學目標實施效果的最有效手段。然而,在傳統(tǒng)考試模式中,存在如下常見的問題:
(1)命題隨意性大。教考合一制度下,由任課教師命題,教什么考什么,帶有較大的主觀性,容易造成命題偏離教學大綱,知識點覆蓋不當?shù)惹闆r。
(2)命題的難度和分量不一致,難以科學地把握試題的難易程度,經(jīng)常出現(xiàn)試題偏難或偏易的情況。
(3)手工出題費時費力,跟不上現(xiàn)代科技快速發(fā)展的步伐。
(4)學生依賴任課教師的考前指導,希望教師縮小考試范圍、提示考試重點,使考試成績失去了應有的客觀性、嚴肅性,滋長了學生懶惰、僥幸、投機等不良習性。
二、試題庫系統(tǒng)建設的必要性
隨著計算機技術的不斷發(fā)展與普及,使得利用計算機對傳統(tǒng)的考試過程進行改革成為可能。建立計算機管理的試題庫系統(tǒng)對學科建設、教學規(guī)范化具有如下重要意義:
1.有利于考教分離的真正實施
使用試題庫系統(tǒng)進行命題時,試題是由題庫自動抽取自動生成,即使是非任課教師也能夠在授權下使用系統(tǒng)進行命題,可使任課教師與命題工作完全分離開來,實現(xiàn)真正意義上的考教分離。
2.有利于命題質量的控制
為了保證試題的合理性和科學性,在試題庫系統(tǒng)中,入庫的每一試題,除了試題本身的內容外,還要包括知識點、難度、效度、區(qū)分度、使用情況等多種定性、定量的屬性。在使用試題庫進行命題時,可對試題的屬性進行量化控制,使試題的深度、難易度、區(qū)分度、知識點分布適中,保證試卷質量。
3.有利于客觀評價教學水平和教育質量
使用試題庫系統(tǒng)生成的試題,基于教學大綱,知識點覆蓋適當,可以比較客觀公正地反映教與學的水平,是檢驗教師教學水平和教學質量的重要依據(jù)。教師通過橫向比較并結合試卷分析、成績分析,改進教學方法,促進教學水平不斷提高。
4.有利于良好學風的樹立
使用試題庫系統(tǒng)進行命題時,學生無法再依賴教師考前指導,因此學生在心理上會產(chǎn)生較大的壓力,從而調動起學生學習的自覺性和主動性,大大降低了考試中的各種舞弊行為,有利于樹立良好的學風。
三、試題庫建設的理論基礎
所謂題庫是由許多適用于不同目的、技能和任務考核需求,且由大量優(yōu)質題目組成的某個學科試題集合。傳統(tǒng)的題庫往往只是收集大量試題以備選擇使用,對試題本身并無太多要求,試卷質量無法得到有效控制。因此,為了保證試卷質量,題庫系統(tǒng)中試題屬性的計算與評估要以合理的理論基礎作為指導。
目前對題庫進行評測的教育測量理論有:經(jīng)典測量理論和項目反應理論。其中,經(jīng)典測量理論理論體系成熟,理論假設較弱,對實施條件要求低,適用性廣,以其為基礎的測驗在各行各業(yè)得到了成功的應用。
經(jīng)典測量理論對題庫系統(tǒng)的評測主要分成兩方面:項目分析和整體分析。項目分析是針對試題進行分析,利用試卷的測驗結果對每道試題屬性(如:難度、區(qū)分度等)進行統(tǒng)計與分析;整體分析是對整個試卷進行分析和評價,為了考查試卷質量,利用試卷的測驗結果對整個試卷從難度、區(qū)分度、信度和效度方面進行分析,構成了整個試卷的信度和效度。
四、試題庫的結構設計
經(jīng)典測量理論有一套完整的題目分析指標體系和評價標準,根據(jù)經(jīng)典測量理論建的題庫,要求入庫的每一試題,除了試題本身的內容外,還要包括題目的編號、知識點、難度、效度、區(qū)分度、使用情況等多種定性、定量的屬性。這樣既可以利用這些參數(shù)對試題進行分類管理,同時也能有效地約束入庫的試題質量。
按照屬性對試題質量約束力的不同,可將題庫中試題的屬性分為兩類:性能屬性和內容屬性。試題的內容屬性主要是指試題的內容及答案等信息,這些信息不作為組卷算法中的約束參數(shù)。性能屬性則是要作為組卷算法中的約束參數(shù)參與到組卷過程中,這里主要對影響組卷算法的性能屬性進行討論研究。通過對不同考核需求、組卷算法及成卷速度要求的分析,給出了以下幾個對試卷質量起關鍵作用的主要性能屬性:題型、難度、知識點和出題頻度。
1.題型
題型是指試題類型。可分為填空題、選擇題、程序閱讀題、編程題等。可根據(jù)每次組卷的需要動態(tài)增加新的題型。
2.難度
難度是衡量試題難易程度的指標。在使用計算機進行自動組卷過程中,試題難度分布設計得是否合理至關重要,若一份試卷使學生成績普遍都很高,或是普遍都很低,都是失敗的。因此,必須合理地設計試卷中試題的難度分布,使其達到或是基本達到組卷的預期要求。
在經(jīng)典教育測量理論中,對于每道試題的難度系數(shù)是使用通過率來表示。例如:
(1)對于客觀性試題,其計算公式為:
其中,Di是第i題的難度系數(shù);Ci表示答對第i題的人數(shù);Zi表示參加第i題考試的總人數(shù)。
(2)對于主觀性試題,其計算公式為:
其中,Di是第i題的難度系數(shù);Pi表示第i題的平均得分;Mi表示第i題的總分。
由此可看出,0≤Di≤1,而且Di越小,試題越難,Di越大,試題越簡單。難度可采用五級分檔,即Di={難,較難,中等,較容易,容易},并將此五級分檔通過五個連續(xù)的難度系數(shù)段來表示,依次為[0,0.20]、[0.20,0.40]、[0.40,0.60]、[0.60,0.80]、[0.80,1]。
3.知識點
可用十進制的整型類型字段表示章節(jié),例如:用6位十進制數(shù)表示時,可以用前2位表示章,中間2位表示小節(jié),最后2位表示每小節(jié)中存在的不同知識點。在自動組卷時,可以根據(jù)這一參數(shù)精確地對知識點進行選取,可避免同一知識點在同一試卷中多次出現(xiàn)的現(xiàn)象,以保證知識點在試卷中盡量分布均衡。
4.出題頻度
用于統(tǒng)計試題庫中,某試題在實際試卷中出現(xiàn)過的次數(shù)。通過該參數(shù)可以控制題目在試卷中出現(xiàn)的概率。每次組卷前,將所有試題的頻度字段累加并求平均。抽題時,按頻度由小到大的順序,優(yōu)先選取頻度小于等于平均數(shù)的試題。
五、試題庫的安全性
為保證命題的公正性,試題庫的安全性主要包括:
1.用戶權限管理
采用基于角色的訪問權限控制方式,為各類用戶分配不同的權限。用戶權限的設置用來防止非法人員訪問系統(tǒng)和部分合法用戶越權使用某些功能(如某類用戶只允許進行查詢功能,不允許有試題修改功能等),并且用戶對試題庫系統(tǒng)的操作事件要有日志記錄。
2.數(shù)據(jù)庫的加密
使用3DES加密算法對數(shù)據(jù)庫進行加密。各類用戶的密碼不能使用原始明文的方式保存,而應保存加密后的密鑰,并且要求系統(tǒng)管理員應定時更換數(shù)據(jù)庫的密碼。
六、結束語
試題庫的建設能使考試更加標準化,更加客觀、全面地反映教學的實際效果,能節(jié)省教師的寶貴時間,提高工作效率,同時也促使任課教師必須按照教學大綱的要求認真組織教學內容,改進教學方法,對推動教學改革起到了積極的作用,對教學質量和整體教學水平的提高也有著非常重要的意義。
參考文獻:
[1]杜洪飛.經(jīng)典測量理論與項目反應理論的比較研究[J].社會心理科學,2006,(6):15-17.
[2]劉博.智能教學系統(tǒng)中個性化題庫的設計與實現(xiàn)[J].中國電化教育,
2010,(9):110-114.
[3]Zpolat E,Akar G B.Automatic detection of learning styles for an e-learning system[J].Computers& Education,2009,53(2):355-367.
[4]郭敏華,蘭雨晴,金茂忠.一種海量題庫難度系數(shù)和區(qū)分度動態(tài)優(yōu)化模型[J].計算機工程與應用,2007,43(21):246-248.
[5]趙耀紅.數(shù)據(jù)結構組卷系統(tǒng)的設計與實現(xiàn)[J].長春大學學報,2010,
關鍵詞:虛擬現(xiàn)實;PLC;實訓平臺;Unity3D
DOIDOI:10.11907/rjdk.161661
中圖分類號:TP319
文獻標識碼:A文章編號:16727800(2016)010011104
0引言
PLC是集自動化、計算機、通信3種技術于一體的高科技產(chǎn)物。隨著科技的不斷發(fā)展,急需大量熟練應用PLC的人才[1]。不容忽視的是調試程序環(huán)節(jié)在PLC控制系統(tǒng)的設計與應用中至關重要。目前,PLC的傳統(tǒng)教學方式主要有3種:①通常PLC編程軟件會提供仿真調試功能用來調試程序,學生編寫程序并下載到PLC中,并觀察輸出端口狀態(tài)驗證程序,由于缺少實際被控對象,無法直觀感受被控對象的執(zhí)行效果;②現(xiàn)有的PLC專用實驗平臺控制模式多樣化,實驗生動形象,但費用較高,設備更新困難,維護需請專業(yè)人員[2];③現(xiàn)場實操,直接在實際控制系統(tǒng)中調試程序,效果顯著,但具有很大的危險性,并且現(xiàn)場實操需要一定的硬件設施,倘若設施不完備,實訓教學將不能正常開展[3]。
針對PLC傳統(tǒng)教學存在的問題,基于集模擬性、沉浸性、交互性于一體的虛擬現(xiàn)實技術,設計了基于Unity3D的PLC半實物虛擬仿真實訓平臺。利用三維模型搭建、三維交互設計、通信模塊設計等技術為學生提供了一個直觀、經(jīng)濟、安全、高效的PLC學習環(huán)境,成本低、易維護、可擴展性強。通過該平臺學生可以實時地編寫并調試程序,動態(tài)分析各種被控對象的執(zhí)行效果,加以真實的環(huán)境音效,增強現(xiàn)場體驗感,激發(fā)學習興趣,提高學習效率。同時減少了同程度下的教學成本,避免了設備損壞,保障了人身安全,具有較高的經(jīng)濟性和安全性。
1虛擬仿真實訓平臺總體框架
1.1半實物仿真
半實物仿真(semiphysical simulation)又稱硬件在回路仿真,是將數(shù)學模型與物理模型或實物模型相結合進行實驗[4]。保證實時性是硬件在回路仿真的關鍵,仿真平臺的實物部分與仿真部分之間的接口設計也尤為重要。例如本平臺中實物PLC和三維虛擬場景之間數(shù)據(jù)的轉換和傳輸需要通信接口來完成。
通常情況下有兩種方式可以實現(xiàn)半實物仿真平臺設計:①將PC機作為控制器,被控裝置作為實物部分放置在仿真平臺的回路中;②控制器(如PLC)為實物,被控裝置通過建立數(shù)學模型來實現(xiàn)[5]。針對PLC虛擬仿真實訓平臺的特點,本文選用第二種方式來設計半實物仿真平臺。以PLC控制器為實物,建立被控裝置三維模型,通過觀察虛擬場景的執(zhí)行狀態(tài)來調試PLC程序。
1.2虛擬現(xiàn)實技術
虛擬現(xiàn)實(Virtual Reality)又稱靈境技術,利用三維圖形生成技術、多傳感交互技術等模擬實際三維空間,讓使用者如身臨其境一般在視覺、聽覺、觸覺上感受虛擬場景[68]。例如本實訓平臺中的PC機虛擬場景,利用動態(tài)環(huán)境建模、三維交互設計、虛擬傳感器以及系統(tǒng)集成等技術來完成PLC虛擬仿真實訓平臺的構建。
1.3實訓平臺總體設計
PLC虛擬仿真實訓平臺主要由PLC、PC機虛擬場景和通信模塊組成。PLC發(fā)出真實控制信號,通過通信模塊傳輸給PC機,此外PLC接收虛擬場景輸出的虛擬傳感信號。PC機虛擬場景采用3Ds Max和Unity3D設計,顯示被控對象各種運行狀態(tài)。通信模塊主要是虛擬現(xiàn)實數(shù)據(jù)接口,本系統(tǒng)利用單片機來完成PLC與計算機之間數(shù)據(jù)的轉換與傳輸。平臺整體設計如圖1所示,具體的數(shù)據(jù)流圖如圖2所示。PLC輸出控制信號通過虛擬現(xiàn)實數(shù)據(jù)接口傳送到Unity3D虛擬場景,虛擬設備根據(jù)接收到的虛擬控制信號來模擬實際設備的運行效果。運行過程中,Unity3D中的虛擬傳感信號經(jīng)過通信模塊傳送給PLC,PLC接收到信號后檢測虛擬設備的運行情況并發(fā)出控制信號進行相應的調整,實現(xiàn)虛擬仿真實訓平臺的正常運行。
2PLC實訓平臺開發(fā)
PLC虛擬仿真實訓平臺開發(fā)主要包括三維模型搭建、交互開發(fā)、理論測試模塊、硬件平臺開發(fā)4部分。
2.1三維模型搭建
模型與場景搭建是設計一個虛擬現(xiàn)實平臺的必要前提[9],PLC虛擬仿真實訓平臺使用幾何建模和物理建模來創(chuàng)建三維模型。當前有許多三維建模軟件,比如3Ds Max、CATIA、UG等,其中3Ds Max具有很多插件,操作靈活、運行流暢、性價比高、模型制作容易上手,故采用3Ds Max軟件進行建模。為增強真實感,需到工藝現(xiàn)場收集相關資料(比如設備照片、尺寸、聲音等)作為標準來建立設備模型。建模時要盡量使各模型在外形、尺寸上與工藝現(xiàn)場相一致[1011]。
交互系統(tǒng)的真實度和流暢性對于用戶體驗都非常重要。模型越精細就越真實,但生成的數(shù)據(jù)量就越大,影響系統(tǒng)運行的流暢性,從而降低用戶體驗。因此,要對模型進行優(yōu)化:①建模過程中在不影響整體效果的情況下盡量減少模型面數(shù),刪除看不見的面和重疊的面,另外盡量減少運用布爾命令以減少面的個數(shù),避免計算錯誤[12];②將現(xiàn)場采集的照片經(jīng)過Photoshop處理賦給模型,既能增加真實感又可以減少多邊形的數(shù)量,達到簡化模型的目的;③利用LOD(Level of Detail)技術,即細節(jié)層次模型,在不同層次、不同視覺條件下,為每個物體建立不同精細程度的模型,當物體離視點遠時就調用相對簡單的模型,而近距離觀察時調用相對復雜的模型(這樣可以在逼真性和速度之間達到均衡),以提高場景的顯示速度[13]。模型優(yōu)化處理后,需將模型位置復制到世界坐標系原點,然后利用V-Ray渲染器進行烘焙渲染,并導出“.fbx”格式文件。
2.2交互開發(fā)
3Ds Max軟件中建立的模型是靜態(tài)的,要達到更好的教學效果,還需要為系統(tǒng)提供交互功能。為方便學生多視角觀察被控對象,利用多方位相機實現(xiàn)視角的切換,并添加User Input模塊,雙擊該模塊選擇“鼠標右鍵按下”選項,再將該模塊連接到ExpressionValue模塊下,把ExpressionValue的表達式改成“A*B*C”,避免相機隨鼠標晃動,方便控制視角。添加碰撞檢測(Collision Object)模塊,避免行走相機因受重力作用下落穿過設備進入設備內部。
PC機接收到的數(shù)據(jù)利用Unity3D中的虛擬模型Transform下Parent屬性來控制模型的移動、旋轉等運動,主要通過Translate和Rotate函數(shù)實現(xiàn)。對于一些無規(guī)則物體(例如水),不能使用常規(guī)方法建模,可利用粒子發(fā)射系統(tǒng)Particle System實現(xiàn)。通過Particle System通道為粒子設置合適的材質和貼圖,通過ReceiveData和DealData判斷單片機緩沖區(qū)數(shù)據(jù)后,在物體數(shù)據(jù)的頂點上通過循環(huán)發(fā)射粒子來模擬。為了增強沉浸感,需到現(xiàn)場采集真實聲音,并以3Dsound的形式導入Unity3D來模擬工藝現(xiàn)場的聲音。
Unity3D串口接收使用多線程和數(shù)據(jù)池的設計模式,采用數(shù)據(jù)結構隊列避免線程阻塞。其中Unity3D利用C#命名空間System.IO.Ports中的SerialPort類來接收數(shù)據(jù)[14]。在Start函數(shù)內實例化一個SerialPort類sp串口,并設置串口號為COM2、波特率為9 600、數(shù)據(jù)位為8、校驗位為IO.Ports.Parity.None、停止位為IO.Ports.StopBits.One[15],與下位機串口保持一致[1516]。通過Thread函數(shù)開啟一個線程ReceData接收數(shù)據(jù)幀。在RecData線程內通過sp的Read函數(shù)循環(huán)讀取緩沖區(qū)數(shù)據(jù),并將結果傳送給數(shù)組buf進行判定。若buf長度為0直接返回,若不為0將數(shù)據(jù)賦予UserData。虛擬場景按照UserData的數(shù)值控制虛擬設備的運行。在系統(tǒng)退出時利用Close函數(shù)關閉串口,以免下次啟動因串口無法打開而影響系統(tǒng)正常運行。RecData內部處理程序和關閉串口程序如下:
2.3理論測試模塊
理論測試模塊主要用來測試學生對PLC理論知識的了解程度,其設計主要包括UI和Access數(shù)據(jù)庫兩部分。其中,UI用于向學生呈現(xiàn)測試內容及結果,Access數(shù)據(jù)庫用于標識管理員(如教師)和學生信息、錄入試題庫、隨機抽取試題、展示測試結果。創(chuàng)建數(shù)據(jù)庫文件database.accdb,并建立管理員表AdminTable、學員表UserTable、試題庫表QuestionTable(創(chuàng)建部分試題和對應答案)。管理員可按課程安排選擇實訓內容和理論測試題,并且有更新試題庫的權利,學員表由學生自行注冊添加。學生登錄后點擊“開始測試”,系統(tǒng)隨機抽取試題并形成試卷,答題結束后,系統(tǒng)通過和正確答案對比判定成績。最后將理論測試模塊為“.exe”文件,Unity3D利用System.Diagnostics命名空間的Process類調用理論測試模塊。其中連接數(shù)據(jù)庫程序和試卷讀寫部分程序如下:
2.4硬件平臺開發(fā)
PLC作為主控制器選擇性能優(yōu)良、性價比高、應用廣泛的西門子S7-200CPU224XP可編程控制器,集成了14點輸入/10點輸出共24個數(shù)字量I/O。通信模塊的主要部件選用STC12C5A60S2單片機,它是PLC和虛擬場景之間的通信橋梁。單片機和PLC之間電氣連接,單片機需要5V和24V電壓,PLC需要220V電壓,單片機和PC機利用RS-232串口通信實現(xiàn)信號傳輸。圖3是通信模塊內部結構圖[17],PLC輸出控制信號,經(jīng)過單片機數(shù)模轉換器ADC轉換成數(shù)字量,再由輸入輸出端口DIO傳給PC機的虛擬場景,控制虛擬設備運行。虛擬傳感器信號通過System.IO.Ports和單片機將運行數(shù)據(jù)反饋給PLC,實現(xiàn)系統(tǒng)的閉環(huán)控制。單片機通過循環(huán)檢測PLC的輸出信號并將數(shù)據(jù)傳給緩沖區(qū),再通過串口通信將數(shù)據(jù)送往PC機,虛擬現(xiàn)實系統(tǒng)判斷接收到的數(shù)據(jù)控制虛擬設備完成相關運行。Unity3D中的虛擬傳感信號經(jīng)電平轉換電路轉換成TTL電平后傳送給單片機,通信模塊傳送給PLC,PLC接收到信號后檢測虛擬設備的運行情況并發(fā)出控制信號進行相應調整,實現(xiàn)虛擬仿真實訓平臺的正常運行。
3虛擬仿真實訓平臺實驗測試
PLC虛擬仿真實訓平臺功能結構如圖4所示,為測試平臺是否可行,以恒壓供水系統(tǒng)和燃氣鍋爐系統(tǒng)為例,利用虛擬現(xiàn)實技術搭建虛擬場景,正確連接PLC、通信模塊、PC機虛擬場景,將Unity3D軟件中建立的虛擬現(xiàn)實系統(tǒng)成“.exe”格式并運行,調試PLC程序,并記錄部分效果圖。
3.1恒壓供水系統(tǒng)
依照變頻器工作過程,在3D場景中虛擬變頻器運行模式,對頻率的上下限進行設置。PLC進行邏輯控制,傳感器采集管道內壓力,經(jīng)過PLC的PID運算后,由變頻器進行水泵速度凋節(jié);同時PLC控制水泵切換,實現(xiàn)恒壓供水的自動調節(jié),虛擬視景則全方位展現(xiàn)恒壓供水系統(tǒng)的工作流程。圖5為系統(tǒng)運行效果,此時系統(tǒng)狀態(tài)為“頻率超限,1#水泵由變頻轉工頻運行”,PLC啟動2#水泵變頻運行,形成反饋。
3.2燃氣鍋爐系統(tǒng)
PLC發(fā)出控制信號,單片機通過循環(huán)檢測PLC的輸出信號并將數(shù)據(jù)傳給緩沖區(qū),再通過串口通信將數(shù)據(jù)送往PC機,虛擬現(xiàn)實系統(tǒng)判斷接收到的數(shù)據(jù)控制虛擬設備完成相關運行。Unity3D中的虛擬傳感器負責檢測進水量、溫度、氧濃度等數(shù)據(jù),并將數(shù)據(jù)即時傳送給單片機。單片機將數(shù)據(jù)處理后送給PLC供PLC檢測分析,檢測虛擬設備的運行情況并發(fā)出控制信號進行相應調整,從而控制虛擬燃氣鍋爐的穩(wěn)定運行。圖6為燃氣鍋爐系統(tǒng)點火果。
3.3理論考試結果
使用學號登錄進入理論測試模塊,點擊“開始測試”按鈕,系統(tǒng)隨機抽取試題形成試卷。試卷包含50道選擇題,每題2分,共計100分,答題時間為30分鐘。答題結束后,點擊“提交答卷”按鈕,測試結束,系統(tǒng)給出判定結果。若規(guī)定時間內仍未答完,不能繼續(xù)作答,考卷將自動提交。系統(tǒng)判定的測試結果如圖7所示,顯示本次測試成績以及近最近5次的測試成績。
4結語
測試結果表明,基于Unity3D的PLC虛擬仿真實訓平臺運行流暢,為學生進行PLC學習提供了一個直觀、經(jīng)濟、安全、高效的環(huán)境,解決了部分院校PLC實訓平臺欠缺的教學難題。通過該平臺學生可以快速、準確地編寫并調試程序,動態(tài)分析各種被控對象的執(zhí)行效果,同時能更多地了解各種工藝的工作流程,加上真實的環(huán)境音效,可增強現(xiàn)場體驗感,激發(fā)學習興趣,提高學習效率。同時減少了同程度下的實訓教學成本,避免了現(xiàn)場實操的設備損壞和安全隱患,具有較高的經(jīng)濟性和安全性。
將此平臺作進一步改善,考慮利用以太網(wǎng)技術使其實現(xiàn)遠程實驗[1820]的功能,讓學生不僅能在實驗室使用,只要能聯(lián)網(wǎng)的地方(如教室、宿舍)均能使用,達到方便學習和充分利用資源的目的;同時考慮加入先進的三維投影技術進行三維立體化展示,增強沉浸感。進一步完善實訓平臺,實現(xiàn)智能化,如在實訓中自動判斷并記錄學生練習過程,根據(jù)個人的學習情況自動調整學習進度和學習內容等。
參考文獻參考文獻:
[1]王嘯東.PLC虛擬實驗室的研究與建設[J].實驗室研究與探索,2012,31(9):210213.
[2]曾洋.PLC仿真實驗平臺研究[D].杭州:杭州電子科技大學,2011.
[3]袁云龍.基于組態(tài)軟件的PLC控制系統(tǒng)仿真實現(xiàn)[J].自動化儀表,2006,27(5):5758,61.
[4]黃建強,鞠建波.半實物仿真技術研究現(xiàn)狀及發(fā)展趨勢[J].艦船電子工程,2011(7):57,25.
[5]吳家鑄,黨崗,劉華峰.視景仿真技術及應用[M].西安:西安電子科技大學出版社,2001.
[6]周凱,韓芳.虛擬現(xiàn)實仿真在《過程控制》課程教學中的應用[J].軟件導刊,2015,14(9):192194.
[7]李強,宓超,王晨星,等.基于虛擬現(xiàn)實技術的沉浸式PLC控制程序的半實物仿真系統(tǒng)[J].中國工程機械學報,2013,11(1):4145.
C++程序設計實驗課教學過程中存在的主要問題
1.職業(yè)院校的學生來源多樣,素質差距大,入學成績低,學習積極性不高,幾乎無課前預習、課后復習的習慣,學習能力不強,給教師的授課帶來困難,再加之該課程的教學內容多,課時少,使學生普遍感到該課程學習難度大,這在一定程度上不利于學生對該課程的理解和掌握。此外,大學里豐富絢麗的社團活動更能吸引學生,他們參加這些活動課只需短時間努力就可看到成果,而專業(yè)課的學習卻相反,在短期內他們很難看到明顯效果,而且對克服學習上的困難缺乏恒心、毅力,容易在學習上產(chǎn)生畏難心理而放棄對課程的學習。
2.教師對學生編程思維的培養(yǎng)不足,學生不能將所學知識應用到實際,降低了教學質量。
3.實驗題型類型單一,內容陳舊、枯燥、沒有新鮮感,多為課本例題或其變形,驗證性的實驗較多,缺乏設計型、創(chuàng)新型實驗,很難將所學知識應用到實際,很難激發(fā)學生的學習興趣。
4.實驗課上學生隨意性大,教學效果不能量化,教師對學生管理不能到位,影響了實驗課的教學效果。在調試程序方面,學生不會調試、修改錯誤程序,遇到問題或錯誤時無從下手,過多地依靠教師,缺乏自信心,這些都增加了課程的學習難度。
5.在有限的實驗課上,教師難以保證對全體學生答疑解惑和實時地對學習效果進行評價,積極性很難調動起來,學生課后也很難有意識地進行編程實踐,長時間會導致學生失去學習興趣。
6.考核體系不完善,僅采用傳統(tǒng)的筆試進行考核,使得學生對實驗課的重視不夠,學生在實驗課前沒有進行充分準備,實驗內容不能完成,且抄襲現(xiàn)象難以避免。
實驗課教學的探索
1.注重實驗題目的選取
描述枯燥的題目很難調動學生的學習興趣和主動性,而軟件大賽的題目與實際應用緊密結合,且知識性、趣味性、實用性強,它在一定程度上反映了行業(yè)對職業(yè)能力的要求[3],可借鑒其風格使實驗題目趣味化、生活化。例如,2012年軟件大賽選拔賽真題:大數(shù)學家歐拉在集市上遇到了本村的兩個農婦,每人挎著個空籃子。她們和歐拉打招呼說兩人剛剛賣完了所有的雞蛋。歐拉隨便問:“賣了多少雞蛋呢?”不料一個說:“我們兩人自己賣自己的,一共賣了150個雞蛋,雖然我們賣的雞蛋有多有少,但剛好得了同樣的錢數(shù)。你猜猜看!”歐拉猜不出。另一個補充道:“如果我按她那樣的價格賣,可以得到32元;如果她按我的價格賣,可以得到24.5元。”歐拉想了想,說出了正確答案。我們不是數(shù)學家,很難列出公式來分析。但計算機可以“暴力破解”,就是把所有的可能情況都試驗一遍,撞上為止。請寫出每人擁有雞蛋的數(shù)目,用逗號隔開。讓學生自己選擇合理的算法、數(shù)據(jù)結構來解決。有趣的題目極大地調動了學生的編程欲望和創(chuàng)造動力,感受到學有所用、基礎知識的重要性。此外,大賽題目的引入,可使學生提前了解大賽,也為之參賽奠定基礎。
2.注重實驗內容的形式
實驗內容的形式應多樣化,例如程序代碼填空、程序結果填空、描述程序功能、代碼改錯、書寫函數(shù)、程序設計等,從而多方位地增強學生的讀程、編程、調試程序的能力。此外,在學生驗證程序時,為了使學生明確如何給出測試數(shù)據(jù)及測試數(shù)據(jù)的普適性,可借鑒軟件大賽的命?}模式,除了題目描述,還包含測試輸入樣例、輸出樣例,這樣就能客觀地驗證程序的正確性。
3.注重實驗內容的設計
根據(jù)學生的個體差異以及不同階段的發(fā)展需要,將實驗內容由淺入深地推進,將實驗題目分為必做題和選做題,讓每位學生根據(jù)自身的學習情況選擇相應難度的題目,即讓所有的學生都有事情做,能夠完成各自的學習任務,帶動學生的積極性,也避免了教師采用相同題目要求,造成部分學生抄襲作業(yè)的情況[4]:第一級是必做題,是基礎性知識,是知識的直接運用,要求學生必須掌握;第二級是擴展練習或與實際問題相結合;第三級為代碼優(yōu)化或選擇軟件大賽相關或源于軟件大賽的題目。此外,為了拓展學生思路,通過啟發(fā),讓學生盡量一題多解,從不同角度切入,設計不同的代碼,可使學生將知識點進行聯(lián)系、分類、對比,形成一個較完整的知識體系。
4.注重引導學生學會編程的思維和方法
在C++課程的第一次課程教學,尤其是在賽前輔導中,筆者一直給學生灌輸這樣的思想:“思想有多遠,我們才能走多遠”,在程序設計中從不同角度切入,盡可能地一題多解,注重啟發(fā)、引導學生思維,將編程的思路、方法傳授給學生,培養(yǎng)學生先思考數(shù)據(jù)結構、算法,再寫代碼的習慣,提高學生的學習質量,以及分析、解決問題的能力。
5.注重程序調試,培養(yǎng)學生獨立分析、解決問題的能力
衡量編程能力的一個重要指標就是調試程序的能力,所謂的程序調試,即排除程序中的錯誤,可分為編譯型錯誤和邏輯型錯誤。對于編譯型錯誤,有錯誤提示,相對容易修改,但很多學生要么不會翻譯,要么沒有耐心閱讀,要么直接忽略錯誤提示,往往使得一個很簡單的錯誤也很難找到并糾正,打擊了學生學習的興趣和積極性;而邏輯型錯誤,因系統(tǒng)無提示,很難發(fā)現(xiàn),要查找和糾正這些錯誤更是無從下手,因而讓學生注重程序調試至關重要。對于編譯型錯誤可采取邊講邊練的形式和學生一起閱讀、翻譯提示信息,再進行查錯、改錯,將常見的錯誤進行翻譯、歸類、總結后發(fā)給學生,讓他們在遇到類似問題時先自行解決,當他們解決不了時教師再予以解答;而對于邏輯型錯誤,教師不能直接給出答案,應通過啟發(fā),循序漸進地提問,引導學生主動思考,得出修改的方法,也可依托實例利用注釋、設置斷點、逐語句執(zhí)行等方法以邊講邊練的方式進行查錯,使學生在獲得理論知識的同時及時實踐,使得他們能更快更真實地領悟編程中程序調試方法的重要性,在學習中不斷積累調試的方法、技巧和經(jīng)驗。
6.注重分組教學模式的使用
依據(jù)教師指定和學生自愿相結合的方式將班上的學生每4人一組,按學習、動手能力的強弱分成強弱型和強強型小組:強弱型小組,可使能力強的學生帶動、幫助能力弱的學生。強強型小組,他們會對同一問題各抒己見,迸發(fā)更多的思路,創(chuàng)造性地完成實驗任務。
7.注重及時評價學生的實驗學習效果
對于實驗課上規(guī)定的內容,根據(jù)學生完成的數(shù)量及對編寫的程序依據(jù)結果的正確性、功能的完善性、算法的效率、程序的可讀性和規(guī)范性、考慮問題的全面性或程序中是否隱藏錯誤等進行及時打分,作為每次實驗課的平時成績,最后整合平均成該實驗課的總評成績,以一定的比例計入該課程的總分中,使學生重視課程的實踐操作。同時,對善于思考和提問、作業(yè)完成質量高的學生要及時表揚,以達到樹立學習榜樣和激勵學生互相學習、進步的作用。
8.注重加強實驗課的管理
為了避免出現(xiàn)學生實驗課上玩手機、聊天、淘寶等現(xiàn)象,教師在實驗課前就將實驗任務布置給學生,讓他們獨立思考,也可和同學討論交流后寫好程序的初稿、程序運行所需的測試數(shù)據(jù)、預期的運行結果等。此外,為了在日常學習中培養(yǎng)學生的工程意識,還要重視初稿代碼的可讀性、可維護性及可重用性等,這樣,學生在課上帶著問題有目的地操作而不是面對電腦一片茫然。每次實驗課前,教師先檢查實驗題目完成情況,讓學生養(yǎng)成習慣,提高實驗課的效率,而上機時重點進行編輯、調試,及時寫出并提交規(guī)范的實訓報告,有利于節(jié)約寶貴的上機時間。
9.注重充分利用網(wǎng)絡平臺
如今的網(wǎng)絡已成為重要的交流平臺,充分利用網(wǎng)絡可延伸實驗課教學,對課堂教學進行補充。具體來說,教師可將實驗指導書、教學案例、教學視頻、學習網(wǎng)站、經(jīng)典算法、C++函數(shù)庫、編碼規(guī)范、常見編譯錯誤分析、典型錯誤剖析、模擬試題、歷年軟件大賽真題等資料到博客或QQ空間讓學生分享。這樣,有助于學生進行課前預習、課堂重現(xiàn)、課后復習、賽前練習和自測等以提高其學習效率。
10.注重實驗課的教學形式
提高實驗操作課的教學比例,為學生提供開放的實驗環(huán)境。除傳統(tǒng)的實驗課外,建議學校的機房應向學生開放,并有指導教師指導,這樣的環(huán)境增加了學生上機實踐的時間,讓學生有足夠的機會進行實踐操作,通過有充分時間的思考、編程、調試加深學生對知識點的理解,才能真正達到實踐教學的目的。
11.注重加強課內外輔導,及時解決學生遇到的問題
在課內,應對學生提出的問題、疑問及時分析講解;在課外,應充分利用網(wǎng)絡平臺如微信、QQ等互動的方式對學生進行及時的指點,這樣可避免學生因問題累積而產(chǎn)生厭學現(xiàn)象,提高學生學習積極性,教師能與學生進行深層溝通,了解學習狀況、進度快慢、內容的難易,促進教師自己進行日常教學反思,調整自己的講課內容、思路、方法等以提高教學質量。
12.注重考核方式的改革
考?是檢驗教學效果的重要手段,C++課程的考核除了傳統(tǒng)的理論考核、平時作業(yè)、平時實驗考核外,還應加入期末上機操作考核,其題目形式可借鑒軟件大賽預賽題樣式,這樣不僅擴大了總評成績中實驗操作的比例,引起學生對實驗操作課的重視,也使學生在學習過程中重視自己實踐操作能力的培養(yǎng)。
關鍵詞: 職業(yè)教育計算機專業(yè)教學改革
高等職業(yè)技術教育的目標是培養(yǎng)具有綜合職業(yè)能力和全面素質的,直接工作在生產(chǎn)、技術、管理和服務第一線的應用型、技能型高級人才,因此,職業(yè)教育應結合市場需求,突出實踐性教學及技能訓練,強調以培養(yǎng)技能型人才為本位的指導思想。但是當前某些職業(yè)技術院校以“本科壓縮型”或“專科型”的模式辦職業(yè)技術教育,其教學模式和結構不適應高職人才培養(yǎng)需求。特別對于計算機這種實踐性較強的課程,教學內容和知識結構的應用性、實踐性、創(chuàng)新性和知識更新都跟不上新技術的發(fā)展和變化,缺乏對學生實踐能力和創(chuàng)新能力的培養(yǎng),僅能使學生完成大專層次的學歷教育,缺乏適應就業(yè)崗位更新的可持續(xù)發(fā)展能力。由此看來,深化職業(yè)技術教育中的計算機教學改革勢在必行。
1.培養(yǎng)學生的思維能力
根據(jù)思維探索答案的方向,可把思維分為聚合式思維和發(fā)散式思維。發(fā)散性思維是一種無一定模式、不依靠常規(guī)、尋求變異、從多方面尋求答案的思維形式,它的特點是思維敏捷、思路靈活、具有創(chuàng)造性;聚合式思維是把問題所提供的各種信息聚合起來,得出一個正確的答案。計算機語言具有邏輯性強,處理問題周密、嚴謹?shù)奶攸c。根據(jù)計算機學科的特點和知識體系的內在聯(lián)系,教師在向學生傳授知識的同時,有目的地培養(yǎng)學生的思維能力,是深化教學改革的重要課題。教師在給計算機應用專業(yè)的學生上課時,應經(jīng)常進行編程訓練。因此,教師應注意利用程序設計及算法自身的科學思維方法進行教學,通過分析試題、建立數(shù)學模型、確立算法、上機實踐、調試程序、優(yōu)化算法,培養(yǎng)學生良好的思維品質和創(chuàng)造精神。
2.改革教學模式,改變教師觀念
教學模式包括教學思想、功能目標、操作要領等,它是組織、設計和調控教學活動的方法論體系。一方面,它來自教學實踐,是教師和學生對某些有效的具體教學活動方式進行優(yōu)選、概括和加工的結果。另一方面,教學模式的實際執(zhí)行者是教學的實踐者和實踐對象,即教師和學生是教學活動的實踐主體,當代的一些教育理論家也認為:“最有效的學習方法應是讓學生在體驗和創(chuàng)造的過程中學習。”計算機課程既具有很強的理論性,又具有很強的實踐性。它要求學生不僅要很好地掌握理論知識,而且要把所學的知識應用到操作實踐當中去,并在操作實踐中不斷地發(fā)現(xiàn)問題、分析問題、解決問題,因此,在培養(yǎng)學生的動手動腦能力方面具有很好的作用。然而,在傳統(tǒng)的教育理論中,教育實踐的主要目標是傳授知識。在這種理論的指導下,計算機學科的教學存在著一些問題,基本上沿襲傳統(tǒng)的授課:“板書+講解”。計算機各種軟件大多以圖標方式和鼠標操作為主,其操作直觀、便捷,對這些軟件的應用與操作教師在黑板上是無法向學生講解明白的,需要使用演示設備向學生講解,也就是說,計算機的許多課程應該以“演示+操作+講解”的授課方法進行講授。計算機教學應改變傳統(tǒng)的教學方式,采用先進的工具,建設較為多樣化的多媒體教室,利用大屏幕投影進行直觀教學。
在計算機教學中,教師應利用計算機、大屏幕投影、網(wǎng)絡等先進的多媒體教育技術手段代替?zhèn)鹘y(tǒng)的粉筆和黑板,用計算機教“計算機”。在教學中,教師要注重問題的創(chuàng)設,提供氛圍,讓學生在實踐活動中發(fā)現(xiàn)問題,著手解決問題,使學生成為學習的主人,教師則成為學生的“協(xié)作者”。當然教學模式多種多樣,如講解接受模式、自學輔導模式、引導發(fā)現(xiàn)模式、實驗模式等,在諸多種教育模式中,沒有哪一種模式是最完美的。在教學中,應采用哪種教學模式,需要教師在實踐中不斷地去探索總結。當然,教學的目的不在于追求完美的模式,改革教學模式不是目的,而是通過某種行之有效的方法,全面地貫徹教育方針。
3.針對職業(yè)教育和專業(yè)特點,大膽進行課程整合
三年制勢必影響學生的文化基礎,但教師應當認識到,學生必需的文化基礎已經(jīng)在高中階段形成,進入高等教育層次后,學生的文化基礎更多表現(xiàn)為學生的意志品質和后續(xù)的學習能力。學校不可能教給學生實用一生的知識,只能教給學生學習的方法。
職業(yè)技術教育是合格教育,而不是優(yōu)秀教育,計算機專業(yè)培養(yǎng)的是計算機操作員而不是計算機工程師,所以授課課程應以實用為目的,針對學生基礎相對較薄弱的特點,以培養(yǎng)技術應用能力為主旨構建新的課程體系。
(1)根據(jù)職業(yè)崗位的要求,調整課程結構,精講文化基礎和專業(yè)基礎課,加大職業(yè)能力訓練的比例。比如可以將學生比較難以接受的專業(yè)基礎課,如《數(shù)據(jù)結構》、《操作系統(tǒng)原理》等適當壓縮,僅僅將其引入門而不作深入的研究,也可將其作為限選課(要考慮照顧部分專升本的學生)。同時重點開設一些學生易于接受、實踐技能性較強的課程,如Flash、Photoshop、網(wǎng)頁制作、VB程序設計、VF程序設計等,這些課程則對他們提高要求,做到精通,并能夠舉一反三,自學與之類似的其他課程。
(2)將職業(yè)資格證書作為重要的教學目標,把職業(yè)資格標準中要求的知識與技能融入到相關課程的教學大綱中,并可將不同類別等級的職業(yè)資格證書折算成相應學分,納入教學計劃。
(3)根據(jù)計算機專業(yè)發(fā)展迅猛的特點,教學計劃不能一成不變,應根據(jù)社會的需要而不斷調整。專業(yè)教學計劃隨社會發(fā)展而發(fā)展,已畢業(yè)的學生也可以根據(jù)需要“回爐”――回校進行新課程的短期學習,使知識及時更新。
4.加強計算機專業(yè)與其他學科的融合
現(xiàn)代職業(yè)的一個重要特點是:基礎科學的分科分類越來越細,將科學研究成果轉化為生產(chǎn)力的社會職業(yè)則呈現(xiàn)綜合性發(fā)展趨勢,社會分工日益變細,職業(yè)知識、技能的交叉面日益加大。交叉職業(yè)和新興職業(yè)所要求的許多技能和知識已大大超過了傳統(tǒng)職業(yè)所界定的內容范圍,它們不只是屬于某種職業(yè),而是許多職業(yè)的共同基礎。計算機的飛速發(fā)展已經(jīng)呈現(xiàn)了一個強有力的態(tài)勢,它的普及意味著越來越多的人把計算機作為一個工具,計算機專業(yè)的學生在求職場上遜色于熟悉計算機的其他專業(yè)的學生已經(jīng)是一個普遍現(xiàn)象。作為純計算機專業(yè)的學生來說,現(xiàn)在就業(yè)的渠道大大減少了。
因此,信息技術與其他學科的整合,作為其他學科的輔助學習手段,會更有效地發(fā)揮作用。教師應當在課程設置中加大這方面的力度,強化其他學科在計算機專業(yè)的融合,雖然不可能做到面面俱到,但可以通過選修課的方式提高學生在其他方面的認知能力。對于學有余力的學生,還可以鼓勵他們學習第二專業(yè)。
參考文獻: