高校教務管理論文

時間:2022-07-27 04:33:00

導語:高校教務管理論文一文來源于網友上傳,不代表本站觀點,若需要原創文章可咨詢客服老師,歡迎參考。

高校教務管理論文

論文關鍵詞:教務管理系統課程數據管理數據完整性

論文摘要:課程作為教務管理系統中最重要的基礎數據,其完整性對整個系統的數據管理質量和運行效果影響重大。本文針對課程數據完整性的有關問題,詮釋了課程數據完整性的基本內涵,探究了課程數據完整性受到破壞的主要原因,并提出了保證課程數據完整性的一些對策。

一、問題的提出

隨著現代網絡信息技術的發展和高校教學改革的不斷深入,尤其是學分制的推行,應用教務管理系統已成為高校教學管理的必然選擇。在教務管理系統中課程是最重要的基礎數據,貫穿教學計劃、排課、選課、考試、成績、教材、畢業審查等各個管理過程,幾乎與教務系統中所有子系統存在密切的關聯。課程數據管理用來維護全校的課程信息,包括添加課程、刪除課程、修改課程屬性等,以建立課程基礎數據庫,供其它子系統引用。課程數據管理的科學、合理、正確與否,直接影響著教務管理系統的運行效果,對整個系統應用的成敗至關重要。[1]

以某教務管理系統為例,通過對該系統用戶的調查看到,高校在課程數據管理中存在著諸多數據異常錯誤或問題,主要表現在:

一是重復設課。在課程庫中對實屬同一門課程(課程名、學分、課程類型等屬性均相同)而設置了多個課程號,直接的后果造成在分年級、分專業教學計劃中對同一課程引用了不同的課程號,從而導致教學運行環節中課程安排、學生選課、課程重修、考試安排、畢業審查等管理工作經常出現重復課程,需要進行課程替換或合并等雜亂情況;

二是課程信息維護不完全或不準確。對課程數據的一些關鍵屬性,比如課程類型、學分、學時等,沒有全面維護或維護不準確,導致其它子系統對課程引用發生偏差或錯誤,比如學時不正確會引起任務書錄入不準確而直接影響排課結果;

三是成績庫中出現一課多學分并存或已修學分發生變化。課程管理員隨意修改課程庫中的課程學分,而成績子系統對課程學分刷新或記載存在不同步的差異,導致成績庫中一門課程出現多學分并存或已修學分發生變化的學分不一致的情況,對學生畢業審查結果影響極大;

四是數據表中出現無課程號數據。在教學計劃、成績、教學任務書等數據表中莫名出現有數據但無課程號的情況,這種情況是由于對課程庫刪除了被引用的課程導致,造成其它數據表中產生垃圾數據或異常錯誤。

種種問題的出現,造成教務管理系統中課程數據混亂或異常錯誤,嚴重影響著教務管理系統數據的準確性和系統運行效果。筆者認為,產生這些問題的主要根源在于高校對課程數據管理存在一定程度的隨意性、盲目性,無論是系統控制還是業務規則都缺乏對課程數據完整性的約束。由此,我們針對課程數據完整性有關問題進行探討。

二、課程數據完整性的涵義與約束

數據完整性是指數據庫中數據的正確性和一致性,它是防止數據庫中存在不符合語義規定的數據和防止因錯誤信息的輸入輸出造成無效操作或連帶錯誤而提出的。它有兩方面的涵義:數據取值的正確性,即字段列值必須符合數據的取值范圍、類型和精度的規定,數據合法、有效、準確,符合業務規則;相關數據的一致性,即相關表的聯系字段的列值匹配,要求在相關表中表示同一個事實的數據取值應相同。[2]保證數據完整性是應用系統設計的基本要求,數據完整性實施的好壞關系到系統數據的正確性、一致性和可靠性,關系到系統的成敗。

數據完整性約束一般包括三類:[3][4]

1.實體完整性

實體完整性約束的目的是確保數據庫中所有實體的唯一性,也就是不應使用完全相同的數據記錄。實體完整性要求一個關系或表中主碼的屬性不能取空值,也不能有重復值,即一個元組(關系表中的一行或一條記錄)表示唯一的實體對象。所謂“空值”就是“不知道”或“無意義”的值。例如課程信息表“課程(課程號,課程名,學分)”中,“課程號”為主碼,則“課程號”不能取空值或不唯一。如果主碼取空值或元組不唯一,就會存在某個不可標識的實體,或存在歧義性,這與客觀應用環境相矛盾,說明這個實體一定不是一個完整的實體。因此,保證課程數據實體完整性必須做到課程設置時課程號不能保存空值;課程號不能重復;同一門課程不能設置兩個或兩個以上課程號。

2.引用完整性

