數(shù)據(jù)庫(kù)需求調(diào)查與需求分析_第1頁(yè)
數(shù)據(jù)庫(kù)需求調(diào)查與需求分析_第2頁(yè)
數(shù)據(jù)庫(kù)需求調(diào)查與需求分析_第3頁(yè)
數(shù)據(jù)庫(kù)需求調(diào)查與需求分析_第4頁(yè)
數(shù)據(jù)庫(kù)需求調(diào)查與需求分析_第5頁(yè)
已閱讀5頁(yè),還剩15頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、第二章 數(shù)據(jù)庫(kù)需求調(diào)查與需求分析2.1 概述2.1.1 數(shù)據(jù)庫(kù)需求分析的定義數(shù)據(jù)庫(kù)需求分析是從現(xiàn)存系統(tǒng)開(kāi)始的。現(xiàn)存系統(tǒng)就是現(xiàn)在使用的系統(tǒng),可能是一個(gè)手工系統(tǒng),也可能是一個(gè)計(jì)算機(jī)系統(tǒng)。通過(guò)對(duì)現(xiàn)存系統(tǒng)的調(diào)查和分析,開(kāi)發(fā)符合用戶需求的數(shù)據(jù)庫(kù)系統(tǒng)(也稱作目標(biāo)系統(tǒng))。作為數(shù)據(jù)庫(kù)系統(tǒng)需求分析的一部分,數(shù)據(jù)庫(kù)需求分析是數(shù)據(jù)庫(kù)需求分析人員在調(diào)查現(xiàn)存系統(tǒng)基礎(chǔ)上,分析和確認(rèn)用戶的數(shù)據(jù)需求。數(shù)據(jù)庫(kù)需求分析是數(shù)據(jù)庫(kù)開(kāi)發(fā)的基礎(chǔ),其工作質(zhì)量的好壞將直接影響到數(shù)據(jù)庫(kù)設(shè)計(jì)乃至整個(gè)數(shù)據(jù)庫(kù)系統(tǒng)開(kāi)發(fā)工作的成敗。2.1.2 數(shù)據(jù)庫(kù)需求分析的內(nèi)容數(shù)據(jù)庫(kù)需求分析的主要內(nèi)容是數(shù)據(jù)結(jié)構(gòu)分析、數(shù)據(jù)定義分析、數(shù)據(jù)操縱分析、數(shù)據(jù)完整性分析、數(shù)據(jù)安

2、全性分析、數(shù)據(jù)庫(kù)性能分析。1. 數(shù)據(jù)結(jié)構(gòu)分析數(shù)據(jù)結(jié)構(gòu)分析是分析目標(biāo)系統(tǒng)運(yùn)行過(guò)程中需要的各種數(shù)據(jù)的結(jié)構(gòu)特征。數(shù)據(jù)結(jié)構(gòu)包括數(shù)據(jù)的名稱、含義、數(shù)據(jù)類型、構(gòu)成等。這些數(shù)據(jù)有些是業(yè)務(wù)數(shù)據(jù)、有些是系統(tǒng)運(yùn)行管理與維護(hù)數(shù)據(jù)(如運(yùn)行日志、維護(hù)日志)、有些是用戶注冊(cè)數(shù)據(jù)(如用戶名稱、用戶編號(hào))。數(shù)據(jù)字典是描述數(shù)據(jù)結(jié)構(gòu)的常用工具。2. 數(shù)據(jù)定義分析在數(shù)據(jù)庫(kù)系統(tǒng)中,絕大多數(shù)數(shù)據(jù)庫(kù)基本表、視圖、索引、角色等對(duì)象是在目標(biāo)系統(tǒng)實(shí)現(xiàn)或初始化階段創(chuàng)建的,但也有一些是在目標(biāo)系統(tǒng)安裝或正常運(yùn)行期間動(dòng)態(tài)創(chuàng)建的。數(shù)據(jù)定義分析是分析目標(biāo)系統(tǒng)動(dòng)態(tài)創(chuàng)建、修改和刪除基本表、視圖、索引、角色等數(shù)據(jù)對(duì)象的需求。3. 數(shù)據(jù)操縱分析數(shù)據(jù)操縱分析是分析

3、數(shù)據(jù)庫(kù)用戶關(guān)于數(shù)據(jù)插入、修改、刪除、查詢、統(tǒng)計(jì)和排序等的數(shù)據(jù)操縱需求。4. 數(shù)據(jù)完整性分析數(shù)據(jù)完整性分析是分析數(shù)據(jù)之間的各種聯(lián)系。數(shù)據(jù)聯(lián)系常常在數(shù)據(jù)字典和E-R圖中描述。5. 數(shù)據(jù)安全性分析數(shù)據(jù)安全性分析是分析數(shù)據(jù)庫(kù)的各種安全需求。根據(jù)這些需求,設(shè)計(jì)人員才能設(shè)計(jì)數(shù)據(jù)庫(kù)的用戶、角色、權(quán)限、加密方法等數(shù)據(jù)庫(kù)安全保密措施。數(shù)據(jù)安全性需求可以在數(shù)據(jù)字典中描述。6. 并發(fā)處理分析并發(fā)處理分析是數(shù)據(jù)庫(kù)需求分析人員在現(xiàn)存系統(tǒng)調(diào)查的基礎(chǔ)上,分析數(shù)據(jù)庫(kù)的各種并發(fā)處理需求,為數(shù)據(jù)庫(kù)并發(fā)控制設(shè)計(jì)提供依據(jù)。并發(fā)處理需求可以在數(shù)據(jù)字典中描述。7. 數(shù)據(jù)庫(kù)性能分析數(shù)據(jù)庫(kù)性能分析是數(shù)據(jù)庫(kù)需求分析人員在現(xiàn)存系統(tǒng)調(diào)查的基礎(chǔ)上,

4、分析數(shù)據(jù)庫(kù)容量、吞吐量、精度、響應(yīng)時(shí)間、存儲(chǔ)方式、可靠性、可擴(kuò)展性、可維護(hù)性等數(shù)據(jù)庫(kù)性能需求。2.1.3 數(shù)據(jù)庫(kù)需求分析的原則1. 制訂數(shù)據(jù)庫(kù)需求分析計(jì)劃數(shù)據(jù)庫(kù)需求分析人員首先要制定好工作計(jì)劃,如何時(shí)到何地做何工作,需要用戶方何人協(xié)助,需要哪些開(kāi)發(fā)人員協(xié)助等等。不斷檢查、調(diào)整、及時(shí)總結(jié)工作成果。2. 選擇適當(dāng)?shù)臄?shù)據(jù)庫(kù)需求分析方法選擇一種合適的數(shù)據(jù)庫(kù)需求分析方法,如結(jié)構(gòu)化分析方法、原型化分析方法、面向?qū)ο蠓治龇椒ā?. 選擇合適的數(shù)據(jù)庫(kù)需求分析工具軟件為了提高數(shù)據(jù)庫(kù)需求分析的效率,數(shù)據(jù)庫(kù)需求分析人員應(yīng)盡量使用數(shù)據(jù)庫(kù)需求分析工具,如美國(guó)Rational公司的Requisite PRO、美國(guó)Micr

5、osoft公司的Visio。4. 調(diào)查現(xiàn)存系統(tǒng)數(shù)據(jù)庫(kù)需求分析人員應(yīng)該認(rèn)真收集、整理現(xiàn)存系統(tǒng)中的各種數(shù)據(jù),避免遺漏和錯(cuò)誤發(fā)生。5. 充分與用戶溝通數(shù)據(jù)庫(kù)需求分析人員要使用用戶能夠理解的語(yǔ)言進(jìn)行溝通,避免使用純計(jì)算機(jī)專業(yè)語(yǔ)言來(lái)提問(wèn)、解釋有關(guān)問(wèn)題。充分尊重用戶的意見(jiàn),盡可能滿足用戶的需求。對(duì)一些不能實(shí)現(xiàn)的要求則要耐心解釋為什么不能或不應(yīng)該實(shí)現(xiàn)。6. 理解用戶的數(shù)據(jù)管理內(nèi)容及目標(biāo) 數(shù)據(jù)庫(kù)需求分析人員只有理解用戶的數(shù)據(jù)管理內(nèi)容及目標(biāo),才能有助于數(shù)據(jù)庫(kù)設(shè)計(jì)人員設(shè)計(jì)出滿足用戶需要的目標(biāo)系統(tǒng)。7. 分析并確認(rèn)數(shù)據(jù)庫(kù)需求數(shù)據(jù)需求并不是現(xiàn)存系統(tǒng)數(shù)據(jù)實(shí)際情況的復(fù)制,因?yàn)楝F(xiàn)存系統(tǒng)中的數(shù)據(jù)可能存在描述錯(cuò)誤、冗余、不準(zhǔn)確

6、、不完整、不一致等現(xiàn)象。數(shù)據(jù)庫(kù)需求分析人員應(yīng)該消除以上不合理現(xiàn)象,必要時(shí)通過(guò)修改數(shù)據(jù)結(jié)構(gòu)、合并數(shù)據(jù)、分解數(shù)據(jù)等手段,反復(fù)權(quán)衡,獲得準(zhǔn)確的數(shù)據(jù)庫(kù)需求。8. 需求變更要立即聯(lián)系雖然完全消除數(shù)據(jù)庫(kù)需求變更非常困難,但過(guò)多的需求變更會(huì)給嚴(yán)重影響系統(tǒng)開(kāi)發(fā)進(jìn)度和質(zhì)量。因此,減少乃至消除需求變更是數(shù)據(jù)庫(kù)需求分析人員的重要任務(wù)之一,需求變更的多寡也反映了數(shù)據(jù)庫(kù)需求分析工作的質(zhì)量和水平。在系統(tǒng)開(kāi)發(fā)過(guò)程中,需求變更出現(xiàn)得越晚,影響就越大。例如,總體結(jié)構(gòu)已確定但發(fā)現(xiàn)要增加新的功能模塊就將導(dǎo)致高代價(jià)的返工。用戶如需變更需求應(yīng)與開(kāi)發(fā)方及早聯(lián)系。9. 提出數(shù)據(jù)庫(kù)實(shí)施建議和解決方案通常用戶所說(shuō)的“需求”已經(jīng)是一種實(shí)際可行的

