關鍵字:面向對象 關系數據庫 設計
北京市公路局系統使用的是Oracle 7.3關系數據庫,即RDBMS。由于我們對整個工程使用了面向對象的軟件工程(OOSE)開發方法學,所以數據庫設計也是面向對象的。 一、 概念的區分
有些人把面向對象的數據庫設計(即數據庫模式)思想與面向對象數據庫管理系統(OODBMS) 理論混為一談。其實前者是數據庫用戶定義數據庫模式的思路,后者是數據庫管理程序的思路。用戶使用面向對象方法學可以定義任何一種DBMS數據庫,即網絡型、層次型、關系型、面向對象型均可,甚至文件系統設計也照樣可以遵循面向對象的思路。
面向對象的思路或稱規范可以用于系統分析、系統設計、程序設計,也可以用于數據結構設計、數據庫設計。OOSE自上至下、自始至終地貫徹面向對象思路,是一個一氣呵成的統一體。面向對象的數據庫設計只是 OOSE 的一個環節。
二、 數據庫設計的重要性
一般數據庫設計方法有兩種,即屬性主導型和實體主導型。屬性主導型從歸納數據庫應用的屬性出發,在歸并屬性集合(實體)時維持屬性間的函數依賴關系。實體主導型則先從尋找對數據庫應用有意義的實體入手,然后通過定義屬性來定義實體。一般現實世界的實體數在屬性數 1/10 以下時,宜使用實體主導型設計方法。面向對象的數據庫設計是從對象模型出發的,屬于實體主導型設計。
一般數據庫應用系統都遵循以下相關開發步驟:1設計應用系統結構;2 選擇便于將應用程序與 DBMS 結合的DBMS體系結構,如RDBMS;3 根據應用程序使用的環境平臺,選擇適宜的DBMS(如Oracle)和開發工具(如PB);4 設計數據庫,編寫定義數據庫模式的SQL程序;5 編寫確保數據正確錄入數據庫的用戶接口應用程序;6 錄入數據庫數據;7 運行各種與數據庫相關的應用程序,以確認和修正數據庫的內容。
對以上各步驟,有幾點需要說明:
(1)這不是瀑布模型,每一步都可以有反饋。
在公路局系統中,以上各步不僅有反饋、有反復,還有并行處理。比如一些庫表在數據錄入時,另一些庫表設計還在修改。這與我們的遞增式開發方法有關,也與面向對象的特征有關。
(2)上述順序不是絕對的,大多數場合是從第三步開始的。
(3)對大多數數據庫應用系統來說,上述各步中最重要、最困難的不是應用系統設計而是數據庫設計。
三、 DBMS的支持和數據庫設計
很多數據庫應用系統開發者不重視數據庫設計的原因是:他們太迷信DBMS,認為購入一個功能強大的 DBMS后數據庫設計就不困難、不重要了。一些國內外的數據庫教材常常是在為DBMS的開發廠商做宣傳,而很少站在數據庫用戶角度,從數據庫應用系統出發介紹數據庫設計方法。結果往往使讀者搞不清書中介紹的是數據庫管理程序的設計思想,還是應用這種 DBMS 進行數據庫設計的思想。
延伸閱讀
文章來源于領測軟件測試網 http://www.kjueaiud.com/