無紙化考試系統設計報告《無紙化考試系統》設計報告B11計信班李廣建、何銳主要內容:針對傳統考試系統容易導致考試偏差等問題,在借鑒現有題庫管理和考試系統開發經驗的基礎上,開發實用的考試管理系統。系統以平臺為基礎,輔以C/S方式,借助或其它數據庫。顧客端應用程序主要實現信息顯示,考生登陸考試以及數據采集;后臺數據庫服務器適于集中儲存和管理業務數據。考試系統應具備班主任信息管理、考生信息管理、試題管理、考試管理、成績處理等功能?;疽螅?應當立足學院實際狀況,查閱相當數目的文獻資料,獨立完成.2系統具備一定的實用價值,能基本滿足基礎考試還要。3要求材料充實,思路清晰,語言流暢。主要參考資料:項目開發Mysql數據庫技術數據庫應用目錄11概述11.1序言21.2研究背景31.3考試系統狀況剖析51.4論文概要62系統的需求剖析62.1考試系統工作步驟62.1.1系統步驟剖析72.1.2系統用例圖72.2系統功能描述82.3系統設計目標82.4本章總結93系統開發環境及技術93.1系統軟件要求93.2系統開發工具93.2.1前臺開發工具103.2.2后臺數據庫113.2.3前后臺連結.3相關技術介紹123.3.1系統結構C/S方式133.3.編程133.3.3ADO技術143.3.4VB連結SQL數據庫153.4本章總結164系統總體設計164.1服務器端164.1.1班主任登陸164.1.2班主任用戶管理174.1.3考生信息管理174.1.4題庫管理174.1.5考試管理174.1.6成績管理174.2顧客端184.2.1考生登陸184.2.2考試184.2.3試題遞交184.3服務器端與顧客端的通訊184.3.1網段網的通訊194.3.控件204.4本章總結205系統具體設計205.1服務器端功能設計205.1.1班主任登陸215.1.2班主任用戶管理215.1.3考生信息管理225.1.4試卷管理235.1.5考試管理235.2顧客端功能設計235.2.1考生登陸245.2.2考試245.2.4試題遞交255.3系統數據庫結構255.3.1用戶登錄255.3.2考生信息管理265.3.3試卷庫管理275.4本章總結286系統功能實現286.1考生模塊286.1.1考生登陸296.1.2考生考試答題326.2班主任模塊336.2.1班主任管理模塊主界面346.2.2考試設置子模塊356.2.3題庫管理子模塊356.2.4考生信息管理子模塊366.2.5成績管理子模塊366.3本章總結377系統檢測377.1檢測目的、方法與內容377.1.1檢測目的377.1.2檢測方式387.1.3檢測內容387.2檢測結果387.2.1單元檢測397.2.2集成檢測407.2.3確認檢測407.2.4檢測結果剖析407.3本章總結41推論43參考文獻無紙化考試系統的設計與實現摘要考試是教育教學的一個重要環節,傳統的考試組織方式多是班主任撰寫考卷,膠印試題,考生考試,班主任批閱試題和成績登記統計。
隨著計算機技術在現代化教學系統中的廣泛應用,以及各種考試的逐漸增多,變革傳統的考試方式變得尤為重要。本人在借鑒已有題庫管理和考試系統開發經驗的基礎上,開發了一個顧客端/服務器方式的無紙化考試系統。本考試系統在操作系統平臺下開發,輔以C/S方式,界面使用VB編程技術,后臺數據庫選用。顧客端主要實現考生登陸考試及評分;服務器端主要適于考試相關數據的采集和管理,并對考試進行監控。考試系統具備班主任用戶管理、考生信息管理、題庫管理、考試管理、成績處理等重要功能。系統早已經過初步檢測,運行比較穩定、可靠,取得了較為理想的療效,基本上達到了設計要求。關鍵詞顧客/服務器方式/無紙化考試系統/VB/總論1.1序言考試系統是根據現代考試理論,利用現代統計法和計算機技術,嚴苛按科學程序命題和推行考試,有效地控制各類偏差,具備統一標準的考試。這些考試要求命題科學化,管理方式規范化、現代化、制度化??荚囅到y應具有以下三個特點:靠譜性、有效性、實用性,即一般所說的效度、效度和分辨度。優越性主要展現在三個方面:(1)依據考試的程序,考前要預先發布考試范圍、考試說明、考試技巧,并發布題樣,這有促使考生作好精神打算,因而有助于考出考生的真實水平;(2)因為考題編制標準化,并且考題難易程度相對穩定,再加之評分、計分的標準化,提高了考生之間成績的可比性;(3)因為選用計算機等科學工具和方式進行評分、計分,最大程度地控制了偏差,保證了考生成績的真實性;(4)因為網路和互連網的普及,并且通過考試系統可以順利推行考試。
以上幾方面,對于高等學院改進教學工作,提升人才培養品質水平無疑都是有益的。現在,國外考試系統工作已起步,在高等高校每學期的考試中,選用考試系統的課目相當少[1][2][3],一是因為高等高校課程課目多,不易統一,此外人們已習慣于過去的考試形式。為了增加考試的效率、效度、信度,實現對考試科學、規范、有效管理,構建和建立標準化考試系統是十分必要的??荚囅到y是根據系統的科學程序組織、具有統一的標準,并對偏差作了嚴苛控制[4][5]。就是說,制訂出客觀而規范的標準,從命題到考試、閱卷、評分等各個環節,努力提高或防止各類偏差,因而測出考生比較真實的成績,使測驗、考試客觀可信,精確有效??荚囅到y通常由專門的考試機構編制試題并組織推行。為了保證考試的獨立性和專業性,世界上許多國家和地區都有這些機構,如英國的教育測驗中心、英國的英國職業考試中心、日本的中學入學考試國家中心,以及臺灣考試局等。其中中國教育測驗中心是世界上最大的考試機構,設立于1948年,共有2200多名工作人員,其中有數量諸多的心理學、教育學、心理與教育檢測學、統計學、計算機科學以及各個學科的學者?,F在在世界170多個國家和地區設有一萬多個考點,每年對國外外近千萬名考生提供上百種不同的考試,知名的雅思考試就是該中心舉行的。
1.2研究背景現階段,學院與社會上的各類考試大都選用傳統的考試形式,在此模式下,組織一次考試起碼要經過四個方法,即人工出卷、考生考試、人工監考和成績評估。雖然,隨著考試類別的不斷提高及考試要求的不斷增加,班主任的工作量將要越來越大,但是其工作將是一件非常繁瑣和非常容易出錯的事情,由此或許形成各類考試偏差。而考試是一個系統的過程,每位環節都或許帶給偏差,所以對考試的每位環節,都要加以控制。但凡使考試結果不精確,便可覺得是考試偏差誘因,考試中常見的偏差,來始于3個方面:試題內部、考試過程、考生本來。(1)試題內部的偏差:包括試卷采樣、試題數目、題型、命題方法、試題科學性等方面。當采樣欠缺代表性,試卷偏于某一方面時,不但不能對考生做出全面視察,達不到檢測目的,并且會把教學引向邪路;當考題人數太少,考生受機遇影響就較大;試卷題量如大多為闡述性問答題,則評分誤差就大等。其他如試卷指導語不清;用詞模棱兩可,題目過難,期限太緊使考生匆忙作答,試卷科學性錯誤使得考生錯誤作答等,都可成為偏差的來源。(2)考試過程的偏差:與考試過程有關的偏差誘因主要是考場的環境,主考和閱卷人員的心態,意外干擾如臨時發覺某些試題膠印不清或裝訂錯誤等,都可引起考試成績的不精確。
非常是考試后的評分記分,包括評分不客觀,合成分數、登記分數出紕漏等是常見的偏差。像闡述題,因為評分標準無法把握,加之監考者的身分、偏好、態度、情緒等誘因的影響,評分偏差幾乎是不可防止的。(3)考生本來的偏差:來自考生本來的偏差誘因既有心理方面的,還有生理方面的??忌鷮荚嚨膭訖C不同,會影響其留意力、持久力、作答心態、反應速率等,因而影響考試成績;臨考前或考試中,過于的緊張而不愉快的情緒會使考生留意力分散;思維窄小,適度的恐懼會使人激動性增加,留意力提升,對作答形成積極影響;考生的應考經驗的影響;得病、疲勞、失眠等生理誘因的影響等。傳統的考試方法容易出現的那些偏差在考試系統中都得到了有效控制。相比于傳統的考試形式,網上考試系統的的特征是考題采樣范圍大,題型多、效度高,難度適中,辨別度好,試卷答法簡略、明確,評分客觀精確,從命題到考試、評分,努力排除無關誘因的影響。最主要的弊端是一方面可以動態的管理各類考試信息;另一方面,計算機化考試監考能力快,系統可以在考試結束時當場給出考試結果,使得計算機考試給了考生最大的公正感。無紙化考試極大的提升了教學的靈活性,目前在許多領域早已有了廣泛的應用。
最有影響的案例就是ETS(中國教育考試中心)舉行的GRE(中國研究生入學考試)的計算機化考試,它使考試由原先的每年只好有兩次出席考試的機會便為每位工作日都可以出席考試。因而,輔以無紙化考試模式將是之后考試發展的趨勢,無紙化考試必必將逐漸興起。課題的研究目的在于適應現代的現實狀況,解決考試系統的關鍵技術問題,設計具有較高實用性的系統,技術上綜合利用VB編程技術、數據庫技術等技術。該系統集班主任信息管理、考生信息管理、試題管理、考試管理和成績處理等多項功能于一體,力求以精確、高速信息技術為方式,實現題庫管理、無紙化考試等環節的高度手動化、科學化。通過增加測驗考試的效率、增強測驗考試的反饋療效,揭露考生知識能力的局部缺陷,使教與學都更有針對性,進而增加班主任的教學水平和考生的學習療效。1.3考試系統狀況剖析隨著網路技術的發展,運行在單機上的考試系統基本上趨向淘汰趨勢,主要成因是單機運行的考試系統似乎沒有網路需求,但缺少數據共享、集中管理等功能,那樣反倒給管理人員提高了較大的負擔。現在,在一些軟件設施比較落后的地方,也有那樣的系統在使用;更多的是隨著軟件設施的增加,采用那樣系統自帶的題庫,完成自測工作。
基于網路的考試系統是主流的發展方向,它大體分為適用于網段網和適用于廣域網兩類[8]。市場上商業化的考試系統主要是后者,是針對網段網的;而前者則常常被實現為CGI方式。從實現方法上來看,適用于網段網的計算機考試系統可以分為顧客/文件服務器方式和顧客/數據庫服務器方式兩類。(1)顧客/文件服務器方式這些方式在初期的考試系統中利用的較差。初期的PC操作系統主流是DOS,網段網則以網路系統為主[11][12]。因為網路操作系統提供了強悍便利的文件服務功能,便于被設計和開發人員接受,所以許多開發者將網的這些服務應適于網路考試系統中。在這些機制下,考試的試題數據和考生的答卷數據都是以文件的形式儲存在網的文件服務器上;坐落顧客端的程序從指定的位置獲取試題文件,并將考生的答案文件通過網路保存到文件服務器上。選用這些機制的考試系統,把整個業務邏輯幾乎完全置于顧客端程序實現,服務器也是充當了一個保存文件的公共場所。那樣的系統只有很簡略的管理功能,考生與其答案文件之間一般依賴事先約定好的一種簡略的對應關系,比如,以考生的考號為文件名保存考生答卷。因此,那樣的考試系統一般還要額外的人工整理工作。
(2)顧客/數據庫服務器方式顧客/數據庫服務器方式是現在應用最為廣泛的一種機制。這主要是因為網路的普及應用,旨在為基于顧客/服務器方式的數據庫應用提供了便捷的圖形環境,而且為開發者提供了相當豐富的開發工具。在選用這些機制的考試系統中,所有的數據都被保存在服務器上,使得大部份被保存在數據庫中。顧客端安裝有可以訪問數據庫的應用程序,完成幾乎所有的業務邏輯,包括身分驗證、顯示試卷、接受答案和保存答案等。因為有數據庫的支持,所有那樣的系統一般擁有較為健全的信息管理體系,他們可以挺好地保存、管理有關考試的數據,比如考生的名單信息等。因而那樣的系統在巨大程度上手動化了考試過程的管理工作,因此得到了相當廣泛的應用?,F在這種系統一般使用的數據庫開發工具備:、和等。的普及并且人們嘗試爭創可以運行于的計算機考試系統[16]。從現在的狀況看,廣泛選用的是通用網段插口(CGI)形式,其系統結構和工作步驟也比較明晰。在這些模式下,提供給考生的是由Web服務器動態生成的Web頁面,考生在頁面中填入答案后,直接將結果遞交到Web服務器上。
一般那樣的系統還可以實時改卷,并將結果反饋給考生。現在開發那樣的系統不僅用初級語言撰寫CGI程序外,使用最為廣泛的就是谷歌的ASP(),也有Perl等。使用其他的技術也可以爭創運行在上的考試系統[17][18],例如使用Java技術,在web頁面中嵌入;另外一些系統是原有的網段網考試系統添加了遠程數據傳輸功能,輔以分考場方式考試;也有的系統是選用業界提供的整套方案,比如群體系統。1.4論文概要第一章為總論。介紹了系統開發的背景和現今考試系統的狀況剖析;第二章為系統需求剖析。剖析了考試步驟,提出了系統要實現的功能,系統的設計目標等;第三章為系統開發環境與技術。主要介紹了系統的開發工具與使用的技術等;第四章為系統總體設計。主要介紹考試系統的總體設計思路、設計原則;第五章為系統具體設計。主要介紹系統各主要功能的詳細實現,系統的框架結布光及詳細功能,數據庫結構等;第六章為系統功能實現。包括系統的界面、具體使用狀況等;第七章為系統檢測。主要選用了黑盒檢測方式對系統進行了檢測;最后為推論,小結了論文所做的主要工作和下一步的工作計劃。
2系統的需求剖析本章將對考試系統進行需求剖析,對其業務過程進行簡略的描述,對系統要實現的功能進行介紹,對系統設計目標進行簡略的說明。2.1考試系統工作步驟2.1.1系統步驟剖析考試系統分為服務器端和顧客端,服務器端為班主任提供了一個組織考試、管理考試的界面,顧客端為考生提供一個出席考試的界面。通過身分認證后,班主任可以在服務器端進行班主任信息管理、考生信息管理、試題管理、考試管理和成績處理等操作,而考生則可以在顧客端使用登陸、參加考試和交卷評分等功能??荚囅到y業務步驟的設計如圖2.1、2.2所示。2.1.2系統用例圖按照上述考試系統業務步驟設計,可以得出系統用例圖,如圖2.3所示。其中用例包括:用戶登入、教師信息管理、考生信息管理、試題管理、考試管理、考生出席考試、成績管理等。參與者包括:班主任和考生。2.2系統功能描述考試系統的考試管理包括考試開考時間及考試期限的設置等。在考試系統中,先由班主任用戶在考試系統題庫管理模塊中按照考生還要考試的知識狀況和相關考試項目來進行試卷的添加。之后,由班主任用戶在考試系統會考試設置模塊中設置考試的開考時間、考試期限以及考試的試題型等相關信息。在考生出席在線考試時,先要正確鍵入準考證號,適于驗證是否是有效用戶,之后才會即將出席考試。
系統可以手動生成試題(可以是一份或則是多份)。在考試開考時間抵達前,考生不可以進行答題。考生答題完畢,檢測無誤,可以交卷??荚嚂r間快結束時,系統給出提示,告誡考生早日完成答題并交卷。到考試時間結束時,所有考生手動強制結束答題,并手動完成試題遞交及評分等。2.3系統設計目標考試系統考試功能的設計目標是希望通過對試題出題,考試安排的原本設定,考生信息的添加,取得相關信息保存到數據庫表中。當考生出席考試時,應當保證考生身分的正確,考試時間的正確,考生題目顯示正確,考試結束后及時交卷的正確以及答案比對的正確。防止在考試時考生紛亂、考試沒開始就答題和考試結束后繼續答題的問題。同時保證系統在同時進行多個考試和交卷時,不會互相形成干擾。2.4本章總結本章在對考試系統的考試功能進行的需求剖析基礎上,明晰了系統的主要功能:班主任信息管理、考生信息管理、試題管理、考試管理和成績處理等。最后,提出了系統擬達到的設計目標:考生身分正確,考試時間正確,考生題目顯示正確,考試結束后及時交卷的正確以及答案比對的正確。保證系統在同時進行的多個考試不會互相影響。3系統開發環境及技術3.1系統軟件要求一臺安裝有數據庫(00)的機器CPU:PIV2.0GHZ或更低頻率的CPU顯存:或更多的顯存硬碟:起碼10G以上或更多的磁盤空間3.2系統開發工具3.2.1前臺開發工具谷歌公司的.0是應用程序開發工具,是現今最為廣泛的、易學易用的面向對象的開發工具。
提供了大量的控件,很多控件可適于設計界面和實現各類功能,提高了編程人員的工作量,也簡化了界面設計過程,因而有效的減少了應用程序的運行效率和牢靠性VB6.0所具備的特征:1.具備面向對象的可視化設計工具OOP在VB中,應用面向對象的程序設計方式(OOP),把程序和數據封裝起視為一個對象,每位對象都是可視的。程序員在設計時只需用現有工具按照界面設計的要求,直接在屏幕上畫出窗口、菜單、按鈕、滾動條等不同類別的對象,并為每位對象設置屬性。程序員的編程工作僅限于撰寫相關對象要完成的功能的程序,因此程序設計的效率可大大減少。2.風波驅動的編程模式風波驅動是十分適宜圖形用戶界面的編程方法。傳統的程序設計是一種面向過程的方法,程序總是按事先設計的步驟運行。但在圖形用戶界面的應用程序中,是由用戶的動作即風波把握著程序運行的流向,每位丑聞都能驅動一段程序的運行。程序員只需撰寫響應用戶動作的代碼,而各個動作之間不一定有聯系。那樣的應用程序代碼通常較短,因此程序既便于撰寫又便于維護。3.提供了易學易用的應用程序集成開發環境在VB集成開發環境中,用戶可設計界面、編寫代碼、調試程序,直到把應用程序編譯成可執行文件在中運行,使用戶在友好的開發環境中工作。
4.結構化的程序設計語言VB具備豐富的數據類別和結構化程序結構,但是簡略易學。5.支持多種數據庫系統的訪問6.支持動態數據交換(DDE)、動態鏈接庫(DLL)和對象的鏈接與嵌入技術(OLE)7.聯機幫助功能VB具備豐富的數據類別和結構化程序結構,但是簡略易學。因為VB6.0具備可視化設計截面,所以開發上去比較快。甚至截面設計比較快。甚至也支持多數據庫系統訪問,所以將來在別的系統中繼承上去也比較便捷。因為提供易學易用的程序集成開發環境,所以對于菜鳥上手比較快。綜合前面VB6.0的一些特點因此我選擇VB6.0來開發我的系統。3.2.2后臺數據庫用戶對數據庫的使用,是通過數據庫管理系統提供的語言來實現的。不同的數據庫管理系統提供不同的數據庫語言。關系數據庫管理系統幾乎都提供關系數據庫標準語言——SQL。SQL的全稱是age,即結構化查詢語言。00是一種功能強悍的關系型數據庫管理系統。下邊將對00的特性和功耗進行介紹:00具備高度的擴充性和高靠譜性。
00使用了工業界最先進的數據結構,才能為要求最嚴苛的企業應用提供高度的可擴充性和高靠譜性。00在許多工業基準檢測中的功耗都成立了新的世界紀錄,包括事務處理功耗執委會的TPC-C基準,它橫掃了運行于任何軟件或操作系統環境下的同類數據庫產品。00的功耗還在平臺下為SAPR/n(SD)標準應用程序據基準成立了新的世界紀錄。但是00被設計拿來充分運用近期和今后的高檔對稱多處理器(SMP)技術,它還是可以把數據庫的工作負荷分布到普通的服務器集群上。那樣可以實現高度的可擴充性,即只須要向數據庫集群中降低新的普通服務器即可,而不用把老系統替換為更大、更高昂的新機器。00引進了一個新的特征,被稱為分布式數據庫分區視圖()它可以把工作負荷界定到多個獨立的服務器起來,以便為推行電子商務的顧客提供了無限制的可擴充性。
00直接支持最新的、高速的系統區域網路(SAN)技術。00在它的管理控制臺和安裝向導中密切集成了4節點故障恢復技術,進而保證了高度的系統可用性。00還引用了索引視圖技術,利用該技術可以為關系型數據庫設計出功能的報表應用程序。00可以進行最迅速的應用程序開發。谷歌提供了許多技術和工具,作為數據庫系統的標準集成組件。并且通過精妙的設計以及手動調整、自動管理特點,00是顧客可以更快、更容易的享受所有那些最先進的剖析技術所帶給的弊端,才能快書遞交應用,旨在博得競爭上的優勢。谷歌在開發數據庫服務器手動調整和手動管理技術方面仍然在工業界處于領先地位。這些技術使顧客可以集中精力處理商業戰略上的問題,而不是去細微調整數據庫服務器的各項參數。00可以為最新的軟件進行優化,包括大顯存、超高速硬盤子系統以及SAN等,以便擴充了這項功能。00與的活動目錄服務的密切集成容許集中管理功能。
00和其他企業資源,因而極大地簡化了小型組織中的體統管理任務。3.2.3前后臺連結的全稱為vity,即開放式數據連結,是公司在1989年推出的連結外部數據庫的標準。ODBC有以下特點:ODBC提供了一個能訪問大量數據庫的單一插口。ODBC使顧客應用程序的開發可以獨立于前端服務器[25]。開放式數據庫連結(ODBC)技術為訪問不同種類的SQL數據庫提供了通用插口。ODBC是基于結構查詢語言(SQL)的,借此作為訪問數據的標準。此插口提供了最大的互操作性:一個應用程序可以通過一組公用代碼訪問不同的SQL數據庫管理系統(DBMS)。這促使開發人員才能在不以特定的DBMS為目標的狀況下建立和分發一個顧客端/服務器應用程序。之后,會添加數據庫驅動程序以將應用程序鏈接到用戶選擇的DBMS。以下特點說明了ODBC的靈活性:應用程序沒有綁定到專有供應商API。SQL句子可以明晰地包括在源代碼中也可以在運行時即時建立。應用程序可以忽視基礎數據通訊合同。數據可以用方以便應用程序的格式進行發送和接收。
ODBC是隨新興的國際-標準一起設計的。現在提供了可適于55種最流行的數據庫的ODBC數據庫驅動程序。3.3相關技術介紹3.3.1系統結構C/S方式設計這個系統時,有個問題擺在我面前,那就是對于這個系統我是選用c/s機制進行開發呢,還是b/s?然后我把這兩個的異同點列舉出來,進行了一個比較。C/S方式開發考試系統特點:因為C/S方式是通過顧客端直接與服務器交互數據,所以其相應速率比較快,不須要通過IE瀏覽器進行數據傳輸,所以數據比較安全。很適于適時遞交數據系統。劣勢:因為是直接用顧客端直接與服務器交互,所以須要為每臺筆記本安裝顧客端,所以對筆記本的配置要求比較高。使得對系統升級的話,就提高了升級的復雜性,由于須要為每臺筆記本都更新顧客端。B/S方式開發考試系統特點:因為B/S方式是通過IE瀏覽器來訪問,因此它適于分散性的考試系統,使得用戶只須要能訪問IE就可以出席考試。因為只須要對服務器進行更新,因此更新上去比較快。劣勢:因為選用IE瀏覽器經過網路傳輸,所以數據的安全性不高,很或許造成數據的遺失,由它沒有顧客端因而顧客端只好進行一些數據的查詢,讀寫,都須要跟遠程服務器進行交互,所以降低了服務器的壓力。
但是不適宜適時的數據進行交互,那樣會造成服務器壓力會巨大。綜合前面B/S與C/S的異同點可知,因為我們考試系統適用于小學,而且對數據交互比較經常,對數據的安全性須要很高。因而選用C/S方式來開發該系統。3.3.編程下網路編程的規范-是下得到廣泛應用的、開放的、支持多種合同的網路編程插口。從1991年的1.0版到1995年的2.0.8版,經過不斷加強并在Intel、、Sun、SGI、、等公司的傾力支持下,已成為網路編程的事實上的標準。通訊的基礎是套插口(),一個套插口是通信的一端。在這一端上你可以找到與其對應的一個昵稱。一個正在被使用的套插口都有它的類別和與其相關的進程。套插口存在于通信域中。通信域是為了處理通常的句柄通過套插口通訊而引入的一種具象概念。套插口一般和同一個域中的套插口交換數據(數據交換也或許穿越域的界限,但這時一定要執行某些解釋程序)。在一次網路通訊/連結中有以下幾個參數還要被設置:本地IP地址-本地端標語-對方端標語-對方IP地址。
右邊兩部份稱為一個半關聯,當與右側兩部份推行連結后就稱為一個全關聯。在這個全關聯的套插口上可以單向的交換數據。假如是使用無連結的通訊則只須要構建一個半關聯,在發送和接收時指明另一半的參數就可以了,因此可以說無連結的通訊是將數據發送到另一臺主機的指定端口。因此不論是有連結還是無連結的通訊都不須要雙方的端標語相似。3.3.3ADO技術VB提供了多種多樣的數據庫訪問技術來滿足各類信息查詢的要求,如ADO,RDO,Data控件,DAO等。這種技術各有優點,他們提供了簡略、靈活、訪問速率快、可擴充性好的開發技術。其中,ADO是數據庫應用程序開發的新插口,它具備較強的功能、通用性好、效率高、占空間少等優點。它代替了原先的DAO和RDO兩種數據訪問插口。另外還降低了一些用戶先前沒有接觸到的特性。隨著信息網路化的發展,對數據庫的訪問宜選用ADO對象模型,以斬獲更好的功耗,更大的靈活性[28]。在本系統中就主要使用了ADO技術來進行數據庫的訪問。使用ADO訪問數據庫的基本步驟(1)在工具箱中添加控件。操作為:“工程”→“部件”→“rol”。
.(2)在窗體上放置一個控件,名稱默認為。(3)設置.屬性值為“DSN=”。其中“”為對準jxgl.mdb數據庫的數據源名稱,可通過控制面版預先設定。(4)設置.項,選擇命令類別為“2-”,并在表名項中選擇“jsb”。(5)將控件與Text文本框綁定。放置文本框控件于窗體,將其屬性值設置,屬性值設為表中一數組,如gh。運行程序,可用控件的方向箭頭來瀏覽。不僅應用上述引進一組數據綁定控件顯示數據內容此外,還可以使用數據網格控件來顯示多個數組內容。方法為:(1)先通過“工程”→“部件”→“trol”引入數據網格控件并在窗體中描繪一個控件。(2)把綁定到ADO數據控件上。設置屬性值為:。(3)把數據庫數組加入到控件上。鍵盤右擊控件,選擇檢索數組,則當前數據表的主鍵全部導出到數據網格控件上。
3.3.4VB連結SQL數據庫VB連結SQL數據庫的形式主要有以下兩種:1.直接字符串聯接:cnn.open"=;=true;=數據庫用戶名;=數據庫密碼;=數據庫名;=IP地址"或cnn.open“=;=計算機名;=數據庫名;USER=用戶名;=密碼”2.ODBC連結cnn.open"=;=true;=數據庫用戶名;=數據庫密碼;=數據庫名;=ODBC名"本系統主要選用了第二種模式。3.4本章總結本章主要介紹了開發系統所用的工具,前臺輔以谷歌公司的.0,后臺數據庫選用00,前后臺數據連結選用ODBC數據庫驅動程序,系統結構選用C/S方式,服務器端與顧客端通訊選用編程,數據庫連結選用ADO技術。
4系統總體設計考試系統分服務器端和顧客器端,對應的操作對象分為班主任和考生,角色不同,操作的模塊也不同。4.1服務器端考試系統服務器端為班主任管理功能模塊,具備班主任信息管理、考生信息管理、試題管理、考試管理、成績處理等功能,按照其實現的功能目標,總體結構框如圖4.1所示。4.1.1班主任登陸班主任登陸時,系統按照用戶名和密碼來辨別用戶的合法性。若用戶名及密碼正確則登錄成功,若密碼錯誤則給出密碼出錯信息要求用戶再次鍵入密碼。只有當用戶名和對應密碼正確時才會通過系統驗證步入到指定的主頁面進行相應功能操作。4.1.2班主任用戶管理班主任基本信息包含班主任用戶名和密碼??梢詫崿F班主任用戶的添加、刪除、修改及密碼的更換等功能。4.1.3考生信息管理考生信息是指出席考試考生的基本狀況的集合??忌鱿荚嚽皯攲⑵浠拘畔浫霃亩M行管理,同時只是考生登陸考試系統進行考試的根據??忌拘畔忌鷮W號,姓名、所在系部和班委等??忌畔⒐芾戆忌畔⑻砑印⒖忌畔⒏?、考生信息刪掉幾個模塊。考生基本信息錄入后,可以對考生基本信息中數據進行更改,但所有操作須要班主任用戶來完成。4.1.4題庫管理題庫管理拿來實現對試卷庫的管理。
可以查看試卷庫中各題量試題型的多少,提供試卷的鍵入、修改和刪掉等功能。4.1.5考試管理考試管理拿來實現對考試的相關設置。并進行考試監控。考試前應當對考試的開考時間和考試期限進行設定。在每天考試時,每種題量應當都有一定的分數,各小題的分數總和為該大題得分,各大題總分和為試題總分,通常設試題總分滿分為100分。4.1.6成績管理考生考試結束后班主任可以按4種查詢模式對師生考試成績進行查詢,以把握師生考試的狀況。4.2顧客端考試系統顧客端為考生功能模塊,拿來實現考生考試功能。按照其實現的功能目標,總體結構框如圖4.2所示。4.2.1考生登陸考生登陸指考生驗證踏入考試系統。考生在顧客端上鍵入準考證號碼,遞交后和服務器上保存的數據進行對比,正確則踏入考試系統,錯誤則給出錯誤信息返回要求考生再次登錄。4.2.2考試考生在登陸后查看考試必知,考試必知具體介紹了本次考試的相關信息,如開考時間,考試期限,考試題型及類別等等??忌梢詫荚囉幸粋€全局的把握。開始考試后,系統手動生成隨機題目,考生選擇相應題量踏入相應答題界面進行答題。4.2.3試題遞交假如考生完成考試要提早交卷,或則考生考試時間已到需強制收卷,則啟動交卷程序進行收卷。
考試快結束時系統會提示考生早日完成答題并進行交卷。交卷后系統將考生答卷與正確答案進行比對并估算最后得分反饋給考生,同時將成績保存到數據庫供班主任查詢。4.3服務器端與顧客端的通訊4.3.1網段網的通訊在TCP/IP網路中兩個進程間的互相作用的主機方式是顧客機/服務器方式(/)。該機制的完善基于以下兩點:1、非對等作用;2、通信完全是異步的。顧客機/服務器方式在操作過程中采取的是主動請示模式:首先服務器方要先啟動,并按照請示提供相應服務:(過程如下)1、打開一通訊通道并告知本地主機,它樂意在某一個公認地址上接收顧客懇求。2、等待顧客懇求抵達該端口。3、接收到重復服務懇求,處理該懇求并發送應答訊號。4、返回第二步,等候另一顧客懇求5、關閉服務器。顧客方:1、打開一通訊通道,并連結到服務器所在主機的特定端口。2、向服務器發送服務懇求信令,等候并接收應答;繼續提出懇求……3、請求結束后關掉通訊通道并中止。4.3.控件運用控件可以輕松地實現網段網通訊??丶庋b了所有冗長的技術細節,提供了訪問TCP和UDP網路服務的便捷途徑。
只需通過設置控件的屬性并讀取其技巧就可輕易連結到一臺遠程計算機中,使得還可以單向交換數據,而這一切都不需了解TCP的細節或讀取低級的。控件可以使用兩種合同:TCP合同和UDP合同,本系統中使用了TCP合同。TCP合同即數據傳輸合同,它容許爭創和維護與遠程計算機的連結,使其互相可以進行數據傳輸。運用TCP合同通信應當分別構建顧客應用程序和服務器應用程序。在爭創顧客應用程序時,應當曉得服務器計算機名或其IP地址(存于屬性)、及服務器計算機進行偵聽的端口(存于屬性),于是讀取方式。爭創服務器應用程序時,就應相應設置一個偵聽端口(屬性)并讀取方式。當顧客機還要連結時(),都會發生風波。為了完成連結,你可以在丑聞中讀取方式。構建連結后,任何一方計算機都可以發送、接收對方數據。假如你要發送數據,需讀取方式。當接收到數據時,會發生風波,讀取風波中的步驟就可以榮獲對方傳送的數據。
4.4本章總結本章主要介紹了系統的總體步驟,剖析了系統各個模塊的功能。班主任登陸主要適于班主任用戶身分驗證,試卷管理主要提供試卷的查看、輸入、修改和刪掉等題庫維護功能,考生信息管理適于管理要出席考試的考生的基礎信息,考試管理功能完成對考試相關參數的設定及考試監控等,班主任信息管理主要管理班主任用戶信息,成績處理模塊適于對考生成績的查詢等。5系統具體設計5.1服務器端功能設計服務器端具備班主任用戶管理、考生信息管理、題庫管理、考試管理、成績處理等功能。詳細介紹如下。5.1.1班主任登陸班主任登陸時,系統先檢測用戶名和密碼,若密碼正確則登錄成功,若密碼錯誤則給出密碼出錯信息要求用戶再次鍵入密碼。只有當用戶名和密碼均正確時才會通過系統驗證步入到指定的界面進行相應功能操作。步驟圖如圖5.1所示。5.1.2班主任用戶管理班主任基本信息為用戶名和密碼。與考生基本信息類似,班主任基本信息功能模塊包含班主任信息降低、教師信息刪掉、教師信息更改等功能模塊。班主任信息管理框圖如圖5.2所示。5.1.3考生信息管理考生基本信息包含考生信息鍵入、考生信息更改、考生信息刪掉幾個模塊??忌拘畔浫牒?,可以對考生基本信息中數據進行更改。
考生信息管理框圖如圖5.3所示。5.1.4試卷管理考試試卷題量分為選擇題、填空題兩種基本題量,每種題量都可以鍵入題目和答案,鍵入后都可以進行相應的更改。選擇題包含有試卷題面和試卷選擇的標準答案,在手動監考時將考生選擇答案與試卷標準答案進行對比,若二者相似,則計分,否則不計分。改錯題量包含有試卷題面和試卷標準答案。兩種題量分別錄入,保存到數據庫中相應表中。對于早已鍵入到試卷庫中的考題管理員可以調出進行更改,試題鍵入后管理員才能瀏覽以便于管理員鍵入和更改題目。處理各類題量試卷要求才能實現或達到才能鍵入、修改或瀏覽的目的。試卷管理功能框圖如圖5.4所示。5.1.5考試管理試卷題庫構建好之后,為了可以從題庫中按要求隨機抽取題目,產生考生的考試試題,還要對考試試卷的規則進行設定。考試規則主要包括設置考試時間和試題型等內容。(1)考試設置功能:主要適于班主任用戶對試題題型的設定和考試時間的設定。試卷數量的控制,由班主任用戶填寫試題上試卷的總人數,系統就按照其所填寫的數目生成試題??忌槿☆}庫中不同的試卷組成完全不同的考題。即使考題不一樣,而且試題的分數都是一樣的。(2)考試控制功能:主要適于監控考生的考試,以及考試開始時間加載試題、考試結束考題上繳考題等功能的實現。
5.2顧客端功能設計5.2.1考生登陸考生登陸指考生驗證踏入考試系統。考生在顧客端上鍵入準考證號后和服務器上保存的數據進行對比,正確踏入無紙化考試系統,錯誤則給出錯誤信息返回要求考生再次登錄??忌顷懣驁D如圖5.5所示。5.2.2考試考生在登陸后可核實考生信息,閱讀考試說明,等候考試命令。開始考試后,考生隨機組卷生成的試題進行考試,同時計數器開始計時??忌荚嚳驁D如圖5.6所示。5.2.4試題遞交假如考生完成考試要提早交卷,或則考生考試時間已到需強制收卷,則啟動交卷程序進行收卷。啟動交卷過程后,首先掩藏答卷界面,抵制考生繼新作答。交卷后將考生答卷與正確答案進行比對并估算最后得分反饋給考生,同時將成績保存到數據庫供班主任查詢??忌季砩辖贿^程框圖如圖5.7所示。圖5.7交卷功能框圖5.3系統數據庫結構本系統在設計時所確立的題庫數據庫均為格式,輔以提供的數據約束,較差地解決了數據一致性的問題。5.3.1用戶登錄無論是班主任用戶還是考生用戶,踏入考試系統首先要做的第一步工作便是登陸系統,即驗證登陸的用戶名和密碼。登錄時先檢測有無鍵入的用戶名,如有則繼續檢測密碼,如密碼正確則登錄成功可步入相應的主頁面,否則提示密碼出錯信息,要求用戶再次登陸。
在數據庫中構建用戶表,表中儲存有用戶的用戶名、密碼。用戶表結構如表5.1所示。表5.1用戶表鍵值否數組名稱數組類別數組寬度容許空否備注說明是否用戶名否否用戶密碼5.3.2考生信息管理考生信息是指出席考試的每一位考生基本信息集合,主要包括考生學號、考生姓名、所在系部和班委等??忌畔⒐芾硎侵笇忌男畔⒉拍鼙阌诘剡M行提高、刪除、修改操作??忌畔⑴c系統中其它表無關,按照還要可以擴展。在本系統中,設計的適于考試的考生信息表如表5.2所示。表5.2考生信息表字段否數組名稱數組類別數組寬度容許空否備注說明否否考生姓名是否考生考號否否所在系部否否所在班委否是考生得分5.3.3試卷庫管理試卷庫的管理是實現考試成功與否的關鍵。我們以計算機類課程的考試狀況為例,將試卷界定為選擇題、填空題兩種題量。每種題量推行相應的錄入、修改、刪除操作模塊。選擇題目有題面,因此有一個題面數組,目前例行考試模式通常只有四個答案,所以,系統表設置四個答案的記錄數組。
對于題目的鍵入,使用表單來鍵入各數組的內容,在班主任遞交后保存到數據庫。對于更改試卷庫模塊,還要顯示試卷的具體內容,更改完相應內容后保存數據即可。對于刪掉試卷庫模塊,顯示考題內容后,選擇相應的題目,選擇刪掉即可。因為每種題量題目的題面和答案各不相似,表格的方式也不相似,本系統設計數據庫表格方式如表5.3至表5.4所示。表5.3選擇題目表鍵值否數組名稱數組類別數組寬度容許空否備注說明否題目內容否A選擇否B選擇否C選擇否D選擇否正確選擇否本題分值表5.4改錯題目表字段否數組名稱數組類別數組寬度容許空否備注說明否題目內容否標準答案否本題分值5.4本章總結本章較為具體描述了怎樣實現考試系會考試管理等功能,考生模塊功能的實現以及系統數據庫的表結構。首先介紹了班主任登陸的步驟圖,接著用框圖分別具體介紹了題庫管理、考生信息管理、考試管理和班主任用戶管理等主要模塊的功能,其高考試管理模塊中有試題設置和考試控制等功能,于是較詳盡介紹了考生模塊的登陸、考試和試題遞交等功能,最后介紹了數據庫中用戶表、考生信息表、選擇題表和改錯題表等表的表結構。
6系統功能實現6.1考生模塊6.1.1考生登陸考生考試模塊為顧客端程序,雙擊該程序字體即可踏入考試系統登陸界面,如圖6.1所示。考生登陸應當滿足以下四個條件:(1)服務器應當處于開啟的狀態下(2)考生應當事先存在于數據庫中(3)考生還要鍵入正確的準考證號(4)考生還要鍵入正確服務器IP地址鍵入服務器IP地址后需點擊”連接”按紐,假如服務器未開啟或考生填寫的服務器IP地址不正確,則難以登陸;當服務器開啟后,鍵入正確IP地址并點擊”連接”按紐后,會彈出提示框,提示”已成功連結服務器”??忌I入正確的準考證號后按“登錄”按鈕即可登入??忌鷳敒槭孪却嬖诜掌鲾祿熘械目忌軌虻侨耄駝t系統將手動退出。圖6.1無紙化考試系統登陸6.1.2考生考試答題考生登陸認證通過后,系統會顯示考試必知窗體,窗體最底部有操作信息提示,下方有開考時間和系統當前時間。考生應當等候開考時間到來以后才可答題,否則點擊“開始考試并計時”按紐時會給出提示”開考時間未到,請耐心等候!”;開考時間到來以后,系統會給出提示“可以開始考試了!”。此刻,考生可以點擊“開始考試并計時”按紐進行考試,系統將手動生成隨機試題并顯示答題窗口各計時窗口,同時考試步入倒計時,如圖6.2、圖6.3所示。
圖6.2考試必知窗口考試題量分為選擇題和改錯題兩種,通過點擊選擇題和改錯題選項卡或菜單中的”考試項目”中對應的子菜單進行切換。考試過程中可以點擊考試時間窗體兩側按鍵,拿來控制考試說明窗體的掩藏和顯示。選擇題從A、B、C、D4個備選答案中選擇其中1個,點擊相應的單選按鍵。通過“前一題”和“后一題”按鈕切換題目。也可直接點擊題號旁邊的框直接切換到指定一題。改錯題還要將答案鍵入到指定的文本框中。做過的題目可以返回進行更改。操作模式與選擇題類似。如圖6.4、6.5。圖6.3考試窗體計時窗體當考試時間剩余時間為1分鐘時,系統會給出提示”您也有1分鐘!請快點遞交答案!”。假如考生完成考試要提早交卷,或則考生考試時間已到需強制收卷[31],則系統手動啟動交卷程序進行收卷。啟動交卷過程后,系統將首先掩藏答卷界面,抵制考生繼新作答。交卷后將考生答卷與正確答案進行比對并估算最后得分反饋給考生,同時將成績保存到數據庫供班主任查詢。圖6.4考生答題界面(a.選擇題)圖6.5考生答題界面(b.改錯題)6.2班主任模塊本模塊包括班主任用戶管理、考生管理、題庫管理、成績管理等幾個子模塊,可完成考生信息的錄入、編輯、刪除等操作;試卷庫建設,試卷錄入、編輯等操作;考生成績查詢顯示等操作。
運行無紙化考試系統——教師管理模塊。若登陸成功,即可踏入考試系統——教師管理模塊的主界面進行操作,如圖6.6~6.9所示。圖6.6班主任登陸界面1、DFD圖:圖6.7班主任登陸DFD圖2、流程圖:SHAPE\*圖6.8班主任登陸步驟圖班主任管理模塊主界面班主任可單擊相應的菜單踏入相應的子模塊進行相關操作。下邊主要介紹一下各模塊的主要功能:“系統功能”菜單,主要拿來進行班主任用戶的管理、返回登陸、退出系統等??梢酝瓿砂嘀魅斡脩舻奶砑?、注銷、修改、密碼修改等?!翱荚嚬芾怼辈藛?,主要拿來進行考試相關設置??梢栽O置考試開始的時間以及考試所用時間?!霸囶}管理”菜單,主要拿來實現對試卷庫的管理。可以進行選擇題和改錯題兩種題量題型的查看、題目的添加、刪除、修改等?!翱忌畔⒐芾怼辈藛?,主要拿來實現對考生的管理。可以完成考生相關信息的添加、刪除、修改等?!俺煽兲幚怼辈藛?,主要拿來進行考試結束后班主任對師生成績的查看。可以選用4種查詢模式。界面中的顧客機列表和顧客機連結信息拿來顯示監控考生在線考試狀況??忌顷懠巴顺鱿到y的信息都可以顯示在顧客機連結信息框中,并且閱卷同學對考生考試狀況有一個全局的了解。
左下角可以顯示在線考生的人數。圖6.9班主任管理模塊主界面考試設置子模塊考試設置子模塊可以進行考試期限的設置和開考時間的設置??荚嚻谙抟苑昼姙闇?,開考時間還要根據要求格式填寫。試卷數量的控制,由班主任用戶填寫試題上試卷的總人數,系統就按照其所填寫的數目生成試題。圖6.10考試設置子模塊界面題庫管理子模塊題庫管理子模塊包括“選擇題”、“填空題”2個選項卡,選擇不同的選項卡進行相應題目的操作。在試卷錄入時,不能留有空白。全部塞滿后無紙化考試系統,點擊“保存”按鈕即可。在試卷刪掉時,要先從試卷列表中選中,按“刪除”按鈕。圖6.11題庫管理子模塊界面考生信息管理子模塊考生管理子模塊包括“考生信息錄入”、“考生信息更改”、“考生信息查詢”3個選項卡,選擇不同的選項卡進行相應的操作。成績管理子模塊成績管理子模塊主要負責班主任對師生的“成績查詢”,可以“按學號查詢”、“按姓名查詢”、“按系部查詢”、“按班委查詢”4種模式。按學號查詢及按姓名查詢時,還要鍵入正確的學號或考生姓名,按系部查詢或按班委查詢時,只需選擇要查詢的系部或班委。6.3本章總結本章介紹了考試系統在考試過程中的實際應用例子,通過考生登陸界面、考生答題界面、教師管理主界面、考生管理界面、題庫管理界面、成績管理界面、考生成績處理界面等一系列友好界面呈現了系統實現的方式以及操作的基本過程。
實踐證明,本系統達到了設計的預期目的和要求,有效提升了中學考務工作的品質和效率。7系統檢測7.1檢測目的、方法與內容硬件品質是各類特征的復雜組合。硬件品質反映了以下三方面的問題:(1)硬件需求是測度硬件品質的基礎。不符合需求的硬件就不具有品質。(2)在各類標準中定義了一些開發準則,拿來指導硬件人員用安裝工程化的方式來開發硬件。假如不遵循這種開發準則,軟件品質就得不到保證。(3)常常會有一些蘊涵的需求沒有明晰地提出來。諸如,硬件應具有良好的可維護性。假如硬件只滿足這些準確定義了的需求而沒有滿足某些暗含的需求,硬件品質也不能保證。硬件品質保證策略:為了在硬件開發過程中保證硬件的品質,主要采取下列舉措:①審查;②復查和管理復審;③測試。7.1.1檢測目的在程序開發過程中,通常說總會犯一些想像不到的錯誤,影響系統的正常運行。因此開發人員要對系統進行檢測,以解決錯誤問題,使系統才能正常運行。硬件檢測首先要明晰目標,于是要把握檢測步驟策略。著力做到:盡或許地將硬件中存在的問題找下來,以保