陳蓉 陳烽 孫懿
(西藏民族學院信息工程學院,陜西 咸陽 712082)
在線考試系統(tǒng)通用數(shù)據(jù)模型研究
陳蓉 陳烽 孫懿
(西藏民族學院信息工程學院,陜西 咸陽 712082)
數(shù)據(jù)模型是數(shù)據(jù)庫設計的基礎和核心,它的好壞直接關系到信息管理系統(tǒng)開發(fā)的成功與失敗。本文研究了在線考試系統(tǒng)的數(shù)據(jù)模型構建,給出了在線考試系統(tǒng)的三個通用數(shù)據(jù)模型。對同類管理系統(tǒng)的通用數(shù)據(jù)建模有一定的參考價值。
在線考試系統(tǒng);通用數(shù)據(jù)模型;數(shù)據(jù)建模
傳統(tǒng)考試方式要經(jīng)過老師人工出卷、組織考生考試、人工閱卷、成績評估和試卷分析等多步才能完成。隨著考試類型的不斷增加和考試要求的不斷提高,相關工作人員的工作量也會越來越大,太繁瑣且容易出錯。在線考試系統(tǒng)借助計算機網(wǎng)絡技術的優(yōu)勢,將傳統(tǒng)考試方式改良,不僅使考試的過程簡化,節(jié)省了人力物力,同時使考試的方式更加靈活,既可以本地進行,也可以異地進行。
2.1 在線考試系統(tǒng)的需求
在線考試系統(tǒng)可以分為兩類用戶:普通用戶和管理員。
普通用戶可以在線考試和查看考試成績。
管理員對試卷管理、題庫管理(包括選擇題、填空題、判斷題)、用戶管理等進行管理,功能包括添加、修改、刪除和查詢等。
2.2 在線考試系統(tǒng)的數(shù)據(jù)建模
數(shù)據(jù)庫建模使用ERD(實體聯(lián)系圖)表示,圖形直觀明白。ERD由實體、實體的屬性及實體間的聯(lián)系組成。
(1)實體由軟式方框來表示。實體名顯示在軟式方框中。實體名總是單數(shù),并且用全大寫字母表示。
(2)屬性列在實體名的下方。用星號標記必需的屬性:“*”,用圓圈標記可選屬性:“°”,用#號標記唯一標識符:“#”。
(3)關系是連接實體的線。這些線可以是實線,也可以是虛線。這些線終止于每個實體末端的“單點”或“鴉腳”。關系分為三種:一對一關系,一對多關系,多對多關系。一對一關系,兩邊都是“單點”。一對多關系,多方為“鴉腳”。兩方的關系都需要取名,將關系名稱寫在對應的一邊。如學生和課程是多對多關系,則實體兩邊的線都用“鴉腳”符號表示,學生一方的關系名稱是“學習”,課程一方的關系名稱是“被學習”。
3.1 通用數(shù)據(jù)模型1
經(jīng)分析得出本系統(tǒng)的實體有:管理員,考生、試卷、題庫(選擇題,填空題,判斷題);實體間的聯(lián)系有:管理員和考生可統(tǒng)稱為用戶,即user用戶類是administrator管理員類和normal_user普通用戶類的父類。paper題庫由常見的三種題型——mutipchoice選擇題、completion填空題、judgement判斷題組成??忌恥ser與試卷類paper存在多對多聯(lián)系,聯(lián)系取名為考試類exam。多對多關系轉(zhuǎn)換為兩個一對多的聯(lián)系,因此考生類與考試類存在一對多的關系,試卷類與考試類存在一對多的關系。
組成各個類的屬性如下:
user用戶(user_id編號,username用戶名,password密碼,user_type用戶類型)
normal_user考生(user_id編號,stdno學號,class班級,sex性別)
paper試卷(paper_id試卷編號,paper_name試卷名稱,choice_num選擇題數(shù)量,choice_score選擇題分數(shù),comple_num填空題數(shù)量,comple_score填空題分數(shù),judge_num判斷題數(shù)量,judge_score判斷題分數(shù))
mutipchoice選擇題(choice_id選擇題編號,question選擇題內(nèi)容,answer選擇題答案)
option選擇題選項(option_id選擇題編號,option_name選擇題內(nèi)容)
completion填空題(comple_id填空題編號,question填空題內(nèi)容,answer填空題答案)
judgement判斷題(judge_id判斷題編號,question判斷題內(nèi)容,answer判斷題答案)
exam考試(exam_id考試編號,score考試成績、exam_time考試時間、make_flag是否補考,makeup_score補考成績)
所有字段一般應使用英文表示,如oracle數(shù)據(jù)庫無法識別中文。在線考試系統(tǒng)的數(shù)據(jù)庫通用數(shù)據(jù)模型1的ER圖如圖1所示。
圖1 在線考試系統(tǒng)通用模型1的ERD
3.2 通用數(shù)據(jù)模型2
在使用通用數(shù)據(jù)模型1時,我們發(fā)現(xiàn)當題庫不僅僅是選擇題、填空題和判斷題時,此數(shù)據(jù)模型已經(jīng)無法滿足用戶需求,需要重新構建系統(tǒng)模型。此時,需要對模型進行修改滿足用戶需求。改進后的模型中,試卷中只保留paper_id試卷編號和paper_name試卷名稱,試卷里面有允許有很多類型,type類型有公共屬性(如type_id編號,type_name名稱,type_num數(shù)量,type_score分數(shù))和預定義屬性(define1到define7),預定義屬性的值存放在vlaue值類的屬性(value1到value7)中。在線考試系統(tǒng)的數(shù)據(jù)庫通用數(shù)據(jù)模型2的ER圖如圖2所示。
圖2 在線考試系統(tǒng)通用模型2的ER圖
3.3 通用數(shù)據(jù)模型3
通用數(shù)據(jù)模型2定義了考題類型在7種之內(nèi),就是說考題類型定義的屬性數(shù)量是7,如果屬性數(shù)量超過最初定義的最大數(shù)量后則無法使用模型2。因此,考慮使用下面的模型將考題類型的屬性的每個值都單獨存儲。這樣可以靈活地定義新的考題屬性和考題值,同時也能有效地節(jié)省存儲空間,減少了字段使用時可能產(chǎn)生的存儲浪費。在模型2上,從type類型中將預定義屬性分離出來,每一個預定義屬性和它的多個值對應。在線考試系統(tǒng)的數(shù)據(jù)庫通用數(shù)據(jù)模型3的ER圖如圖3所示。
圖3 在線考試系統(tǒng)通用數(shù)據(jù)模型3的ER圖
本文研究了在線考試系統(tǒng)的通用數(shù)據(jù)模型,構建了三個通用數(shù)據(jù)模型——模型1、模型2、模型3。三個通用數(shù)據(jù)模型各有優(yōu)缺點,根據(jù)用戶需求選擇合適的數(shù)據(jù)模型。模型1是在固定的需求上建構的,是簡單的模型,后兩個數(shù)據(jù)模型是在此基礎上進行改進的,增加了復雜性,考慮到的問題細節(jié)更多。模型3比通用模型2更復雜。總的說來,根據(jù)用戶的需求可能發(fā)生改變,對數(shù)據(jù)模型進行調(diào)整,得出本文的三種通用數(shù)據(jù)模型。對同類管理系統(tǒng)的通用數(shù)據(jù)建模有一定的參考價值。
[1]錢樂秋,趙文耘,牛軍鈺.軟件工程[M].清華大學出版社,2007.
[2]趙忠孝.數(shù)據(jù)庫原理及Visual FoxPro應用[M].北京:高等教育出版社,2004.
[3]Alan Shalloway,James R.Trott.設計模式解析[M].北京:人民郵電出版社,2006.
[4]曹玉琳,鄭東.Oracle 11g設計與開發(fā)教程[M].北京:清華大學出版社,2012.
[5]Oracle Academy[EB/OL].https://academy.oracle.com/oaweb-overview.html.
Research on Common Data Model of On-line Examination System Based on Oracle
Chen Rong Chen Feng Sun Yi
(Tibet University for Nationalities,Xianyang 712082,Shaanxi)
tract】Data model is the basis and core of database design.It is directly related to the success or failure of information management system development.This paper studies database data model of online examination system based on the Oracle,and gives three common data models of online examination system based on oracle.It can give a certain reference value for common data modeling of the similar management system.
words】Oracle;on-line examination;common data model
陳蓉,女,湖北人,碩士,講師,研究方向:軟件工程、數(shù)據(jù)庫系統(tǒng)開發(fā)、Web設計與開發(fā)。