7、實(shí)施方案,數(shù)據(jù)庫(kù)需求分析人員應(yīng)盡力從該實(shí)施方案中了解真正的數(shù)據(jù)需求,同時(shí)還應(yīng)找出現(xiàn)存系統(tǒng)數(shù)據(jù)管理業(yè)務(wù)不合理之處,以確保目標(biāo)系統(tǒng)不會(huì)無(wú)效或低效;在徹底弄清業(yè)務(wù)領(lǐng)域內(nèi)的數(shù)據(jù)后,提出改進(jìn)方法,增加一些用戶沒(méi)有發(fā)現(xiàn)的有價(jià)值的數(shù)據(jù)特性。10. 認(rèn)真撰寫(xiě)數(shù)據(jù)庫(kù)需求規(guī)格說(shuō)明書(shū)數(shù)據(jù)庫(kù)需求規(guī)格說(shuō)明書(shū)是數(shù)據(jù)庫(kù)系統(tǒng)需求分析的一部分,它完整、清晰、準(zhǔn)確、易于理解地描述了數(shù)據(jù)庫(kù)的各種需求。因此,數(shù)據(jù)庫(kù)需求分析人員不僅要有良好的計(jì)算機(jī)專業(yè)知識(shí),還要有良好的目標(biāo)系統(tǒng)所處理的事務(wù)對(duì)應(yīng)領(lǐng)域的專業(yè)知識(shí),以及良好的文字表達(dá)能力。在文檔中暫時(shí)加上“待定”標(biāo)志是個(gè)方法。用該標(biāo)志可指明哪些是需要進(jìn)一步討論、分析或增加信息的地方,有時(shí)也可

8、能因?yàn)槟硞€(gè)特殊需求難以解決或沒(méi)有人愿意處理它而標(biāo)注上“待定”。如果用戶一時(shí)不能準(zhǔn)確表達(dá),通常要用原型開(kāi)發(fā)技術(shù)。通過(guò)原型開(kāi)發(fā)技術(shù),用戶可以同開(kāi)發(fā)人員一起反復(fù)修改,不斷完善需求定義。11. 使用軟件復(fù)用技術(shù)充分利用現(xiàn)有的數(shù)據(jù)庫(kù)需求分析文檔,實(shí)現(xiàn)文檔復(fù)用(即重復(fù)使用)。數(shù)據(jù)庫(kù)需求分析人員如果發(fā)現(xiàn)有某個(gè)軟件的數(shù)據(jù)庫(kù)需求與用戶描述的需求相近,則可以充分利用之,以縮短數(shù)據(jù)庫(kù)需求分析的時(shí)間。12. 認(rèn)真評(píng)審數(shù)據(jù)庫(kù)需求規(guī)格說(shuō)明書(shū)為了確認(rèn)數(shù)據(jù)庫(kù)需求規(guī)格說(shuō)明書(shū)所描述的數(shù)據(jù)庫(kù)需求的合理性、完整性、正確性,還必須進(jìn)行數(shù)據(jù)庫(kù)需求評(píng)審。數(shù)據(jù)庫(kù)需求評(píng)審一般和數(shù)據(jù)庫(kù)系統(tǒng)評(píng)審一起進(jìn)行,評(píng)審的主要內(nèi)容是:(1)數(shù)據(jù)庫(kù)需求是否和用

9、戶的需求一致。(2)數(shù)據(jù)庫(kù)需求是否滿足數(shù)據(jù)庫(kù)系統(tǒng)的要求,是否存在接口問(wèn)題。(2)數(shù)據(jù)庫(kù)需求規(guī)格說(shuō)明書(shū)的內(nèi)容是否齊全。(3)數(shù)據(jù)庫(kù)需求規(guī)格說(shuō)明書(shū)是否完整、清晰、準(zhǔn)確、易于理解地反映了用戶數(shù)據(jù)需求。(4)所有圖表是否合理,解釋是否充分。為了保證數(shù)據(jù)庫(kù)需求的評(píng)審質(zhì)量,評(píng)審人員應(yīng)包括數(shù)據(jù)庫(kù)需求分析人員、用戶、數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)人員和測(cè)試人員、項(xiàng)目負(fù)責(zé)人。評(píng)審結(jié)束后,評(píng)審負(fù)責(zé)人應(yīng)該簽名、給出評(píng)審意見(jiàn)。此外,如果時(shí)間允許,開(kāi)發(fā)人員可以先為目標(biāo)系統(tǒng)開(kāi)發(fā)一個(gè)原型(即目標(biāo)系統(tǒng)的某種版本)。這樣用戶就能提供更有價(jià)值的反饋信息給開(kāi)發(fā)人員,使他們更好地理解數(shù)據(jù)庫(kù)需求;原型不一定是最終目標(biāo)系統(tǒng),但開(kāi)發(fā)人員能將其轉(zhuǎn)化、擴(kuò)充成

10、功能齊全的系統(tǒng)。 13. 修改、完善數(shù)據(jù)庫(kù)需求規(guī)格說(shuō)明書(shū)根據(jù)評(píng)審意見(jiàn),認(rèn)真修改數(shù)據(jù)庫(kù)需求規(guī)格說(shuō)明書(shū)直至用戶方和開(kāi)發(fā)方共同批準(zhǔn)。共同批準(zhǔn)的數(shù)據(jù)庫(kù)需求規(guī)格說(shuō)明書(shū)是數(shù)據(jù)庫(kù)設(shè)計(jì)、數(shù)據(jù)庫(kù)測(cè)試和驗(yàn)收的依據(jù)。數(shù)據(jù)庫(kù)需求分析的最終目的是獲得共同批準(zhǔn)的數(shù)據(jù)庫(kù)需求規(guī)格說(shuō)明書(shū)。18····························&#

11、183;·············2.1.4 數(shù)據(jù)庫(kù)系統(tǒng)需求分析的方法和工具1. 需求分析的工具數(shù)據(jù)庫(kù)系統(tǒng)需求分析的工具很多,常用的工具有數(shù)據(jù)流程圖、數(shù)據(jù)字典、判定表、判定樹(shù)、結(jié)構(gòu)化自然語(yǔ)言、偽代碼、層次方框圖、Warnier圖、IPO(Input、Process、Output,輸入、處理、輸出)圖、統(tǒng)一建模語(yǔ)言(Unified Modeling Language,UML)等。數(shù)據(jù)流程圖(Data Flow Diagram,DFD)是數(shù)據(jù)庫(kù)系統(tǒng)最重要的需求分析工具之

12、一,它通過(guò)圖形符號(hào)描述數(shù)據(jù)的輸入(來(lái)源)、輸出(去向)和移動(dòng)變換過(guò)程。DFD的基本圖形元素有4個(gè):外部實(shí)體、數(shù)據(jù)流、處理、數(shù)據(jù)存儲(chǔ),如圖2-2所示。202. 需求分析的方法數(shù)據(jù)庫(kù)系統(tǒng)需求分析的方法很多,常用的方法有結(jié)構(gòu)化分析方法、原型化分析方法、面向?qū)ο蠓治龇椒?。結(jié)構(gòu)化分析(Structured Analysis,SA)方法是最著名需求分析方法之一,它通過(guò)與DFD結(jié)合,遵循自頂向下、逐層分解和結(jié)構(gòu)化、模塊化的原則從DFD的頂層(即第0層)開(kāi)始,逐層、逐幅畫(huà)出數(shù)據(jù)庫(kù)系統(tǒng)的全部DFD。如圖2-3所示22 23 242.2 數(shù)據(jù)庫(kù)需求調(diào)查數(shù)據(jù)庫(kù)需求調(diào)查是數(shù)據(jù)庫(kù)需求分析人員通過(guò)充分調(diào)查現(xiàn)存系統(tǒng),了解現(xiàn)

13、存系統(tǒng)數(shù)據(jù)的結(jié)構(gòu)特征、使用者及與其他數(shù)據(jù)庫(kù)系統(tǒng)的聯(lián)系等各種數(shù)據(jù)需求。2.2.1 數(shù)據(jù)庫(kù)需求調(diào)查的內(nèi)容數(shù)據(jù)庫(kù)需求調(diào)查的任務(wù)是調(diào)查現(xiàn)存系統(tǒng)的各種數(shù)據(jù),其中一些數(shù)據(jù)可能是描述組織、部門(mén)等實(shí)體的,也有一些可能是描述票據(jù)、表格、帳本等常規(guī)業(yè)務(wù)數(shù)據(jù)的,還有一些可能是描述圖形、圖像、視頻、語(yǔ)音等多媒體業(yè)務(wù)數(shù)據(jù)的。數(shù)據(jù)庫(kù)需求調(diào)查的主要內(nèi)容如下:(1)調(diào)查組織、部門(mén)等實(shí)體 包括了解該組織的部門(mén)組成情況、人員崗位職責(zé)等。(2)調(diào)查各部門(mén)的業(yè)務(wù)數(shù)據(jù) 包括了解各個(gè)部門(mén)和人員輸入和使用什么數(shù)據(jù)、輸出什么數(shù)據(jù)、輸出到什么部門(mén)、輸出結(jié)果的格式是什么。(3)明確目標(biāo)系統(tǒng)的各種數(shù)據(jù)需求 在熟悉業(yè)務(wù)數(shù)據(jù)的基礎(chǔ)上,協(xié)助用戶明確目標(biāo)

14、系統(tǒng)的各種數(shù)據(jù)需求。2.2.2 數(shù)據(jù)庫(kù)需求調(diào)查的原則(1)自頂向下全面展開(kāi) 系統(tǒng)調(diào)查工作應(yīng)先從整個(gè)管理機(jī)構(gòu)的工作模式、組織結(jié)構(gòu)、業(yè)務(wù)流程、信息流程開(kāi)始調(diào)查,從整體到具體,由粗及細(xì),逐步調(diào)查。(2)分析現(xiàn)存系統(tǒng)數(shù)據(jù)管理存在的問(wèn)題,研究改進(jìn)的可能性(3)采用工程化的工作方法工程化方法就是制定協(xié)同工作計(jì)劃,注意多人協(xié)同工作時(shí)的時(shí)間銜接、任務(wù)銜接,注意需求分析中所用的術(shù)語(yǔ)、圖例、表格等統(tǒng)一和規(guī)范化,以方便群體之間的相互溝通。(4)全面鋪開(kāi)與重點(diǎn)調(diào)查相結(jié)合2.2.3 數(shù)據(jù)庫(kù)需求調(diào)查的方法(1)跟班作業(yè)法 跟班作業(yè)法是數(shù)據(jù)庫(kù)需求分析人員親臨一線現(xiàn)場(chǎng),通過(guò)從事或者觀察組織的業(yè)務(wù)管理來(lái)調(diào)查系統(tǒng)的數(shù)據(jù)需求。該方

