ASP.NET MVC + ADO.NET EF 項目實戰(二):設計過程與設計工具

工欲善其事,必先利其器。好的工具能夠成倍提升工作效率。ASP.NET MVC和ADO.NET EF也是因爲其工具出色而受到歡迎。例如:
  • MVC所提供的View模板工具;
  • MVC所提供的View切換、嚮導工具;
  • ADO.NET EF提供的模型設計工具;
  • ADO.NET EF提供的數據庫模型導入工具。
本文僅僅討論項目實戰中的設計工具。
需求設計工具
本文所指的需求設計是指將需求規格說明書(SRS)展開爲詳細設計說明書(PDS)的過程。Visual Studio即使是TeamSuit版本也沒有提供需求設計工具。對於架構師而言,這的確是一個遺憾。導致這一遺憾的主要原因並不在Microsoft,而是業界沒有統一的需求設計標準。需求設計有三個範疇:
  • 需求歸納和抽象:產生需求任務、需求序列和需求限制
  • 需求映射:模塊及功能分割、模塊與任務對應
  • 用例展開:產生具體用例
對於系統總體來說,需求設計是細化;對於模塊設計來說,需求設計是抽象;對於開發工作項來說,需求設計是大綱。如果你是一名電影導演,把一個電影文學劇本變成一個分鏡頭劇本的過程就是需求設計。
最常用的需求設計方法 就是石川圖法,俗稱魚骨圖法。一語道破天機,最好的需求設計工具就是思維導圖,也稱爲頭腦風暴。
我見過的最好的思維導圖工具就是Mindjet MindManager。最新的版本是8.0。
數據庫設計工具
有了PDS,就可以進行數據庫設計了。如果你理解的數據庫設計就是建表、建字段、建存貯過程,那你就太草率了,就不能算是合格的設計人員。數據庫設計是基於Entity Ralationship的,除了Table、Column這些主要的數據庫對象外,必須將每一個編碼映射到業務細節。你的設計成果,必須令每一個閱讀者都可以快速地瞭解每一個規則的細節。數據庫設計成果是設計業務層的基礎。聰明的業務設計人員會把一個ER圖置於手邊,隨時查閱。
如果你用MS SQL Server可以直接在SQL Server Management Studio中進行設計,當然,這樣設計的缺陷是直接產生了初始數據庫而不是文檔化的Schema,無法保存複雜的業務信息。在你需要重複利用數據庫設計成果的時候,不得不繞一些彎子,例如,你不得不面對類似ADO.NET EF從數據庫導入模型這樣的困擾。所以,我的建議還是去選擇一個適合自己的數據庫設計工具。
我見過的最好的數據庫設計工具仍然是Power Designer。最新的版本是15.0。對細節的不斷追求,令用戶感受到PD的體貼入微。
當然,ER設計工具的鼻祖ER Studio也是一個非常好的選擇,ER Studio最新的版本是8.0,是最新版本的RAD Studio 2010的標準數據庫設計工具配置。當然,用起來也非常方便,並支持各種UML文檔格式的導入導出。
此外,有很多免費的ER設計工具,都提供了數據庫概念模型與物理模型的可視化設計,並且不限定目標數據庫平臺。
XML設計工具
XML在系統設計中的作用越來越廣。十年來,我所有經歷的項目都無法迴避對XML的需要。適當的XML文檔不僅填補了語言功能的不足,使系統實施時足夠靈活,而且對於處理非扁平數據結構極爲方便。特別是當前的數據庫系統大都支持XML數據處理,廣泛使用XML可以極大地簡化業務邏輯。例如處理業務規則配置(如權限),XML相比Attribute更自由靈活。
可選的XML工具非常多,常用的有三個:Visual Studio本身:Visual Studio本身就有比較強的XML設計功能,但不支持XPath一直以來對我來說都是一個困惑;Altova XMLSpy和Stylus Studio:都是非常專業的XML工具,可惜用起來略顯笨重。以下是我個人對以上三個工具特性的簡單評價。
特性 Visual Studio Stylus Studio Altova XMLSpy
編輯功能 +++ ++ +++
命名空間支持 +++ +++ +-
Schema設計 + ++ ++
智能感知 +++ ++ +++
XPath支持 - +++ ++
XSLT支持 + +++ ++
外觀 +++ ++ ++
當然,不容置疑的是,Visual Studio是最方便的。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章