引用完整性也稱為參照完整性,是指在引用關系中外碼的取值或者是空值或者是取被引用關系中某個元組的主碼值。引用完整性是用來維護相關數據表之間數據一致性的手段,通過實現引用完整性,可以避免因一個數據表的記錄改變而使另一個數據表內的數據變成無效的值。例如現有兩個關系模式:成績(學號,姓名,課程號,課程名,成績,學分)和課程(課程號,課程名,學分)。成績關系中的主碼是“學號”,“課程號”是其中的一個基本屬性,但它是課程關系中的主碼,那么成績關系中的“課程號”就是外碼,外碼的取值或為空或為被引用關系中的某個元組的主碼值。

保證課程數據引用完整性要注意幾個問題:

一是外碼是否可以接受空值。外碼能否為空是依賴于應用環境的,如上述成績關系中的外碼“課程號”不能為空,如果有空,說明學生不知選修了哪門課程,這與學校的應用環境不符。

二是刪除課程元組時的考慮。有時想要刪除課程庫中一個元組,但存在引用關系中(計劃、成績等)若干元組的外碼值與被刪除的被引用關系中的元組主碼值相對應,這時要進行級聯刪除,即將引用關系中的所有外碼值與被引用關系中要刪除元組主碼值相對應的元組一起刪除,如果引用關系同時又是另一個關系的被引用關系則這種級聯刪除應該級聯下去。

三是修改課程屬性時的考慮。有時需要修改課程元組的某些屬性,比如課程號、課程名等,遇到這種情況時,做法同刪除被引用關系的元組類似,要做級聯修改,即修改被引用關系中元組屬性值的同時,用相同的方法修改引用關系中響應的元組屬性。

應注意的是,級聯刪除、級聯修改是很危險的,可能涉及不同的業務管理范圍,需經各方面的確認。一般情況如果一門課程被其它數據表引用,就應該禁止修改關鍵屬性和刪除數據。如中途修改學分,無論做不做級聯修改都會造成成績庫中前后學分不一致的情況,就違反了數據引用完整性的原則。

3.用戶自定義完整性

任何關系數據庫系統都應該支持實體完整性和引用完整性。除此之外,不同的關系數據庫系統根據其應用環境的不同,往往還需要一些特殊的約束條件,用戶定義的完整性就是用戶根據實際應用中的需要自行規定數據應該滿足的必需條件。常用的有域完整性約束,域完整性是指定一個表中某一屬性(列)的輸入有效性、正確性的限制,包括數據類型、取值范圍、格式、精度以及是否允許取空值等。例如課程信息表中的學分、學時設定必須為數值型;課程名、課程類型、學時、學分規定不能取空值等,以保證數據庫中數據不能包含任何無意義或者不合理的值。此外,還有函數依賴約束、統計約束等。

三、課程數據完整性受到破壞的原因

通過分析課程數據管理中存在的問題可以發現,造成課程數據完整性受到破壞既存在系統功能不完善的原因,也存在人為操作不當的因素。

1.在客觀上存在系統功能性的欠缺

該教務管理系統已提供了一些數據完整性的約束機制,但仍然存在嚴重缺陷,不能有效保障課程數據的完整性、可靠性。潛在的功能缺陷有:

一是缺少數據錄入時的完整性檢驗。目前,系統除了對課程號錄入時具有“不能為空”的檢驗外,并未對課程其它必要屬性做出“不能為空”的定義。基于域完整性的考慮,在添加數據時系統應通過程序控制確定課程必填項目,比如學時、學分、開課單位、課程類型等。

二是缺少對數據修改、刪除操作的檢驗和級聯處理。根據引用完整性的要求,課程數據一經被其它表引用,有些屬性就是“不可變”的,而該教務系統在進行課程數據修改和刪除時沒有對該數據進行引用檢驗,更沒有級聯修改和刪除的功能。

由于應用系統軟件功能缺陷使得用戶日常處理中存在潛在風險,系統缺乏對用戶操作的規范控制,就可能造成非法數據進入數據庫,使數據完整性受到破壞就在所難免。

2.在主觀上存在人為操作的隨意性、盲目性

課程管理員在進行課程數據處理時,操作隨意性大,對數據維護可能造成錯誤的“風險”意識不足,比如隨意修改課程數據的學分、學時等關鍵屬性;或隨意刪除課程數據;或數據信息維護不完整;或數據庫管理員不經過應用程序,而通過數據庫后臺直接對數據庫進行刪除、修改和插入等操作,使得一些不符合缺省規則的數據進入數據庫,破壞了數據的完整性,致使課程數據混亂或異常現象屢有發生。人為因素主要表現在“無章可依”、“有章不依”的狀況。

首先,高校缺乏規范性操作標準和業務規則,管理人員不清楚或不知道操作規范。許多學校在使用教務系統時沒有及時制定規范性的系統操作流程標準和數據標準,管理人員“不清楚”或“不知道”操作規范,形成“未知”錯誤,致使在增、刪、改數據時忽視了數據的約束和限制,存在片面性、隨意性。例如,在課程庫中對同一課程設置了兩個課程號,一旦教學計劃中對兩個課程號都進行了引用,就出現課程交叉使用的情況。