15、法通常是在其他數(shù)據(jù)收集方法碰到困難或者系統(tǒng)的某一部分過(guò)于復(fù)雜以至于用戶很難把他們工作中碰到的困難以及需求解釋清楚的時(shí)候使用。(2)文檔閱讀法 數(shù)據(jù)庫(kù)需求分析人員閱讀、分析現(xiàn)存系統(tǒng)的開(kāi)發(fā)、運(yùn)行維護(hù)和問(wèn)題報(bào)告等文檔是了解現(xiàn)存系統(tǒng)一個(gè)快捷方法。(3)網(wǎng)站訪問(wèn)法 各個(gè)組織存在的問(wèn)題有很多相似之處,尤其是相類似的組織。網(wǎng)站訪問(wèn)法是通過(guò)訪問(wèn)其他已解決相關(guān)問(wèn)題組織的網(wǎng)站而調(diào)查數(shù)據(jù)庫(kù)需求的一種方法。如果能夠分享到相關(guān)信息將會(huì)節(jié)省大量的時(shí)間和精力。(4)專家介紹法 專家介紹法是請(qǐng)業(yè)務(wù)熟練的專家或用戶介紹業(yè)務(wù)知識(shí)、業(yè)務(wù)活動(dòng)和數(shù)據(jù)管理等情況而調(diào)查數(shù)據(jù)庫(kù)需求的一種方法。該方法有利于數(shù)據(jù)庫(kù)需求分析人員盡快、準(zhǔn)確地了解現(xiàn)

16、存系統(tǒng)及其存在的問(wèn)題、改進(jìn)措施,確認(rèn)目標(biāo)系統(tǒng)的數(shù)據(jù)需求。(5)問(wèn)卷調(diào)查法 問(wèn)卷調(diào)查法是通過(guò)特別設(shè)計(jì)的問(wèn)卷來(lái)收集用戶的想法、意見(jiàn)以及基本信息的而調(diào)查數(shù)據(jù)庫(kù)需求的一種方法。問(wèn)卷可以大量復(fù)印并散發(fā)給各個(gè)用戶,用戶可以在他們方便的時(shí)候作答。該方法可以對(duì)同一問(wèn)題收集大量的信息。(6)單獨(dú)詢問(wèn)法 單獨(dú)詢問(wèn)法是一種常用的數(shù)據(jù)庫(kù)需求調(diào)查方法。它通過(guò)面談、電話、郵件等通信形式,實(shí)現(xiàn)以下目標(biāo):收集信息、確認(rèn)信息、凈化信息、確定需求、征求用戶的想法和意見(jiàn)等。(7)原型演示法 原型演示法是通過(guò)通過(guò)建立一個(gè)小型的組織需求模型來(lái)發(fā)現(xiàn)和確認(rèn)組織需求的一種方法。該方法尤其是在難以定義組織需求的時(shí)候很有用。該方法的本質(zhì)是:當(dāng)使

17、用者看到它們(需求)時(shí)才會(huì)意識(shí)到它們(需求)的存在。(8)團(tuán)體會(huì)議法 單獨(dú)的面談或者問(wèn)卷調(diào)查經(jīng)常有互相矛盾的事實(shí)和觀點(diǎn),以及花費(fèi)大量的時(shí)間和精力。團(tuán)體會(huì)議需要詳盡的培訓(xùn),以使調(diào)查工作有明確的目的性。但是該方法能節(jié)約大量的調(diào)查時(shí)間。2.3 數(shù)據(jù)字典2.3.1 數(shù)據(jù)字典的基本概念數(shù)據(jù)字典(Data Dictionary,DD)是數(shù)據(jù)收集和分析后所獲得的成果,它定義了所有與系統(tǒng)相關(guān)的數(shù)據(jù)項(xiàng)、數(shù)據(jù)結(jié)構(gòu)、外部實(shí)體、數(shù)據(jù)流、數(shù)據(jù)存儲(chǔ)、處理邏輯等數(shù)據(jù)字典元素,并按字典順序組織編寫(xiě),以方便用戶和開(kāi)發(fā)人員理解系統(tǒng)的輸入、輸出、存儲(chǔ)和處理邏輯。數(shù)據(jù)字典中的所有描述應(yīng)該具有嚴(yán)密性、準(zhǔn)確性和無(wú)二義性。數(shù)據(jù)字典和DFD

18、共同構(gòu)成了數(shù)據(jù)庫(kù)系統(tǒng)的邏輯模型,是需求規(guī)格說(shuō)明書(shū)的主要組成部分。數(shù)據(jù)字典用相應(yīng)數(shù)據(jù)字典元素的詞條描述,每個(gè)詞條應(yīng)包含以下信息:(1)名稱 定義數(shù)據(jù)字典元素的名稱。每個(gè)數(shù)據(jù)字典元素都有一個(gè)區(qū)別于其他數(shù)據(jù)字典元素的名稱,不允許不同的數(shù)據(jù)字典元素使用同一名稱。數(shù)據(jù)字典元素的名稱一般和業(yè)務(wù)管理的單據(jù)、帳本等實(shí)際工作中所用的名稱一致。(2)別名 定義數(shù)據(jù)字典元素的別名。有些數(shù)據(jù)字典元素可能有別名,如庫(kù)存管理系統(tǒng)中的訂貨單的別名有訂單。(3)代碼 定義數(shù)據(jù)字典元素的代碼,代碼一般可由漢語(yǔ)拼音聲母縮略而成、或者用英文單詞或英文縮略詞等。代碼既可以用于數(shù)據(jù)庫(kù)需求分析和設(shè)計(jì),還可以在數(shù)據(jù)庫(kù)實(shí)現(xiàn)時(shí)用于表示基本表、

19、視圖的屬性名稱。不允許不同的數(shù)據(jù)字典元素使用同一代碼。(4)編號(hào) 定義數(shù)據(jù)字典元素的編號(hào)。良好的編號(hào)方法能夠很好地反映數(shù)據(jù)字典元素之間的關(guān)系,方便數(shù)據(jù)庫(kù)開(kāi)發(fā)人員閱讀、審核,也是避免數(shù)據(jù)分析遺漏的有效手段。(5)分類 定義數(shù)據(jù)字典元素的類別,是數(shù)據(jù)項(xiàng)、數(shù)據(jù)結(jié)構(gòu)、外部實(shí)體、數(shù)據(jù)流、數(shù)據(jù)存儲(chǔ)還是處理邏輯。(6)描述 定義數(shù)據(jù)字典元素的含義、構(gòu)成等。數(shù)據(jù)字典編制過(guò)程中常常使用表2-1所示的符號(hào)。362.3.2 數(shù)據(jù)項(xiàng)數(shù)據(jù)項(xiàng)也稱為數(shù)據(jù)元素,是在其所屬系統(tǒng)范圍內(nèi)具有完整意義的、不可再分的數(shù)據(jù)。數(shù)據(jù)項(xiàng)的含義是相對(duì)的,它和所屬系統(tǒng)有著密切的關(guān)系。即某些數(shù)據(jù)在一個(gè)系統(tǒng)中是數(shù)據(jù)項(xiàng),而在另一個(gè)系統(tǒng)中未必是數(shù)據(jù)項(xiàng)。在

20、數(shù)據(jù)庫(kù)系統(tǒng)開(kāi)發(fā)中,大部分?jǐn)?shù)據(jù)項(xiàng)作為基本表和視圖的屬性(屬性也稱為字段、屬性列、列)的設(shè)計(jì)依據(jù),部分作為應(yīng)用程序常量或變量的設(shè)計(jì)依據(jù)。數(shù)據(jù)項(xiàng)用數(shù)據(jù)項(xiàng)詞條描述。數(shù)據(jù)項(xiàng)詞條一般應(yīng)包含如下內(nèi)容:(1)數(shù)據(jù)項(xiàng)名稱 給出數(shù)據(jù)項(xiàng)的名稱。(2)別名 如果數(shù)據(jù)項(xiàng)有多個(gè)名稱,則給出別名。(3)編號(hào) 給出數(shù)據(jù)項(xiàng)的編號(hào)??刹捎米皂斚蛳碌姆椒ň幪?hào)。(4)含義說(shuō)明 說(shuō)明數(shù)據(jù)項(xiàng)的含義、用途等。(5)類型 說(shuō)明數(shù)據(jù)項(xiàng)的數(shù)據(jù)類型,如字符型、數(shù)值型、日期型、邏輯型、備注型等。(6)長(zhǎng)度 說(shuō)明數(shù)據(jù)項(xiàng)長(zhǎng)度,常用字節(jié)數(shù)、二進(jìn)制位數(shù)等表示。(7)取值范圍及含義 說(shuō)明數(shù)據(jù)項(xiàng)的取值范圍及含義。例如,性別數(shù)據(jù)項(xiàng)取值范圍為1, 0,其中1表示男

