結構化和模型化方案

若要在開發專案中有效使用模型,小組成員必須能夠同時處理專案各組成部分的模型。 本主題建議一種計劃,用於將應用程式分成各組成部分並對應至整個圖層圖表的圖層。

若要快速開始專案或子專案,請使用依循您所選之專案結構的專案範本,這樣會很有幫助。 本主題會描述如何建立並使用這種範本。

本主題假設您處理的專案其規模大到需要多個小組成員,或許包含多個小組。 專案的程式碼和模型會儲存在原始檔控制系統,例如 Team Foundation Server。 至少某些小組成員會使用 Visual Studio Ultimate 來開發模型, 其他小組成員則可使用其他 Visual Studio版本檢視模型 。

方案結構

在中型或大型專案中,小組架構是以應用程式架構為基礎。 每個小組會使用 Visual Studio 方案。

若要將應用程式分成各圖層

  1. 以應用程式架構 (例如 Web 應用程式、服務應用程式或桌面應用程式) 做為您方案架構的基礎。 各種通用架構在 Microsoft 應用程式架構指南的應用程式原型章節 (英文) 中有加以討論。

  2. 建立 Visual Studio 方案,我們將稱為「架構」方案。 此方案將用來建立系統的整體設計。 其中只包含模型,不包含程式碼。

    將圖層圖表加入到此方案。 在圖層圖表上,繪製您為應用程式所選的架構。 例如,圖表可能會顯示這些圖層以及圖層間的相依性:展示、商務和資料。

    您可以使用 [架構] 功能表中的 [新增圖表] 命令,同時建立圖層圖表和新 Visual Studio 方案。

  3. 在「架構」模型中,加入代表重要商務概念的 UML 圖表,以及在所有圖層的設計中所參考的使用案例。

  4. 為「架構」圖層圖表中的每個圖層分別建立 Visual Studio 方案。

    這些方案將用來開發圖層的程式碼。

  5. 建立 UML 模型,這些 UML 模型將代表圖層的設計和所有圖層通用的概念。 排列模型,讓所有模型可從「架構」方案中看到,而從每個圖層中則可以看到相關的模型。

    您可以使用下列其中一個程序來完成此項作業。 第一個程序會分別為每個圖層建立模型專案,而第二個則會建立單一模型專案讓圖層共用。

    若要使用每個圖層各自的模型專案

    1. 在每個圖層方案中建立模型專案。

      此模型將包含會描述該圖層之需求和設計的 UML 圖表。 其中也可包含會顯示巢狀圖層的圖層圖表。

      現在您的每個圖層都有模型,應用程式架構也有模型。 每個模型內含在自己的方案中。 這樣小組成員即可同時處理這些圖層。

    2. 在「架構」方案中,加入每個圖層方案的模型專案。 若要進行此作業,請開啟「架構」方案。 在 [方案總管] 中,以滑鼠右鍵按一下方案節點、指向 [加入],然後按一下 [現有專案]。 巡覽至圖層方案中的模型專案 (.modelproj)。

      每個模型現在都可在兩個方案中看到:它「所屬」的方案和「架構」方案。

    3. 在每個圖層的模型專案中,加入圖層圖表。 先加入「架構」圖層圖表的複本。 您可以刪除不是圖層圖表之相依性的組成部分。

      您也可以加入代表此圖層詳細結構的圖層圖表。

      這些圖表用來驗證在此圖層開發的程式碼。

    4. 在「架構」方案中,使用 Visual Studio Ultimate 編輯所有圖層的需求和設計模型。

      在每個圖層方案中,開發該圖層的程式碼 (代表模型)。 如果您可以不使用同一部電腦來開發程式碼以更新模型,則可使用 Visual Studio Premium 讀取模型並開發程式碼。 您也可以從 Visual Studio Premium 中的模型產生程式碼。

    這個方法可保證當開發人員同時編輯圖層模型時,不會出現任何干擾情況。

    然而,因為模型是各自存在,所以很難參考通用概念。 每個模型對它相依之其他圖層和架構的項目,必須擁有一份自己的複本。 每個圖層中的圖層圖表必須與「架構」圖層圖表維持同步。 當這些項目變更時很難維持同步,儘管您可以開發工具來達成此目標。

    若要使用每個圖層各自的封裝

    1. 在每個圖層的方案中,加入「架構」模型專案。 在 [方案總管] 中,以滑鼠右鍵按一下方案節點、指向 [加入],然後按一下 [現有專案]。 這個單一模型專案現在可從每個方案存取:「架構」專案和每個圖層的開發專案。

    2. 在共用的 UML 模型中,為每個圖層建立封裝:在 [方案總管] 中,選取模型專案。 在 [UML 模型總管] 中,以滑鼠右鍵按一下模型根節點,指向 [加入],然後按一下 [封裝]。

      每個封裝將包含會描述所對應圖層之需求和設計的 UML 圖表。

    3. 如有必要,請加入每個圖層內部結構的本機圖層圖表。

    這個方法可讓每個圖層的設計項目直接參考該圖層相依之其他圖層的設計項目和通用架構。

    雖然並行處理不同的封裝會導致一些衝突,但是因為封裝各自儲存在不同檔案中,所以很容易管理。 主要的難題是刪除從獨立封裝參考的項目後所產生的影響。 如需詳細資訊,請參閱在版本控制下管理模型與圖形

建立架構範本

實際上,您不會同時建立所有 Visual Studio 方案,而是在專案進行時加入。 針對未來的專案,您可能使用相同的方案結構。 為協助您快速建立新方案,您可以建立方案或專案範本。 您可以擷取 Visual Studio Integration Extension (VSIX) 中的範本,如此有助於散發並安裝到其他電腦。

例如,如果您常常會使用具有展示層、商務層和資料層的方案,則可設定會建立具有此結構之新方案的範本。

若要建立方案範本

  1. 下載並安裝匯出範本精靈,如果您尚未執行此作業的話。

  2. 建立您未來開始新專案時要使用的方案結構。

  3. 在 [檔案] 功能表上,按一下 [將範本匯出為 VSIX]。 [將範本匯出為 VSIX 精靈] 隨即開啟。

  4. 遵循精靈中的指示,選取要加入到範本的專案,輸入範本的名稱和說明,然後指定輸出位置。

注意事項注意事項

本主題內容擷取自<Visual Studio 2010 架構工具指南>並加以改寫,此指南由 Visual Studio ALM Rangers 撰寫,為最有價值專家 (MVP)、Microsoft Services、及 Visual Studio 產品小組和作者共同努力的成果。按一下這裡下載完整的指南套件 (英文)。

相關內容

組織和管理您的模型 - 由 Clint Edmondson 錄製。

Visual Studio 架構工具指南 - 在小組管理模型的進階指引

請參閱

參考

在版本控制下管理模型與圖形

概念

在開發程序中使用模型