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