21、、0表示女。(8)相關(guān)元素 說(shuō)明與該數(shù)據(jù)項(xiàng)有關(guān)的DFD、數(shù)據(jù)字典元素等。392.3.3 數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)是由若干個(gè)相互關(guān)聯(lián)的數(shù)據(jù)項(xiàng)依據(jù)某種邏輯聯(lián)系組織起來(lái)的聯(lián)合體。例如,在成績(jī)管理系統(tǒng)中,學(xué)生信息就是一個(gè)數(shù)據(jù)結(jié)構(gòu),即用姓名、學(xué)號(hào)、所在系、專業(yè)等數(shù)據(jù)項(xiàng)聯(lián)合起來(lái)描述學(xué)生,表示學(xué)生身份的完整信息。此外,數(shù)據(jù)結(jié)構(gòu)可能是若干個(gè)數(shù)據(jù)項(xiàng)或其他數(shù)據(jù)結(jié)構(gòu)構(gòu)成的。也就是說(shuō),數(shù)據(jù)結(jié)構(gòu)中可以含有數(shù)據(jù)結(jié)構(gòu)。在數(shù)據(jù)庫(kù)系統(tǒng)開(kāi)發(fā)中,數(shù)據(jù)結(jié)構(gòu)可以用基本表、視圖等實(shí)現(xiàn)。數(shù)據(jù)結(jié)構(gòu)用數(shù)據(jù)結(jié)構(gòu)詞條描述。數(shù)據(jù)結(jié)構(gòu)詞條一般應(yīng)包含如下內(nèi)容:(1)數(shù)據(jù)結(jié)構(gòu)名稱 給出數(shù)據(jù)結(jié)構(gòu)的名稱。(2)別名 如果數(shù)據(jù)結(jié)構(gòu)有多個(gè)名稱,則給出別名。(3)編號(hào) 給

22、出數(shù)據(jù)結(jié)構(gòu)的編號(hào)??刹捎米皂斚蛳碌姆椒ň幪?hào)。(4)含義說(shuō)明 說(shuō)明數(shù)據(jù)結(jié)構(gòu)的含義、用途等。(5)組成 說(shuō)明數(shù)據(jù)結(jié)構(gòu)是由哪些數(shù)據(jù)項(xiàng)或數(shù)據(jù)結(jié)構(gòu)組成的。(6)相關(guān)元素 說(shuō)明與該數(shù)據(jù)結(jié)構(gòu)有關(guān)的DFD、數(shù)據(jù)字典元素等。其中,“組成”和“相關(guān)元素”可能構(gòu)成數(shù)據(jù)完整性約束條件。422.3.4 外部實(shí)體外部實(shí)體是指不受系統(tǒng)控制、處于系統(tǒng)之外的事物、機(jī)構(gòu)、人員等客觀實(shí)體的統(tǒng)稱。外部實(shí)體在DFD中一般作為數(shù)據(jù)流的源點(diǎn)(起點(diǎn))或匯點(diǎn)(終點(diǎn))。在數(shù)據(jù)庫(kù)系統(tǒng)開(kāi)發(fā)中,外部實(shí)體可作為基本表、應(yīng)用程序常量或變量的設(shè)計(jì)依據(jù)。外部實(shí)體用外部實(shí)體詞條描述。外部實(shí)體詞條一般應(yīng)包含如下內(nèi)容:(1)外部實(shí)體名稱 給出外部實(shí)體的名稱。(2)

23、別名 如果外部實(shí)體有多個(gè)名稱,則給出別名。(3)編號(hào) 給出外部實(shí)體的編號(hào)??刹捎米皂斚蛳碌姆椒ň幪?hào)。(4)簡(jiǎn)要描述 說(shuō)明外部實(shí)體的性質(zhì)、職能等。(5)輸入的數(shù)據(jù)流 列出進(jìn)入該外部實(shí)體的數(shù)據(jù)流。(6)輸出的數(shù)據(jù)流 列出離開(kāi)該外部實(shí)體的數(shù)據(jù)流。(7)數(shù)量:在整個(gè)DFD中,該外部實(shí)體出現(xiàn)的次數(shù)。452.3.5 數(shù)據(jù)流數(shù)據(jù)流是系統(tǒng)中有著起點(diǎn)和終點(diǎn)的數(shù)據(jù)結(jié)構(gòu);其中,起點(diǎn)和終點(diǎn)可以是外部實(shí)體、處理、數(shù)據(jù)存儲(chǔ)之一,但是起點(diǎn)和終點(diǎn)中至少有一個(gè)是處理。數(shù)據(jù)流反映了數(shù)據(jù)從起點(diǎn)到終點(diǎn)的移動(dòng)。例如,在學(xué)生成績(jī)管理系統(tǒng)中,從成績(jī)數(shù)據(jù)存儲(chǔ)中讀出某個(gè)學(xué)生的成績(jī)用于形成成績(jī)單,成績(jī)就是數(shù)據(jù)流,其起點(diǎn)是成績(jī)數(shù)據(jù)存儲(chǔ)、終點(diǎn)是形成

24、成績(jī)單處理。在數(shù)據(jù)庫(kù)系統(tǒng)開(kāi)發(fā)中,數(shù)據(jù)流可以用視圖等實(shí)現(xiàn)。數(shù)據(jù)流用數(shù)據(jù)流詞條描述。數(shù)據(jù)流詞條一般應(yīng)包含如下內(nèi)容:(1)數(shù)據(jù)流名稱 給出數(shù)據(jù)流的名稱。(2)別名 如果數(shù)據(jù)流有多個(gè)名稱,則給出別名。(3)編號(hào) 給出數(shù)據(jù)流的編號(hào)??刹捎米皂斚蛳碌姆椒ň幪?hào)。(4)說(shuō)明 簡(jiǎn)要介紹數(shù)據(jù)流產(chǎn)生的原因和結(jié)果。(5)數(shù)據(jù)流來(lái)源 指出數(shù)據(jù)流來(lái)自何方。(6)數(shù)據(jù)流去向 指出數(shù)據(jù)流到何處去。(7)組成 說(shuō)明數(shù)據(jù)流是由哪些數(shù)據(jù)結(jié)構(gòu)組成的。(8)平均流量 給出數(shù)據(jù)流平均流量,即單位時(shí)間(如每天、每周、每月)內(nèi)傳輸?shù)拇螖?shù)。(9)高峰期流量 給出數(shù)據(jù)流高峰期的流量。平均流量、高峰期流量等為數(shù)據(jù)庫(kù)的存儲(chǔ)設(shè)計(jì)、服務(wù)器設(shè)計(jì)等提供依據(jù)

25、。(10)相關(guān)元素 說(shuō)明與該數(shù)據(jù)流有關(guān)的DFD、數(shù)據(jù)字典元素等。482.3.6 數(shù)據(jù)存儲(chǔ)數(shù)據(jù)存儲(chǔ)是數(shù)據(jù)及其結(jié)構(gòu)停留或保存的地方,是數(shù)據(jù)流的來(lái)源和去向之一。數(shù)據(jù)存儲(chǔ)可以是手工文檔、手工憑單或計(jì)算機(jī)文檔。例如,在學(xué)生成績(jī)管理系統(tǒng)中,學(xué)生基本信息就是一個(gè)數(shù)據(jù)存儲(chǔ)。在數(shù)據(jù)庫(kù)系統(tǒng)開(kāi)發(fā)中,數(shù)據(jù)存儲(chǔ)一般用基本表實(shí)現(xiàn)。數(shù)據(jù)存儲(chǔ)用數(shù)據(jù)存儲(chǔ)詞條描述。數(shù)據(jù)存儲(chǔ)詞條一般應(yīng)包含如下內(nèi)容:(1)數(shù)據(jù)存儲(chǔ)名稱 給出數(shù)據(jù)存儲(chǔ)的名稱。(2)別名 如果數(shù)據(jù)存儲(chǔ)有多個(gè)名稱,則給出別名。(3)編號(hào) 給出數(shù)據(jù)存儲(chǔ)的編號(hào)。數(shù)據(jù)存儲(chǔ)編號(hào)一般以字母F開(kāi)頭,然后按順序編號(hào)。(4)說(shuō)明 簡(jiǎn)要介紹存放的是什么數(shù)據(jù)。(5)輸入的數(shù)據(jù)流 說(shuō)明進(jìn)入該數(shù)

26、據(jù)存儲(chǔ)的數(shù)據(jù)流。(6)輸出的數(shù)據(jù)流 說(shuō)明從該數(shù)據(jù)存儲(chǔ)出去的數(shù)據(jù)流。(7)組成 說(shuō)明數(shù)據(jù)存儲(chǔ)是由哪些數(shù)據(jù)結(jié)構(gòu)組成的。(8)數(shù)據(jù)量 說(shuō)明每次存取多少數(shù)據(jù)。(9)存取頻度 給出該數(shù)據(jù)存儲(chǔ)單位時(shí)間(如每天、每周、每月)內(nèi)的存取次數(shù)。(10)存取方式 說(shuō)明是批處理還是聯(lián)機(jī)處理、是檢索還是更新、是順序檢索還是隨機(jī)檢索,指出關(guān)鍵字等。數(shù)據(jù)量、存取頻度、存取方式等為數(shù)據(jù)庫(kù)的存儲(chǔ)設(shè)計(jì)、服務(wù)器設(shè)計(jì)等提供依據(jù)。(11)相關(guān)元素 說(shuō)明與該數(shù)據(jù)存儲(chǔ)有關(guān)的DFD、數(shù)據(jù)字典元素等。522.3.7 處理邏輯數(shù)據(jù)庫(kù)系統(tǒng)要做的工作包括數(shù)據(jù)讀取、數(shù)據(jù)變換、數(shù)據(jù)顯示、數(shù)據(jù)寫(xiě)入、數(shù)據(jù)通信等,這些工作在DFD中用處理來(lái)表示。處理邏輯用于

27、描述處理是如何工作的,有哪些輸入和輸出。描述處理邏輯的方法比較多,如判定表、判定樹(shù)、結(jié)構(gòu)化自然語(yǔ)言、偽代碼(相關(guān)內(nèi)容在軟件工程、高級(jí)語(yǔ)言程序設(shè)計(jì)、算法設(shè)計(jì)等著作中有比較深入的介紹),但這些方法占用篇幅比較大。相反,數(shù)據(jù)字典中的處理邏輯詞條用很小的篇幅給出處理邏輯的簡(jiǎn)明描述,便于快速地從宏觀上了解數(shù)據(jù)庫(kù)系統(tǒng)的功能,因而應(yīng)用非常廣泛。在數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)階段,處理邏輯往往與應(yīng)用程序模塊形成一一對(duì)應(yīng)的關(guān)系。處理邏輯詞條一般應(yīng)包含如下內(nèi)容:(1)處理名稱 給出處理的名稱。(2)編號(hào) 給出處理的編號(hào),編號(hào)與DFD一致。(3)說(shuō)明 簡(jiǎn)要介紹處理及其功能。(4)輸入的數(shù)據(jù)流 列出進(jìn)入該處理的數(shù)據(jù)流。(5)

