改進你的實施方法:
在這里我們有一副圖描述了哪些已經被實際構建。但是我對這幅圖有一個疑問:在MVC模式中我們不想讓View直接和Model對話。這種情況往往發生在所寫的代碼直接訪問數據層而沒有通過適當的業務邏輯層(一個很容易犯的低級錯誤)。下面就讓我們通過刪除這一個“箭頭符號”來解決這個問題:

在我們刪除這一“箭頭符號”后,我們可以用鼠標右鍵單擊圖形,然后選擇驗證架構(Validate Architecture):

在這里,Visual Studio將會分析所有的依賴關系,并查找其中任何違背這個層次圖的依賴關系,然后錯誤就會出現在錯誤列表中:

現在,我可以瀏覽并修改我的代碼了,并重復使用驗證架構直到沒有任何錯誤為止。
在構建中執行分層:
這里我有一個清晰的架構和相應的實施方法。我們都知道接下來將發生什么:由于任務被執行、錯誤被修復,該代碼將再次從架構中漂移(drift)。因此我們需要找到一種方法來保持同步。
為了解決這個問題,我們將添加一個新的TFS Build Definition,通過運用Gated Check-in來執行這一架構:

當你運用Gated Check-in的時候,所有你提交到TFS的變化抖必須首先通過全部的常規測試。在這種方法中,如果你存在錯誤,所有的變化將不會被應用,也不會進入構建中。在這種情況下,我們只需要在進程選項卡中多加一個步驟即可。

此時,構建過程將啟動架構驗證步驟,以防止任何違規事件對TFS進行檢查。
總結:
有幾個關鍵的概念需要明確:
如果你正在寫一個全新的代碼,你可以從邏輯設計開始并朝著實現你設計的方向努力。
如果你是從現有的代碼開始,你將發現你已經擁有的東西,也能朝著一個完美的邏輯設計方向努力。
一旦你的物理和邏輯得到同步,你就可以用防止漂移(drift)的自動方法(如gated check-in)來實現你的設計。
文章來源于領測軟件測試網 http://www.kjueaiud.com/