2009年12月21日 星期一

GIS概論 - Introduction GIS (11)

本篇文章中的簡報資料部分取用康寧醫護暨管理專科學校資訊管理科 凃保民老師的簡報資料,如果讀者希望閱讀更深入的資料內容,請參閱http://kam.sju.edu.tw/mis-200902.nsf/f456cfefe939d4e848257023001e60bc/49541e5f7d6376fc482575780064ff20/$FILE/ER%20Model.ppt

ER-Model又稱實體關係模型,這些文字的敘述,筆者不在多談。我要強調的是,你如何利用ER-Model在你的工作上。所以建議讀者,看一下簡報裡面的描述,然後搭配筆者的文字描述來延伸思考。
在我們周遭的生活當中,每一件事物都存在著關係,ER Model就是利用邏輯化、圖像式的方式來表達我們生活周遭的事物關係。舉例而言,你居住的房子與你本身就存在著關係,"你"本身是一個實體,"房子"也是一個實體,兩個實體間存在著"居住"的關係;再舉例而言,你擁有一輛車子,"你"是一個實體,"車子"也是一個實體,兩者間存著"擁有"的關係。

舉上面兩個例子,主要是要讀者體會實體關係的狀況無所不在。接下來,讀者要思考的就是你周遭所遇到的事物的實體關係。

緊接著實體的除了關係以外,就是實體的屬性了。每一個實體都有屬性,比如說,你自己就包含了身分證字號、姓名、住址、雙親、配偶、電話、職業等的屬性資料。而你所居住的房子,也包含了所有權人、地址、電話、面積等資料。兩者可能可以用共同的屬性資料來對應出關係來,比如說地址。

而最簡單幫助讀者思考的就是你可以拿出你自己的身分證、公司資料、病例資料、存款簿、借書證等手邊的證明文件,上面的資料都是你的屬性資料的一種。而你就可以透過這些資料的不同用途,去尋找到對應關係的另一個實體。例如:身分證資料對應戶籍地址的居住關係;公司資料對應公司的任職關係;病例資料對應醫院的診療關係;存款簿對應銀行的理財關係;借書證對應圖書館的借書關係等。

回到GIS的應用中,假設你在建立一個車機系統,你可能會遇到的就是車輛與車隊的關係。一輛車子與車隊的關係存在的約雇關係。而單一一輛車子,會包含:車牌號碼、駕駛、車型、購買年、CC數、公司等基本資料;而派遣公司,就會有公司名稱、負責人、電話、地址等資料。這兩者就可以利用公司的名稱來做關聯。
再舉例,工程管理系統中,營造廠可能包含:名稱、負責人、資本額、等級等基本資料的屬性;工程本身會有工程名稱、總價、設計單位、工期、起造人、承包商等基本資料,兩者可以用承包商產生關聯。




關係通常除了單純的對應以外,更重要的是描述關係的複雜程度。在ER Model中,關係被用一對一、一對多、多對多來表示關聯的複雜性。我剛剛所舉的例子,多半只是用來描述關聯的基本一對一關係,但是,現實的生活比這個複雜許多。比如說,你自己與醫院的關係可能是一對多,因為你可能會依據不同的症狀去尋求不同的醫療,所以你一個人的資料就會在不同的醫院、診所、院所出現。這時候,你一個人的身分就對應到多家醫療機構。
再舉例,你一個人可能會去圖書館借閱很多書籍,那你與圖書館裡面的書籍就有一對多的關係存在。當然,一本書可以給很多人借閱,所以如果將書籍與借書人建立關係,可能就會出現一對多的關係。

回到GIS中,在前面談到的車輛派遣中,車輛與車隊的關係,當然一個車隊公司可能其下擁有很多車輛,這時候一對多的關係就出現了。又工程與營造廠的關係在於承攬,所以工程與營造廠通常有一對一的關係,但反過來,一家營造廠就一定會有承攬過很多工程,所以,營造廠與工程又存在著一對多的關係。


談了這麼多理論的觀念後,接著就是實體關係圖的建置,這部分並不難。首先,讀者一定要先繪製個別的實體,然後將將實體的屬性繪製出來,再將關聯拉出來,這時候就有初步的實體關係架構;當然,你必須確認實體與實體間的關聯,是否可以透過共同的屬性產生關聯。這時候,實體關係模型就建立了。








說實在的,筆者接觸的專案並不算少,還是老生常談,規勸各位GIS的學習者,由其是政府機關的人員。學GIS一定要學資料庫,因為80%都是資料庫處理,無論是車輛派遣或是工程管理系統,在其中跟地理圖形相關的部分都只有車子的位置與工程位置而已,有多難?!不就是一個座標值!
而後面的管理系統、查詢、分析、統計全部都是資料庫的運作。所以,ER Model絕對實務、重要。系統規劃上,躲不掉、避不開。而筆者很多朋友寫系統,基本上在系統開始的時候,也只有前段圖資部分會與筆者討論,其餘部分就再也不需要筆者了(除了應用的概念外),所以其餘的都是資料庫與程式撰寫。

政府機關一定要學資料庫規劃,因為如果你沒辦法利用ER Model將你日常生活中的表單規畫出來,那你又如何可以建立一個GIS系統協助你的行政作業。
再回到Engineering GIS的角度來看,建議學子們,可以開始讀資料庫概論,將一些你可以想到的工程管理資料建立ER Model的關係,往後要建立工程管理系統就不需要借助他人之力了。

最後,正規化是學習ER Model的另一個重點,有機會筆者在與讀者分享。希望各位可以透過本篇文章,對於GIS有更深一層的認識。

沒有留言:

張貼留言