28、輸出的數(shù)據(jù)流 列出離開(kāi)該處理的數(shù)據(jù)流。(7)處理邏輯 簡(jiǎn)要介紹處理事項(xiàng)、邏輯順序。注意,由于詞條的空間不能太大,處理邏輯在數(shù)據(jù)字典中一般不需要詳細(xì)描述,詳細(xì)描述應(yīng)在軟件功能分析中進(jìn)行。(8)平均執(zhí)行頻率 給出該處理單位時(shí)間(如每天、每周、每月)內(nèi)的平均運(yùn)行次數(shù)。(9)平均執(zhí)行頻率 給出該處理單位時(shí)間(如每天、每周、每月)內(nèi)的高峰期運(yùn)行次數(shù)。(9)相關(guān)元素 說(shuō)明與該處理邏輯有關(guān)的DFD、數(shù)據(jù)字典元素等。552.3.8 數(shù)據(jù)字典編制的結(jié)構(gòu)化方法SA方法可以用來(lái)編制和組織數(shù)據(jù)字典。具體做法是:首先是數(shù)據(jù)字典的詞條按照“自頂向下、逐層分解”的順序展開(kāi),這樣做的好處是層次清晰、易于閱讀。其次是數(shù)據(jù)字典的

29、編號(hào)也可以利用層次化的思想進(jìn)行設(shè)計(jì),這樣做的好處是容易找出數(shù)據(jù)字典元素之間的層次關(guān)系。例2-1 試用SA方法編制圖2-12所示的銀行儲(chǔ)蓄管理系統(tǒng)的“銀行存折”數(shù)據(jù)存儲(chǔ)相關(guān)的數(shù)據(jù)存儲(chǔ)、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)項(xiàng)等詞條。為了節(jié)省篇幅,我們僅給出數(shù)據(jù)字典元素的名稱,組成(或含義)、類別和編號(hào)。57存折=戶名+所號(hào)+帳號(hào)+開(kāi)戶日+性質(zhì)+(印密)+1存取行50,數(shù)據(jù)存儲(chǔ),編號(hào):F1。戶名=2字母24,數(shù)據(jù)項(xiàng),編號(hào):1.1。所號(hào)=00019999,數(shù)據(jù)項(xiàng),編號(hào):1.2。帳號(hào)=,數(shù)據(jù)項(xiàng),編號(hào):1.3。開(kāi)戶日= 年+月+日,數(shù)據(jù)結(jié)構(gòu),編號(hào):1.4。性質(zhì)=1.6,數(shù)據(jù)項(xiàng),編號(hào):1.5。其中1表示普通帳戶,2表示工資帳戶等

30、。印密=0 .1,數(shù)據(jù)項(xiàng),編號(hào):1.6。其中0表示有印密;1表示沒(méi)有印密,即印密在存折上不顯示。存取行=日期+(摘要)+支出+存入+余額+操作+復(fù)核,數(shù)據(jù)結(jié)構(gòu),編號(hào):1.7。日期= 年+月+日,數(shù)據(jù)結(jié)構(gòu),編號(hào):1.7.1。年=0001.9999,數(shù)據(jù)項(xiàng),編號(hào):1.7.1.1。月=01.12,數(shù)據(jù)項(xiàng),編號(hào):1.7.1.2。日=01.31,數(shù)據(jù)項(xiàng),編號(hào):1.7.1.3。印密=0 .1,數(shù)據(jù)項(xiàng),編號(hào):1.6。其中0表示有印密;1表示沒(méi)有印密,即印密在存折上不顯示。存取行=日期+(摘要)+支出+存入+余額+操作+復(fù)核,數(shù)據(jù)結(jié)構(gòu),編號(hào):1.7。日期= 年+月+日,數(shù)據(jù)結(jié)構(gòu),編號(hào):1.7.1。年=0001

31、.9999,數(shù)據(jù)項(xiàng),編號(hào):1.7.1.1。月=01.12,數(shù)據(jù)項(xiàng),編號(hào):1.7.1.2。日=01.31,數(shù)據(jù)項(xiàng),編號(hào):1.7.1.3。摘要= 1字母4,數(shù)據(jù)項(xiàng),編號(hào):1.7.2。其中摘要的內(nèi)容用縮略詞表示業(yè)務(wù)種類,如“存”、“取”、“轉(zhuǎn)”、“換”分別表示“存款”、“取款”、“轉(zhuǎn)帳”、“更換新存折”。支出=金額,數(shù)據(jù)項(xiàng),編號(hào):1.7.3。存入=金額,數(shù)據(jù)項(xiàng),編號(hào):1.7.4。余額=金額,數(shù)據(jù)項(xiàng),編號(hào):1.7.5。金額=0.01.99999999.99,數(shù)據(jù)項(xiàng),編號(hào):1.7.3.1。操作=00001.99999,數(shù)據(jù)項(xiàng),編號(hào):1.7.6。復(fù)核=00001.99999,數(shù)據(jù)項(xiàng),編號(hào):1.7.7。2.

32、4 信息分類與編碼為了提高信息的存儲(chǔ)、處理和使用效率,有必要對(duì)信息進(jìn)行科學(xué)的分類與編碼。2.4.1 信息分類1. 信息分類的原則信息分類是指將具有某種共同屬性或特征的信息歸并在一起,把不具有上述共性的信息區(qū)別開(kāi)來(lái)的過(guò)程。信息分類要遵循以下原則:(1)科學(xué)性原則 科學(xué)性是信息分類的客觀要求。通常選擇事物或概念(即分類對(duì)象)最穩(wěn)定的本質(zhì)屬性或特征作為分類的基礎(chǔ)和依據(jù)。(2)系統(tǒng)性原則 將選定的事物或概念的屬性或特征按一定排列順序予以系統(tǒng)化,并形成一個(gè)合理的分類體系。(3)可擴(kuò)展性原則 分類體系的建立應(yīng)滿足事物的不斷發(fā)展和變化的需要。在設(shè)置分類的類目中,要保證在增加新的事務(wù)或概念時(shí),不致打亂已建立的

33、分類系統(tǒng)。(4)兼容性原則 分類應(yīng)與有關(guān)標(biāo)準(zhǔn)協(xié)調(diào)一致。(5)綜合實(shí)用性原則 信息分類應(yīng)從系統(tǒng)工程的角度出發(fā),放在具體的應(yīng)用環(huán)境中進(jìn)行考慮。在類目的設(shè)置上,既要體現(xiàn)分類體系的相對(duì)穩(wěn)定性、可擴(kuò)展性,又要方便用戶快速查詢。2. 信息分類的方法信息分類的基本方法有兩種:線分類法與面分類法。(1)線分類法 線分類法也稱等級(jí)分類法。線分類法按選定的若干屬性(或特征)將分類對(duì)象逐次地分為若干層級(jí),每個(gè)層級(jí)又分為若干類目。同一分支的同層級(jí)類目之間構(gòu)成并列關(guān)系,不同層級(jí)類目之間構(gòu)成隸屬關(guān)系。同層級(jí)類目互不重復(fù),互不交叉。例如,我國(guó)行政區(qū)劃編碼,是采用線分類法,6位數(shù)字碼。第一、二位表示省(自治區(qū)、直轄市),第3

34、、4位表示地區(qū)(市、州、盟),第5、6位表示縣(市、旗、鎮(zhèn)、區(qū))的名稱。湖北省部分行政區(qū)的分類及其編碼如表3-1所示。64線分類法的優(yōu)點(diǎn)是:層次性好,能較好地反映類目之間的邏輯關(guān)系。它屬于傳統(tǒng)的習(xí)慣分類方式,既符合手工處理信息的傳統(tǒng)習(xí)慣,又便于計(jì)算機(jī)對(duì)信息進(jìn)行處理。線分類法的缺點(diǎn)是:結(jié)構(gòu)彈性差。分類結(jié)構(gòu)一經(jīng)確定,不易改動(dòng),因此,使用線分類法必須考慮到有足夠的后備容量。此外,當(dāng)線分類層次較多時(shí),將影響數(shù)據(jù)處理的速度。(2)面分類法 面分類法將分類對(duì)象按選定的若干個(gè)屬性或特征,分成彼此之間互不相關(guān)的若干方面(簡(jiǎn)稱面),每個(gè)面又可分為許多彼此獨(dú)立的若干類目。不同“面”內(nèi)的類目互不重復(fù),互不交叉。使用

35、時(shí),可根據(jù)需要將這些面中的類目組合在一起,形成一個(gè)復(fù)合類目。例如,服裝的分類可以按照服裝所用的材料、男女服裝以及服裝款式等分成幾個(gè)面,每個(gè)面內(nèi)又分成若干類目,如表3-2所示。67面分類法的主要優(yōu)點(diǎn)是分類結(jié)構(gòu)具有較大的柔性。分類體系中任何一個(gè)“面”內(nèi)類目的改變,不會(huì)影響其他的“面”,易于添加和修改類目。除此以外,面分類適用性比較強(qiáng),可實(shí)現(xiàn)按任意“面”的信息進(jìn)行檢索,這對(duì)計(jì)算機(jī)信息處理有良好的適應(yīng)性。面分類的主要缺點(diǎn)在于不能充分利用容量。這是因?yàn)樵趯?shí)踐中許多可組配的類目無(wú)實(shí)用價(jià)值。例如,像純毛男式連衣裙這樣的組合類目就無(wú)實(shí)用意義。線分類法和面分類法各有優(yōu)缺點(diǎn)。在實(shí)際應(yīng)用中,為了滿足信息分類要求,有

36、時(shí)還將兩種分類方法結(jié)合使用。2.4.2 信息編碼編碼是指事物或概念的名稱、屬性、狀態(tài)等的符號(hào)或記號(hào)。計(jì)算機(jī)的數(shù)據(jù)處理工作是通過(guò)編碼來(lái)識(shí)別事物與概念的,同時(shí)計(jì)算機(jī)為了高效地對(duì)信息進(jìn)行收集、存貯、加工與檢索等作業(yè),信息的編碼工作是必不可少的。例如,一個(gè)企業(yè)設(shè)計(jì)了職工編號(hào)、物資編號(hào)、設(shè)備編號(hào)、合同編號(hào)、會(huì)計(jì)科目編號(hào)等。這些編碼設(shè)計(jì)的目的在于識(shí)別事物,以及高效率地處理業(yè)務(wù)。設(shè)計(jì)編碼的基礎(chǔ)是信息分類,有了合理的分類方案才能設(shè)計(jì)出科學(xué)的、使用方便的、高效率的編碼。1. 信息編碼的功能(1)鑒別。編碼是鑒別信息分類對(duì)象的唯一標(biāo)識(shí)。(2)分類。當(dāng)分類對(duì)象按一定屬性分類時(shí),對(duì)每一類別設(shè)計(jì)一個(gè)編碼,這時(shí)編碼可以作

