1. 程式人生 > >IDEF1x語義建模方法及其在資料庫設計中的應用

IDEF1x語義建模方法及其在資料庫設計中的應用

1引言

IDEF的含義是整合計算機輔助製造(Integrated Computer-AidedManufacturing,ICAM)DEFinition。最初的IDEF方法是在美國空軍ICAM專案建立的,最初開發3種方法:功能建模(IDEF0)、資訊建模(IDEF1)、動態建模(IDEF2),後來,隨著資訊系統的相繼開發,又開發出了下列IDEF族方法:資料建模(IDEF1X)、過程描述獲取方法(IDEF3)、面向物件的設計(OO設計)方法(IDEF4)、使用C++語言的OO設計方法(IDEF4C++)、實體描述獲取方法(IDEF5)、設計理論(rationale)獲取方法(IDEF6)、人-系統互動設計方法(IDEF8)、業務約束髮現方法(IDEF9)、網路設計方法(IDEF14)等。根據用途,可以把IDEF族方法分成兩類:

  第一類IDEF方法的作用是溝通系統整合人員之間的資訊交流。主要有:IDEF0、IDEF1、IDEF3、IDEF5。IDEF0通過對功能的分解、功能之間關係的分類(如按照輸入、輸出、控制和機制分類)來描述系統功能。IDEF1用來描述企業運作過程中的重要資訊。IDEF3支援系統使用者檢視的結構化描述。IDEF5用來採集事實和獲取知識。

  第二類IDEF方法的重點是系統開發過程中的設計部分。目前有兩種IDEF設計方法:IDEF1X和IDEF4。IDEF1X可以輔助語義資料模型的設計。IDEF4可以產生面向物件實現方法所需的高質量的設計產品。

2 IDEF1x方法

IDEF1X是IDEF系列方法中IDEF1的擴充套件版本,是在E-R(實體聯絡)方法的原則基礎上,增加了一些規則,使語義更為豐富的一種方法。概念模型設計常用IDEF1X方法,它就是把實體-聯絡方法應用到語義資料模型中的一種語義模型化技術,用於建立系統資訊模型。IDEF1的最初形式是在P.P.S (Peter) Chen的實體聯絡模型化概念與P.P.(Ted) Codd的關係理論的基礎上發展起來的。IDEF1X是IDEF1的擴充套件版本,除在圖形表達和模型化過程方面的改進外,還對語義進行了增強和豐富。例如:分類聯絡 (Categorization Relationships)的引入。

IDEF1X是語義資料模型化技術,它具有以下的特性

(1) 支援概念模式的開發。

IDEF1X語法支援概念模式開發所必需的語義結構,完善的IDEF1X模型具有所期望的一致性、可擴充套件性和可變換性。

(2) IDEF1X是一種相關語言。

IDEF1X對於不同的語義概念都具有簡明的一致結構。IDEF1X語法和語義不但比較易於為使用者掌握,而且還是強健而有效的。

(3) IDEF1X是便於講授的。

語義資料模型對許多IDEF1X使用者都是一個新概念。因此,語言的易教性是一個重要的考慮因素,設計IDEF1X語言是為了教給事務專業人員和系統分析人員使用,同樣也是教給資料管理員和資料庫設計者使用的。因此,它能用作不同學科研究小組的有效交流。

(4) IDEF1X已在應用中得到很好地檢驗和證明。

IDEF1X是基於前人多年的經驗發展而來的,它在美國空軍的一些工程和私營工業中充分地得到了檢驗和證明。

(5) IDEF1X是可自動化的。

IDEF1X圖能由一組圖形軟體包來生成。商品化的軟體還能支援IDEF1X模型的更改、分析和結構管理。

IDEF1X把實體-聯絡方法應用到語義資料模型化中,IDEF1的最初形式是在P.P.S (Peter) Chen的實體聯絡模型化概念與P.P.(Ted) Codd的關係理論的基礎上發展起來的。IDEF1X是IDEF1的擴充套件版本,除在圖形表達和模型化過程方面的改進外,還對語義進行了增強和豐富。例如:分類聯絡 (Categorization Relationships)的引入。

IDEF1X模型的基本結構和ER模型基本類似,主要有以下元素:
(1)實體(如人、地點、概念、事件等)用矩形方框表示;

(2)實體之間的關係(聯絡),用方框之間的連線表示;

(3)實體的屬性,用方框內的屬性名稱來表示。

關係是實體間的一種邏輯聯絡,用動詞或動詞短語命名。實體之間的關係可以分為確定關係和不確定關係。確定關係又分為連線關係和分類關係。連線關係也稱“父子關係”,它是兩個實體之間的聯絡或連線,一個實體(子實體)依賴於另一個實體(父實體)。分類關係表示實體間的一種分層結構,一個實體(類屬實體)表示這些事物的全集,其它(分類實體)則為其子集。不確定關係又稱“多對多關係”,兩個實體間相互存在著一對多的聯絡,如圖1。

圖1 不確定關係

連線關係又分為標識關係和非標識關係。判別一個關係是標識關係還是非標識關係只要區分子實體的主鍵,看是否需要父實體的外來鍵來共同作為主鍵,需要則為標識關係(Identifying),如圖2;如果子實體自己的主鍵就可唯一標識則它為非標識關係(Non-Identifying),如圖3。在標識關係中的子實體稱為依賴實體,用圓角矩形表示;其它用方角矩形表示的就是獨立實體。

圖2 標識關係

圖3 非標識關係

分類關係根據表示分類的實體集是不完全分類還是完全分類的又可以分為不完全分類關係和完全分類關係。

很多的資料庫建模工具都支援IDEF1x方法,如CA公司的ERWin、Sybase公司的PowerDesigner以及微軟公司的Visio等。這些工具都能建立完整的IDEF1x概念模型並支援直接將模型轉換為物理資料庫的結構。圖4顯示的就是採用Visio建立的學生選課的資料庫概念模型。我們用這個例項來說明IDEF1x建模方法的步驟。

轉自:部落格園