星期四, 9月 28, 2006

再談資料模型

早上突然又對「資料模型」有了些「或許更加清晰」的感覺。

或許是因為昨天的實驗室會議後,我覺得將資料模型做這些分類,真的對溝通有幫助。雖然學弟仍然被老師數說了一頓(因為他在一些沒有想清楚的地方硬拗),但將資料模型分成幾類,因為可以縮小溝通的範疇,在我看來確實有助於「寫投影片內容者」與「看投影片思考者」之間的討論。

於是,對原先的資料模型做了些修改。新的圖長得像這樣:


「數學世界」提供了抽象模型的描述基礎,而「物理世界的問題」則對抽象模型該有哪些特性提供來源。一個好的抽象模型,應該可以解決一群性質類似的問題(稍微差的模型,通用性就比較弱)。

例如,物理世界所關心的問題,用抽象模型代表後,其模型中具有某些特性的元素,其間可能有代數系統的關係(例如,彼此間有 transitivity 的性質),或可能形成一個樹狀的階層結構。

而這些性質與結構如何被實作,在討論抽象層的通用性時,通常不是那麼重要。但對抽象模型有了清楚的認知後,對於「實作模型」的設計、「建構模型」該提供那些不可或缺的材料、以及「應用模型」的限制,都能夠提供具有建設性的觀點。

3 則留言:

匿名 提到...

我自己覺得在Software的領域中, Physical World是直接對上Abstract model, application models, implementation model and construction models. 這是這個領域的特色, 也因此更容易搞成每個角色之間似乎都得(看起來也都好像能夠)溝通 (因為使用者需求都會"衝"過來), 但實際的觀點又各自不同.

而Physical World和Mathematical World之間, 可能有非常間接的關係.

tu 提到...

我覺得,問題浮現、範圍漸漸被釐清後,如果發現值得處理,人們就會試圖產生新的語言來描述與溝通。

而就比較極端的角度看,似乎好像也只有「物理」與「非物理」(形而上,或者數學、或者抽象)的世界。因此,數學與物理世界的區隔,是比較容易感受到差異吧。

生活本來就是活的。問題會隨著生活而轉變,語言也是。

匿名 提到...

第一個response中漏了說明像device driver, 或者更靠近處理physical layer這一部分的軟體, 是比較像在因應某些類型的物理模型而進行的處理, 就不見得直接對上使用者需求.

把電子電路設計, 控制系統設計, 天線設計, Info architecture design, service architecture design, DB schema design ....., etc 混合起來看之後, 隱約可以感覺到為什麼當初做SW的時候會覺得有些虛無縹緲. 現在覺得好像有些東西比較"扣得住", 也比較知道所謂"設計"指的是什麼.

設計已死? 我覺得不是, 而且在這其中才像是存有"真正的差異".

只是真的蠻困難的.