37、為區(qū)分對(duì)象類別的標(biāo)識(shí)。這種標(biāo)識(shí)要求結(jié)構(gòu)清晰,毫不含糊。(3)排序。由于編碼所有的符號(hào)都具有一定的順序,因而可以方便地按此順序進(jìn)行排序。(4)專用含義。由于某種需要,當(dāng)采用一些專用符號(hào)代表特定事物或概念時(shí),編碼就提供一定的專用含義,如某些分類對(duì)象的技術(shù)參數(shù),性能指標(biāo)等。2. 信息編碼的原則(1)唯一性原則 編碼是人、事、物以及概念的一種唯一性的、不合糊的認(rèn)定。這是信息編碼最重要的原則,也是編碼最基本的功能。一個(gè)編碼只能唯一地標(biāo)識(shí)一個(gè)信息分類對(duì)象,而一個(gè)信息分類對(duì)象在一個(gè)信息分類編碼標(biāo)準(zhǔn)中也只能有一個(gè)唯一的編碼。(2)正確性原則表示信息編碼應(yīng)當(dāng)科學(xué)、合理,既遵循信息編碼的基本原理,又符合組織的實(shí)際

38、情況。既能滿足組織自身的需要,又能滿足組織合作伙伴的特殊要求。既要符合國(guó)家的標(biāo)準(zhǔn)或規(guī)定,又應(yīng)該盡可能地遵守國(guó)際標(biāo)準(zhǔn)或慣例。(3)可擴(kuò)展性原則 隨著管理信息的不斷變化,信息編碼不能僅僅考慮當(dāng)前的信息狀況,而且應(yīng)該考慮未來(lái)的發(fā)展?fàn)顩r和需要。信息編碼應(yīng)該有足夠的編碼資源,以便滿足不斷增長(zhǎng)的對(duì)信息編碼的要求,以適應(yīng)不斷擴(kuò)充的信息處理的需要。(4)規(guī)范性原則 編碼應(yīng)盡量符合標(biāo)準(zhǔn)化的要求。有國(guó)際的、國(guó)家的、部門(mén)的、行業(yè)的標(biāo)準(zhǔn)。編碼時(shí)必須符合這些標(biāo)準(zhǔn)的要求。在一個(gè)組織(單位、部門(mén))內(nèi)部,同一種信息分類對(duì)象的編碼應(yīng)該統(tǒng)一。(5)穩(wěn)定性原則 編碼工作是建立信息管理系統(tǒng)的一項(xiàng)基礎(chǔ)工作。編碼的影響面很大,因而設(shè)計(jì)編

39、碼應(yīng)該慎重,一旦批準(zhǔn)通過(guò)后,必須嚴(yán)格執(zhí)行,輕易不作修改。3. 信息編碼的方法(1)順序編碼 順序編碼又稱系列碼。這種編碼方法是將要編碼的對(duì)象按一定的規(guī)則(如發(fā)生的順序、大小的順序等)分配給連續(xù)的順序號(hào)碼。通常從1開(kāi)始。例如,一個(gè)企業(yè)有1000個(gè)職工,其職工號(hào)可以編成0001、0002、0003、1000。順序碼的特點(diǎn)是簡(jiǎn)單明了,位數(shù)少,易于追加,易于管理。但這種碼沒(méi)有邏輯基礎(chǔ),它本身不能說(shuō)明任何信息的特征,因而不能用于分類處理等場(chǎng)合。同時(shí)追加的部分只能列在最后,刪除則造成空碼。通常,順序碼適合于比較固定的永久性編碼(如大城市編碼等),或者和其他編碼方式配合使用。(2)區(qū)間編碼 區(qū)間編碼是對(duì)編碼

40、對(duì)象分區(qū)間進(jìn)行編碼。例如,會(huì)計(jì)科目編碼用區(qū)間碼表示會(huì)計(jì)科目的性質(zhì):101-199表示資產(chǎn)類科目、201-299表示負(fù)債類科目、301-399表示所有者權(quán)益類科目、401-499表示成本類科、501-599表示損益類科目。這樣,以三個(gè)數(shù)字按區(qū)間編碼來(lái)代表某一科目,因而編碼占用的位數(shù)不多,而且能表示較多信息,易追加,易插入,但其缺點(diǎn)是處理比較麻煩。(3)字母編碼 字母編碼是用具有特定意義的字母代表某一類項(xiàng)目。例如,用“L”代表來(lái)源類科目,“Z”代表占用類科目。商品編碼中用“TV”表示電視機(jī)。各種度量單位編碼中用“KG”表示公斤,“m”表示米,“cm”表示厘米等等。這種編碼的特點(diǎn)是可以通過(guò)漢語(yǔ)拼音或

41、英語(yǔ)聯(lián)想幫助記憶,但其位數(shù)較多,處理不便,容易產(chǎn)生重復(fù)。例如,中國(guó)互聯(lián)網(wǎng)的行政區(qū)域名編碼SX代表山西省,SN代表陜西省,HB代表湖北省,HE代表河北省等。(4)組合編碼 組合編碼是以上述三種編碼結(jié)合使用的編碼方法。常用的有:1)按位編碼和順序編碼的組合編碼法。例如,職工編碼共5位,前兩位是部門(mén)編碼,后3位是個(gè)人編碼,而部門(mén)編碼及個(gè)人編碼均按順序編碼。郵政編碼、身份證號(hào)碼、學(xué)生學(xué)號(hào)等編碼方法相似。2)字母、數(shù)字組合的編碼法。是某幾位用字母,某幾位用數(shù)據(jù)的編碼方法。例如,汽車牌照的編碼、電報(bào)電傳的編碼。(5)校驗(yàn)位 為了保證正確的輸入,可以在原有編碼的右端設(shè)計(jì)一個(gè)校驗(yàn)位,使它事實(shí)上變成編碼的一個(gè)組

42、成部分。校驗(yàn)位通過(guò)事先規(guī)定的數(shù)學(xué)方法計(jì)算出來(lái)。當(dāng)編碼錄入時(shí),由計(jì)算機(jī)按同樣的數(shù)學(xué)方法對(duì)輸入的編碼(原編碼部分)數(shù)字計(jì)算出校驗(yàn)位,并將它與輸入的校驗(yàn)位進(jìn)行比較,以校驗(yàn)輸入的編碼是否有錯(cuò)。由校驗(yàn)位可以發(fā)現(xiàn)以下各種錯(cuò)誤:數(shù)字看錯(cuò),例如,1看成7;易位錯(cuò)誤,例如,1234輸入時(shí)誤為1324;雙易位錯(cuò),例如,26913輸入時(shí)誤為21963;隨機(jī)錯(cuò)誤,包括以上兩種或三種綜合性錯(cuò)誤或其他錯(cuò)誤。校驗(yàn)位的計(jì)算方法如下:1)對(duì)每位編碼加權(quán)。即各位編碼乘以權(quán)因子,求出各位之積,再將各位積相加求和。一般權(quán)因子的取法有如下幾種: 取一個(gè)幾何級(jí)數(shù),如20、21、22、。 取一個(gè)算術(shù)級(jí)數(shù),如7、6、5、。 都取1。 取1、

43、2、1、2、。 取一串質(zhì)數(shù)17、13、7、5、3、。2)各位乘積之和取模M的余數(shù)R,R即可作為校驗(yàn)位的值。模一般為11、也可以是10、13等。下面舉例說(shuō)明校驗(yàn)位的計(jì)算與用法。例3-1 設(shè)原編碼為1 2 3 4 5,用算術(shù)級(jí)數(shù)法確定權(quán)因子,試計(jì)算其校驗(yàn)位。各位分別乘以權(quán):6、5、4、3、2;得出乘積之和為:(1×6)+(2×5)+(3×4)+(4×3)+(5×2)=50。對(duì)模11求余:50÷11余6,則6為校驗(yàn)位。因此,原編碼加上一位校驗(yàn)位成為1 2 3 4 5 6。如果將該編碼錄入時(shí),輸入的錯(cuò)誤編碼為1 2 3 5 5 6,計(jì)算機(jī)按原

44、來(lái)的權(quán)重新計(jì)算校驗(yàn)位(1×6)+(2×5)+(3×4)+(5×3)+(5×2)÷11,余9。由于計(jì)算出的驗(yàn)位值與輸入的校驗(yàn)位值不一致,即96,因此該類錯(cuò)誤可以很容易地捕獲。2.5 數(shù)據(jù)定義分析數(shù)據(jù)定義分析的任務(wù)是確定系統(tǒng)安裝和正常運(yùn)行期間數(shù)據(jù)庫(kù)、基本表、視圖、索引等對(duì)象的創(chuàng)建、修改與刪除等需求。數(shù)據(jù)定義分析為數(shù)據(jù)庫(kù)并發(fā)處理設(shè)計(jì)提供依據(jù)。數(shù)據(jù)定義分析很有必要。首先,雖然數(shù)據(jù)庫(kù)系統(tǒng)的上述對(duì)象是開(kāi)發(fā)人員在數(shù)據(jù)庫(kù)實(shí)現(xiàn)時(shí)創(chuàng)建的,但是一些通用性較強(qiáng)的數(shù)據(jù)庫(kù)系統(tǒng)相當(dāng)一部分對(duì)象是在系統(tǒng)安裝或者正常運(yùn)行時(shí)創(chuàng)建的。例如,為了提高數(shù)據(jù)庫(kù)的運(yùn)行速度,證券交易

