大部份的軟體專案似乎都跟資料庫脫離不了關係。就因為資料庫容易使用,對它的依賴程度高,資料庫設計的課題,也就相對受到重視。良好的資料庫設計,則正是整個系統運作效能的關鍵。
以程式開發人員的觀點,而非系統管理者
本書在介紹一個良好的資料庫系統,必須要考慮的層面,以程式開發人員的角度,針對不同的層面,探討需要重視的問題。從一開始的系統設計流程、資料模型的定義設計,到資料表格的配置、前端的使用者界面及多樣化報表的呈現等等。
作者RebeccaM.Riordan具備超過十五年應用系統及資料庫的設計經驗,他撰寫這本書的用意,在於希望讓程式開發人員也能輕鬆掌握資料庫設計的精髓,著重在實務上會運用到的重要觀念,而不是將所有資料庫系統的問題,都一昧推給資料庫管理者。因為開發人員若同時能具備完整的資料庫概念,在專案前期即能提出較良好的資料模型,對日後因為設計不良造成的衝擊降到最低。
內容括理論與設計實務並重,不失偏頗
要設計一個效能表現良好的資料庫系統,基礎觀念是很重要的,本書的第一部份即從關連式資料庫的基本觀念討論起,從「什麼是資料庫?」開始,接著說明資料庫結構,正規化(Normal Form),各種資料的關聯性(Relationship),一致性(Data Integrity),限制(Constraints),以及一些邏輯操作的方式。這部份的內容搭配清楚易懂的圖解,讓沒有資料庫基礎的讀者也可以輕鬆駕馭。近年來資料倉儲(Data Warehouse)及資料庫行銷的觀念已逐漸成熟,本書的第二部份亦將OLAP多維度資料庫納入討論的範圍中,介紹此類資料庫與關連式資料庫的差異,並討論在維度分析時,Fact Table與Dimension Table的資料結構應該如何設計。
第三部份則是本書的重點所在。在規劃規模較大的系統時,系統開發流程是很重要的,明確定義系統欲達成的目標,以及整個系統的範疇,故採用合適的設計法則可以幫助專案的順利進行;接下來的概念性資料模式(Conceptual Data Model)的建立,從收集現有材料進行需求分析,定義資料物件及其關連性,反覆檢視模式中的實體(Entities),資料屬性值的合法範圍,資料正規化,最後將這些邏輯設計轉化資料庫實體的系統架構,包括架構層級的選擇,資料庫物件的建立,以及整個系統安全課題上的考量。這些過程需要與專案成員持續的溝通,並在不同階段有相關的文件產出。
人機界面設計亦是關鍵
第四部份則針對使用者界面設計的議題進行討論,界面是系統與人之間溝通的橋樑,包括資料輸入與輸出。輸入界面的設計方式會因為資料的關連性而有不同,但也不要因為資料關連的複雜,導致輸入畫面的無效率,本書提供了一些範例畫面讓讀者參考,並建議在設計輸入界面時,可以採用一樣標準的視窗控制項(Windows Controls),以及在表示不同資料型態的欄位值時建議的做法,亦可以透過界面操作的限制,確保輸入資料的一致性及正確性。
另外在輸出界面的設計上,系統必須能將有關聯性的資料,歸納彙整於同一個界面中,才能讓使用者在最短時間取得有效資訊。另外可以彈性提供不同查詢條件及結果排序功能,提供標準及即時性報表的瀏覽,符合使用者多樣化的資料輸出需求。
若您還是個資料庫設計新手,本書每個章節都值得您細細品味,對於基本觀念的建立及設計的要領都能夠一次掌握,十分適合您閱讀;若您已經十分熟悉資料庫的設計,屬於玩家級的高手,本書內容也可以讓您溫故知新,重新整理腦海中對資料庫的思緒,也頗有收穫。程式開發人員若能具備這些良好的設計觀念,與DBA之間也會合作得更為愉快,您說是嗎?
《作者簡介》陳宏一
現任億訊國際資深顧問,交通大學資訊管理研究所碩士。曾任職於南亞科技資訊部工程師、資迅人網路研發副理、數位營運研發專案經理、艾群科技產品研發部經理,專精於OOAD、J2EE Technology、Web application development、軟體開發流程及專案管理等;通過SCJP、SCWCD、 SCJD、SCEA等認證。曾參與線上社群網站規劃設計、電子商務網站規劃設計、金流整合及後臺管理系統規劃設計、線上遊戲系統監控管理平臺及計費系統規劃設計、網路開店系統平臺架構設計、WAP Portal規劃設計等專案規劃建置。
熱門新聞
2025-12-12
2025-12-12
2025-12-12
2025-12-12
2025-12-12
2025-12-12