其次,工作責任心不強,防范意識淡薄,風險識別差。由于課程管理員缺乏計算機領域相關知識,不熟悉數據規范性、完整性要求,呈現風險識別能力差的現象;或者責任心不強,不遵守數據操作規范,造成在修改、刪除數據時妄為操作,在添加數據時對其合法性、完整性未多加考慮,更沒有及時發現操作中存在的錯誤,致使系統數據完整性不能得到保證,人為淡化了課程數據的完整性。

四、保證課程數據完整性的對策

在絕大多數情況下可以利用系統提供的數據完整性技術來保證數據的一致性,使得數據處于正確的狀態,然而它并不是解決問題的全部,也難以避免人為因素,需要通過業務規則和操作規范進行控制。

1.強化應用系統對數據完整性的控制是保障數據完整性最有效的手段

教務管理系統必須加強對課程數據完整性的控制。強化課程數據完整性可以利用Oracle數據庫系統自身提供的完整性約束與觸發器功能和應用程序執行完整性檢驗等方法來實現。[5]應用系統應提供一些限制規則,這些規則規定用戶在對數據庫進行更新操作時,系統按照制定的規則檢驗操作的合法性,若不符合規則需進行相應的錯誤校驗處理。限制規則可以分為三類:(1)完整性約束:它規定系統要檢查什么樣的錯誤,如添加數據不完整不能進行保存;(2)觸發條件:它規定系統什么地方使用規則進行檢查,比如修改數據學分屬性時,如果課程已被其它表引用,程序觸發“屬性不可變”的校驗檢查;(3)違約響應:它規定系統如果檢查出錯誤后應該進行怎樣的處理,如刪除數據應給予警告提示或不予處理。[6]

這些規則通過數據庫定義或程序語句進行控制,從而使定義的規則自動起作用。

2.建立業務規則是保證數據完整性的最重要保障

如果軟件功能不能從源頭上對數據質量進行控制,那么建立業務規則來強制數據完整性就成為最后的屏障。業務規則是對業務中某些定義和限制的描述,用于維持業務結構或控制和影響業務的行為。[7]在這里,筆者主要強調課程編碼規則和系統操作規范。

首先,要科學設置課程編碼。課程是以課程代碼進行標識的,課程代碼必須保證同一門課程僅有一個唯一的代碼,遵循同一性原則。目前,教務系統課程編碼采取的是一級科目編碼方式,未設置二級科目,那么,同一門課程就是指課程名稱、學分、學時、課程類型相同的課程。在這方面教務系統只能限制課程號不能重復,而無法限制兩個課程號表示同一門課程,需要在課程設置時通過業務規則來解決。

其次,要提高管理人員的責任意識,遵守操作規范。由于系統未做到或不能完全做到對數據進行完整性約束,因此,必須通過強化操作規范進行行為控制,避免隨意性、盲目性人為錯誤的發生。在數據維護操作中要做到:在數據錄入時,所有屬性盡量維護完整、準確,對于課程號、課程名稱、學分、學時、開課院系、課程性質等必要屬性不能為“空”;在數據修改時,如果數據一經引用,對于不可變屬性,比如學分,不能隨意進行修改;在數據刪除時,如果數據一經引用,就不能刪除,如果確實需要變更,應先對引用處變更處理后再行刪除。

五、結束語

保證數據完整性是管理系統設計的基本要求,數據完整性保護實施的好壞,關系到數據質量,也關系到系統應用的成敗。課程作為教務管理系統中最重要的基礎數據,其完整性對整個系統的運行效果影響重大。筆者針對教務管理系統中課程數據處理中的有關完整性問題,初步探討了課程數據完整性的基本內涵,探究了造成課程數據完整性受到破壞的主要原因,并提出了加強課程數據完整性保障的一些建議和體會,旨在引發教務管理系統用戶和軟件開發者的思考,也希望廣大教務系統用戶集思廣益,為加強課程數據的完整性、規范化廣泛提供建議,以切實提高課程數據管理的質量和教務管理系統的運行效果。

參考文獻:

[1]方紀旋.高校教務系統(課程管理)的開發與使用中的若干問題[J].教育信息化,2002(7).

[2]湯娟等.數據庫應用系統中數據完整性的研究[J].交通與計算機,2002(1).

[3]王能斌.數據庫系統原理[M].北京:電子工業出版社,2000.

[4]程有娥.關于數據庫的數據完整性探討[J].太原師范學院學報(自然科學版),2005(2).

[5]郭云怡等.管理信息系統的數據完整性約束及其實現方法[J].計算機應用研究,2001(6).

[6]陳長海.數據完整性概念及其基于SQLSERVER的實現[J].中國人民公安大學學報(自然科學版),2006(2).

[7]林金嬌等.基于業務行為與業務對象約束的業務規則研究[J].計算機科學,2006(11).