45、管理系統(tǒng)按月份存儲(chǔ)數(shù)據(jù),即每個(gè)月份的數(shù)據(jù)存儲(chǔ)在該月份對(duì)應(yīng)的數(shù)據(jù)庫(kù)中;于是每個(gè)月1號(hào)之前需要建立一個(gè)對(duì)應(yīng)該月的數(shù)據(jù)庫(kù)。其次,數(shù)據(jù)庫(kù)運(yùn)行期間可能存在修改某個(gè)對(duì)象的需求。例如,學(xué)生成績(jī)管理系統(tǒng)在運(yùn)行期間由于系統(tǒng)升級(jí),學(xué)生基本信息需要增加一個(gè)數(shù)據(jù)項(xiàng)。最后,在數(shù)據(jù)庫(kù)運(yùn)行期間可能存在刪除某個(gè)對(duì)象的需求。例如,一些臨時(shí)建立的對(duì)象在不使用時(shí)需要?jiǎng)h除??梢詮囊韵聨讉€(gè)方面進(jìn)行數(shù)據(jù)定義分析:(1)對(duì)象命名時(shí)是否考慮了時(shí)間因素?如是,則可能有創(chuàng)建需求。(2)數(shù)據(jù)庫(kù)系統(tǒng)在運(yùn)行過(guò)程中,為了提高數(shù)據(jù)處理的速度,可能需要?jiǎng)?chuàng)建臨時(shí)表,用于存儲(chǔ)數(shù)據(jù)處理的中間結(jié)果。(3)由于應(yīng)用系統(tǒng)的復(fù)雜要求,需要在應(yīng)用程序中動(dòng)態(tài)地創(chuàng)建視圖,以簡(jiǎn)

46、化系統(tǒng)對(duì)數(shù)據(jù)操作的語(yǔ)句。2.6 數(shù)據(jù)操縱分析數(shù)據(jù)操縱分析主要是數(shù)據(jù)插入、修改、刪除、查詢、統(tǒng)計(jì)和排序等方面的分析。2.6.1 數(shù)據(jù)更新分析數(shù)據(jù)更新是指對(duì)數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行各種更新操作,包括對(duì)數(shù)據(jù)進(jìn)行插入、修改、刪除等操作,從而使數(shù)據(jù)庫(kù)中的數(shù)據(jù)發(fā)生變化。1. 數(shù)據(jù)插入數(shù)據(jù)插入是在原有數(shù)據(jù)的基礎(chǔ)上增加新的數(shù)據(jù)。插入的數(shù)據(jù)可以是一個(gè)表中的一條或者多條記錄。在關(guān)系數(shù)據(jù)庫(kù)中數(shù)據(jù)插入語(yǔ)句有兩種使用形式:一種是使用常量,一次插入一個(gè)記錄。另一種是利用查詢的結(jié)果集,一次插入多個(gè)記錄。2. 數(shù)據(jù)刪除數(shù)據(jù)刪除是將對(duì)原有的不需要的數(shù)據(jù)執(zhí)行刪除操作,從而達(dá)到減少數(shù)據(jù)使數(shù)據(jù)得到更新的目的。在對(duì)數(shù)據(jù)執(zhí)行刪除操作時(shí),若需要

47、刪除的數(shù)據(jù)和其他表中的數(shù)據(jù)有關(guān)聯(lián),則為了保證數(shù)據(jù)的完整性和一致性,通常也需要將相關(guān)數(shù)據(jù)進(jìn)行刪除更新操作。3. 數(shù)據(jù)修改數(shù)據(jù)修改是指對(duì)原有數(shù)據(jù)中的部分?jǐn)?shù)據(jù)或者全部數(shù)據(jù)進(jìn)行修改操作,從而使數(shù)據(jù)滿足新要求而實(shí)現(xiàn)數(shù)據(jù)更新的目的。在關(guān)系數(shù)據(jù)庫(kù)中,數(shù)據(jù)經(jīng)常需要執(zhí)行修改操作,以符合新的要求。例如,在學(xué)生基本信息表中,當(dāng)某個(gè)學(xué)生的專業(yè)發(fā)生變化時(shí),就需要修改原來(lái)所登記的專業(yè)信息以達(dá)到更新的目的。2.6.2 數(shù)據(jù)查詢分析數(shù)據(jù)查詢分析的任務(wù)是確定系統(tǒng)正常運(yùn)行期間,根據(jù)數(shù)據(jù)字典、應(yīng)用系統(tǒng)需求及用戶的需求,確定哪些屬性作為數(shù)據(jù)查詢的選擇條件構(gòu)造依據(jù),并根據(jù)系統(tǒng)對(duì)數(shù)據(jù)查詢響應(yīng)時(shí)間要求的快慢,合理地完成索引等對(duì)象的創(chuàng)建、修

48、改與刪除等操作。一般可以從以下幾個(gè)方面進(jìn)行數(shù)據(jù)查詢分析:(1)根據(jù)系統(tǒng)需求分析的結(jié)果及各類用戶對(duì)數(shù)據(jù)查詢的需求,分析應(yīng)用系統(tǒng)需要哪些實(shí)體集的屬性作為系統(tǒng)查詢的條件,如某工廠管理系統(tǒng)要求依據(jù)職工的崗位、職位等屬性進(jìn)行數(shù)據(jù)的查詢。(2)根據(jù)分析比較,確定數(shù)據(jù)查詢速度的快慢,合理地針對(duì)某些屬性設(shè)計(jì)索引,以加快查詢響應(yīng)時(shí)間。2.6.3 數(shù)據(jù)統(tǒng)計(jì)和排序分析所謂排序是指將一組雜亂無(wú)章的數(shù)據(jù)按一定的規(guī)律順次排列起來(lái)。比如,按人名的筆畫(huà)數(shù)、工資額、銷售業(yè)績(jī)由高到低排列等等。為了使數(shù)據(jù)更具有層次感,需要對(duì)基本表中的數(shù)據(jù)進(jìn)行分類匯總,將數(shù)據(jù)庫(kù)中的記錄按某個(gè)字段分類后進(jìn)行匯總統(tǒng)計(jì),統(tǒng)計(jì)方式包括求和、求平均值、計(jì)數(shù)、

49、求最大(小)值等。 分組(類)統(tǒng)計(jì)的例子有:(1)按照銷售代表、生產(chǎn)線、銷售區(qū)域或季度分組進(jìn)行銷售情況統(tǒng)計(jì)。(2)按照公司部門(mén)(分公司)、生產(chǎn)線或季度分組進(jìn)行財(cái)務(wù)情況統(tǒng)計(jì)。(3)按照部件、供應(yīng)商和生產(chǎn)廠家分組進(jìn)行投資情況統(tǒng)計(jì)。2.7 數(shù)據(jù)完整性分析完整性分析是基本表設(shè)計(jì)的重要基礎(chǔ),它是找出保證數(shù)據(jù)庫(kù)中數(shù)據(jù)滿足一致性、正確性和有效性的需求,其目的是防止錯(cuò)誤的數(shù)據(jù)進(jìn)入數(shù)據(jù)庫(kù)。(1)一致性 一致性是指表示同一事實(shí)的兩個(gè)數(shù)據(jù)應(yīng)當(dāng)一致。例如,學(xué)生成績(jī)管理系統(tǒng)中各個(gè)學(xué)院保存的學(xué)生成績(jī)應(yīng)該和學(xué)校教務(wù)處保存的學(xué)生成績(jī)一致。(2)正確性 正確性是指數(shù)據(jù)必須正確無(wú)誤的。例如,數(shù)值型數(shù)據(jù)中只能含有數(shù)字而不能含有字母

50、。(3)有效性 有效性是指數(shù)據(jù)必須在其定義域之內(nèi)。例如,性別的定義域?yàn)榧夏校?,性別必須在此定義域中取值。數(shù)據(jù)完整性分析的主要任務(wù)是確定數(shù)據(jù)項(xiàng)取值范圍、關(guān)鍵字、數(shù)據(jù)關(guān)聯(lián)。2.7.1 數(shù)據(jù)項(xiàng)取值范圍數(shù)據(jù)項(xiàng)取值是有取值范圍限制的,這種限制可以在某種程度上減輕應(yīng)用程序邏輯查錯(cuò)的負(fù)擔(dān)。例如,在職工基本信息中,根據(jù)習(xí)慣職工年齡一般為正整數(shù),在輸入年齡時(shí),如果不小心輸入為負(fù)數(shù)或者是小數(shù)時(shí),數(shù)據(jù)庫(kù)系統(tǒng)就會(huì)自動(dòng)提示出錯(cuò),不充許數(shù)據(jù)輸入。數(shù)據(jù)項(xiàng)取值范圍一般在數(shù)據(jù)字典的數(shù)據(jù)項(xiàng)詞條中說(shuō)明。2.7.2 關(guān)鍵字關(guān)鍵字是能夠唯一標(biāo)識(shí)一個(gè)實(shí)體的一個(gè)或一個(gè)以上的無(wú)冗余數(shù)據(jù)項(xiàng)(或數(shù)據(jù)結(jié)構(gòu))。關(guān)鍵字在數(shù)據(jù)庫(kù)設(shè)計(jì)中也稱為主碼,沒(méi)

51、有兩個(gè)實(shí)體具有相同關(guān)鍵字。如果關(guān)鍵字是由一組數(shù)據(jù)項(xiàng)(或數(shù)據(jù)結(jié)構(gòu))組成,則其中不能含有多余的數(shù)據(jù)項(xiàng)(或數(shù)據(jù)結(jié)構(gòu))。例如,在學(xué)生基本信息中,學(xué)號(hào)就是關(guān)鍵字,學(xué)號(hào)確定后,學(xué)生的其他數(shù)據(jù)項(xiàng)的值也就確定了。而且,雖然姓名+學(xué)號(hào)也能唯一確定一個(gè)學(xué)生,但其中的姓名是多余的。關(guān)鍵字一般通過(guò)分析描述實(shí)體的各數(shù)據(jù)項(xiàng),從這些數(shù)據(jù)項(xiàng)中挑選一個(gè)或多個(gè)作為關(guān)鍵字。因此,關(guān)鍵字可能不止一個(gè)。例如,也可以用公民身份證號(hào)碼作為學(xué)生基本信息的關(guān)鍵字。有時(shí),為了方便,不在實(shí)體的各數(shù)據(jù)項(xiàng)中找出關(guān)鍵字,而是人工制造一個(gè)關(guān)鍵字。例如,在珍稀野生動(dòng)物管理中,通常采用編號(hào)而不是DNA指紋來(lái)識(shí)別這些動(dòng)物,雖然兩者均是關(guān)鍵字。關(guān)鍵字主要用于提高

52、數(shù)據(jù)處理、檢索和更新速度,保證數(shù)據(jù)不能被重復(fù)輸入到數(shù)據(jù)庫(kù)中。關(guān)鍵字一般在數(shù)據(jù)字典的數(shù)據(jù)存儲(chǔ)詞條中說(shuō)明。2.7.3 數(shù)據(jù)關(guān)聯(lián)數(shù)據(jù)關(guān)聯(lián)是指兩個(gè)或多個(gè)對(duì)象之間的聯(lián)系。這里,對(duì)象是指數(shù)據(jù)項(xiàng)、數(shù)據(jù)結(jié)構(gòu)、基本表、視圖。數(shù)據(jù)關(guān)聯(lián)分為算術(shù)關(guān)聯(lián)、集合關(guān)聯(lián)、邏輯關(guān)聯(lián)三類。 1. 算術(shù)關(guān)聯(lián)算術(shù)關(guān)聯(lián)是通過(guò)算術(shù)運(yùn)算符把兩個(gè)或多個(gè)對(duì)象聯(lián)系起來(lái)。常用的算術(shù)運(yùn)算有4種,它們是加、減、乘、除。例如,金額=單價(jià)×數(shù)量。2. 集合關(guān)聯(lián)集合關(guān)聯(lián)是通過(guò)集合運(yùn)算符把兩個(gè)或多個(gè)對(duì)象聯(lián)系起來(lái)。常用的集合運(yùn)算有并、交、包含、屬于等。3. 邏輯關(guān)聯(lián)邏輯關(guān)聯(lián)是通過(guò)邏輯運(yùn)算符把兩個(gè)或多個(gè)對(duì)象聯(lián)系起來(lái)。常用的邏輯運(yùn)算有與、或、非、大于、等于

53、、小于等。2.8 數(shù)據(jù)安全性分析數(shù)據(jù)庫(kù)的安全性和計(jì)算機(jī)系統(tǒng)的安全性,包括計(jì)算機(jī)硬件、操作系統(tǒng)、網(wǎng)絡(luò)系統(tǒng)等的安全性、是緊密聯(lián)系、相互支持的,因此在討論數(shù)據(jù)庫(kù)的安全性之前首先討論計(jì)算機(jī)系統(tǒng)安全性的一般問(wèn)題。數(shù)據(jù)庫(kù)安全性分析主要關(guān)心數(shù)據(jù)庫(kù)用戶及其權(quán)限、數(shù)據(jù)加密需求、病毒防護(hù)需求、防非法訪問(wèn)需求。2.8.1 數(shù)據(jù)安全的概念數(shù)據(jù)庫(kù)的安全性是指保護(hù)數(shù)據(jù)庫(kù),以防止不合法的使用造成的數(shù)據(jù)泄密、更改或破壞。不合法的使用是指不具有數(shù)據(jù)操縱權(quán)限的用戶進(jìn)行了越權(quán)的數(shù)據(jù)操縱。DBMS通過(guò)種種防范措施防止用戶越權(quán)使用數(shù)據(jù)庫(kù),其安全保護(hù)措施是否有效是數(shù)據(jù)庫(kù)系統(tǒng)的主要性能指標(biāo)之一。2.8.2 數(shù)據(jù)訪問(wèn)權(quán)限D(zhuǎn)BMS對(duì)需要訪問(wèn)數(shù)

54、據(jù)庫(kù)的用戶提供了多項(xiàng)安全控制措施以保證數(shù)據(jù)的安全,只允許用戶執(zhí)行合法的操作。這些保護(hù)措施包括:用戶標(biāo)識(shí)和鑒別、存取控制、自主存取控制、強(qiáng)制存取控制、視圖機(jī)制、審計(jì)等。1. 用戶標(biāo)識(shí)和鑒別用戶標(biāo)識(shí)和鑒別是系統(tǒng)提供的最外層安全保護(hù)措施。每次用戶要求訪問(wèn)數(shù)據(jù)時(shí)都要求輸入用戶標(biāo)識(shí),進(jìn)行核對(duì)后,對(duì)于合法的用戶才提供數(shù)據(jù)訪問(wèn)權(quán)限。常用的方法有:用輸入用戶名來(lái)標(biāo)明用戶身份。通過(guò)回答口令來(lái)標(biāo)識(shí)用戶身份。通過(guò)回答隨機(jī)數(shù)的運(yùn)算結(jié)果標(biāo)明用戶身份。2. 存取控制DBMS的存取控制是數(shù)據(jù)庫(kù)安全的一個(gè)重要保證,它確保具有數(shù)據(jù)庫(kù)使用權(quán)的用戶訪問(wèn)數(shù)據(jù)庫(kù),同時(shí)令未被授權(quán)的人員無(wú)法訪問(wèn)數(shù)據(jù)。存取控制機(jī)制主要包括兩個(gè)部分:定義用戶

55、權(quán)限,并將用戶權(quán)限登記到數(shù)據(jù)庫(kù)中。當(dāng)用戶提出操作請(qǐng)求時(shí),系統(tǒng)進(jìn)行權(quán)限檢查。存取機(jī)制的類型有:自主存取控制。在自主存取控制方法中,用戶對(duì)于不同的對(duì)象有不同的存取權(quán)限,不同的用戶對(duì)同一對(duì)象的存取權(quán)限也各不相同,用戶可以將自己擁有的存取權(quán)限轉(zhuǎn)授給其他用戶。很明顯,自主存取控制比較靈活。強(qiáng)制存取控制。在強(qiáng)制存取控制方法中:每個(gè)數(shù)據(jù)對(duì)象被標(biāo)以一定的密級(jí)。每個(gè)用戶也被授予某一個(gè)級(jí)別的許可證。對(duì)于任意一個(gè)對(duì)象,只有具有合法許可證的用戶才可以存取。與自主存取控制比較起來(lái),強(qiáng)制存取控制比較嚴(yán)格。3. 自主存取控制方法在關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)中,系統(tǒng)對(duì)自主存取控制提供了支持,其數(shù)據(jù)控制語(yǔ)言主要是授權(quán)和收權(quán)語(yǔ)句。(1)關(guān)系

56、中的用戶權(quán)限 用戶權(quán)限主要包括數(shù)據(jù)對(duì)象和操作類型兩個(gè)要素,定義用戶的存取權(quán)限稱為授權(quán),通過(guò)授權(quán)規(guī)定用戶可以對(duì)哪些數(shù)據(jù)進(jìn)行什么樣的操作。在關(guān)系系統(tǒng)中,DBA可以把建立基本表和修改基本表的權(quán)限授予用戶,用戶一旦獲得此權(quán)限后就可以建立和修改基本表,同時(shí)還可以創(chuàng)建所建表的索引和視圖,關(guān)系系統(tǒng)中存取控制的數(shù)據(jù)對(duì)象不僅包括數(shù)據(jù)(如表、屬性列等),還包括數(shù)據(jù)庫(kù)的模式(邏輯模式、外模式和內(nèi)模式)。(2)關(guān)系數(shù)據(jù)庫(kù)中的數(shù)據(jù)控制功能 關(guān)系數(shù)據(jù)庫(kù)中的數(shù)據(jù)控制功能主要是授權(quán)和收權(quán)語(yǔ)句的使用,包括:數(shù)據(jù)對(duì)象的創(chuàng)建者自動(dòng)獲得對(duì)于該數(shù)據(jù)對(duì)象的所有操作權(quán)限;獲得數(shù)據(jù)操縱權(quán)限的用戶可以通過(guò)授權(quán)語(yǔ)句把權(quán)限轉(zhuǎn)授給其他用戶;當(dāng)用戶將

57、某些權(quán)限授給其他用戶后,有時(shí)還需要把權(quán)限收回。(3)授權(quán)機(jī)制的性能1) 用戶權(quán)限定義中數(shù)據(jù)對(duì)象范圍越小,授權(quán)系統(tǒng)就越靈活。授權(quán)粒度越細(xì),授權(quán)子系統(tǒng)就越靈活,但系統(tǒng)定義與檢查權(quán)限的開(kāi)銷也會(huì)相應(yīng)地增大。2)用戶權(quán)限定義中能夠使用謂詞的授權(quán)系統(tǒng)比較靈活。3)用戶權(quán)限定義中能夠使用謂詞、且存取謂詞中能夠引用系統(tǒng)變量的授權(quán)系統(tǒng)更加靈活。由于系統(tǒng)變量能夠表達(dá)諸如日期、時(shí)間、設(shè)備及用戶名等信息,通過(guò)它可以控制用戶只能在某段時(shí)間內(nèi)、某臺(tái)終端上存取有關(guān)數(shù)據(jù)。4) 自主存取控制的不足之處自主存取控制能夠通過(guò)授權(quán)機(jī)制有效地控制用戶對(duì)敏感數(shù)據(jù)的存取,但也存在著一定的缺陷,其主要問(wèn)題是系統(tǒng)對(duì)權(quán)限的授予狀況無(wú)法進(jìn)行有效的控制,因而可能造成數(shù)據(jù)的無(wú)意泄露。例如,甲將自己權(quán)限范圍內(nèi)的某些數(shù)據(jù)存取權(quán)限授權(quán)給乙,甲的意圖是只允許乙本人操作這些數(shù)據(jù)。但甲的這種安全性要求并不能得到保證,因?yàn)橐乙坏┇@得了對(duì)數(shù)據(jù)的權(quán)限,就可以將數(shù)據(jù)備份,獲得自身權(quán)限內(nèi)的副本,并在不征得甲同意的前提下傳播副本。造成這一問(wèn)題的根本原因就在于,這種機(jī)制僅僅通過(guò)對(duì)數(shù)據(jù)的存取權(quán)限來(lái)進(jìn)行安全控制,而數(shù)據(jù)本身并無(wú)安全標(biāo)記。4. 強(qiáng)制存取控制方法強(qiáng)制存取控制方法是系統(tǒng)所采取的強(qiáng)制存取檢查

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論