Visual Studio 2010 Ultimate中MSF過程模型設(shè)計
在Visual Studio Team System 2008中,沒有提供創(chuàng)建UML架構(gòu)圖的支持,而在Visual Studio 2010中提供了很實用的一些UML圖設(shè)計。這些圖表向我們提供了解決方案和基礎(chǔ)實施架構(gòu)的高級設(shè)計(沒有提供部署圖設(shè)計元素的支持)。
傳統(tǒng)的微軟解決方案框架(Microsoft Solution Framework ,MSF)包含構(gòu)思和規(guī)劃階段。雖然一些設(shè)計圖在構(gòu)思階段創(chuàng)建,完成發(fā)生在規(guī)劃階段,規(guī)劃階段進一步分為三種過程,這些過程是:
◆概念設(shè)計(Conceptual Design)
◆邏輯設(shè)計(Logical Design)
◆物理設(shè)計(Physical Design)
在Visual Studio 2010中,提供對敏捷(Scrum、XP等)過程模型周期迭代開發(fā)的支持(周期過程)。微軟MSF軟件過程基礎(chǔ)模型框架如圖1所示。
①概念設(shè)計(Conceptual Design):這是一個過程,需要從業(yè)務(wù)和用戶角度收集業(yè)務(wù)信息、當(dāng)前的應(yīng)用環(huán)境等信息,并利用這些信息獲取、分析業(yè)務(wù)和用戶的需求,驗證和優(yōu)化解決方案。要包含系統(tǒng)當(dāng)前和未來使用場景的描述,目標(biāo)是使用戶和項目組在系統(tǒng)完成后所具有的功能和使用方式達成共識。它是收集、分析和確定優(yōu)先順序的過程,需要用“需求文檔(Requirement Document)”和“用例(Use Case)”圖,這些進程是系統(tǒng)內(nèi)的業(yè)務(wù)流程。
我們可以用“活動圖”的工作流程模式。概念設(shè)計將列出所有用戶角色將與系統(tǒng)和系統(tǒng)的總體結(jié)構(gòu)進行交互。在系統(tǒng)未來狀態(tài)下(物理功能列表),通過體系結(jié)構(gòu)的定義將包含邏輯層,我們可以在Visual Studio Team System中使用所提供“層圖”的表現(xiàn)模型。我們可以在VSTS 2010中使用所提供“層圖”的表現(xiàn)模型。
用例圖(Use Case Diagram)需求可以進行建模,并使用“用例”圖來表示。用例圖工具箱(Toolbox),可以使用建模角色、用例、子系統(tǒng)和注釋等,能夠建立它們之間的關(guān)系。這些關(guān)系可以是以下類型:關(guān)聯(lián)、依賴、包含、泛化和擴展。Visual Studio Team System 2010中用例圖的最佳功能之一是可以與workitems關(guān)聯(lián)元素,如圖2所示。
使用這些元素,可以創(chuàng)建用例圖鏈接。創(chuàng)建新workitems連接現(xiàn)有的和查看所有有關(guān)聯(lián)或者一個元素的workitems。所有模型元素是可以用“UML模型管理器(UML Model Explorer)”瀏覽的,如圖3所示。
活動圖(Activity Diagrams):活動圖表可以反饋流程大部分的細節(jié),提供了一個串行的流程順序,顯示了正在執(zhí)行的業(yè)務(wù)流程,而用例提供了概括的范圍。組成元素包括活動、合并節(jié)點、分支節(jié)點等元素,其中最重要的是初始和最終節(jié)點。所有節(jié)點之間加入這些連接器,可用于創(chuàng)建活動圖的元素?;顒訄D創(chuàng)建顯示了早期用例的活動流程,如圖4所示。
層圖(Layer Diagram):是在概念設(shè)計過程中的基線層圖。層的模型元素提供類似的抽象分組及其他層內(nèi)容的功能。例如,元素所提供的用戶界面分為表示層要素的組合,而實現(xiàn)業(yè)務(wù)邏輯、規(guī)則和約束的為商務(wù)邏輯層分組。依賴關(guān)系有時可以是雙向的。Visual Studio Team System 2010提供整體解決方案執(zhí)行層模式,提供了三層解決方案:表示層(Presentation)、業(yè)務(wù)邏輯層(Business Logic)、數(shù)據(jù)訪問層(Data Access)和MVC(模型,視圖,控制器)模式。層圖表現(xiàn)解決方案架構(gòu)如圖5所示。 #p#
②邏輯設(shè)計(Logical Design):是在概念設(shè)計的基礎(chǔ)上,從業(yè)務(wù)邏輯和當(dāng)前用戶應(yīng)用環(huán)境中抽象出系統(tǒng)對象的組成結(jié)構(gòu)、流程和各個部分的相互關(guān)系,另外還要設(shè)計數(shù)據(jù)庫的邏輯結(jié)構(gòu)和界面的邏輯關(guān)系。邏輯設(shè)計是將用戶業(yè)務(wù)語言轉(zhuǎn)化為項目組語言的關(guān)鍵。其中,對象只是抽象的系統(tǒng)對象,而不是物理實現(xiàn)中采用的類、組件、模塊和頁面。
邏輯設(shè)計的目標(biāo)是:定義系統(tǒng)的各個組成部分;描述各個部分的結(jié)構(gòu);描述各個部分的相互關(guān)系及它們?nèi)绾螀f(xié)調(diào)與合作;項目組成員對解決方案的共識;產(chǎn)生物理設(shè)計的基礎(chǔ)。
在整個過程中,定義建模將形成解決方案,這些行為將影響邏輯實體的結(jié)構(gòu)。創(chuàng)建邏輯設(shè)計的過程如下:確定業(yè)務(wù)對象;確定對這些業(yè)務(wù)對象提供服務(wù),后續(xù)將作為類方法模擬這些服務(wù);確定業(yè)務(wù)對象的屬性,屬性保留數(shù)據(jù),將作為領(lǐng)域和屬性建模;根據(jù)基礎(chǔ)業(yè)務(wù)流程,在概念設(shè)計過程中,確定與其他業(yè)務(wù)對象的行為。業(yè)務(wù)對象的行為以實現(xiàn)特定的業(yè)務(wù)流程,使用順序圖建模。
類圖(Class Diagram):提供關(guān)于該系統(tǒng)的行為,可創(chuàng)建元素的結(jié)構(gòu)。在邏輯圖中可以創(chuàng)建模型類,接口、枚舉、包和它們之間的關(guān)系。這些關(guān)系類型可以是合作、繼承、依賴和包含。接口可以顯示全部細節(jié),類和接口將具有的屬性和操作。如果我們共注一個接口類,然后添加成員的接口,那么這些成員將自動顯示在實現(xiàn)類中。類圖組成元素結(jié)構(gòu)如圖6所示。
順序圖(Sequence Diagrams):順序圖的模型是建立在類的行為建模上,表明該方法在不同類的實例調(diào)用其他類的實例,并可以同步顯示及用異步方法調(diào)用和反饋,通常按照時間有序的方式表達,如圖7所示。如上圖所示,順序圖顯示了模仿一些類的行為。垂直線代表某一類或接口是該類的實例,所描繪的消息表示在有序的方式調(diào)用它們之間的相互作用的情況。
③物理設(shè)計(Physical Design):是在邏輯設(shè)計的基礎(chǔ)上,從系統(tǒng)的邏輯對象、數(shù)據(jù)實體和界面邏輯關(guān)系中進一步整理和細化得到的設(shè)計方案。它將確定系統(tǒng)采用的技術(shù)方案和平臺,并明確實際開發(fā)的組件、數(shù)據(jù)庫表、窗口及頁面等。詳細設(shè)計是把現(xiàn)實的技術(shù)應(yīng)用到邏輯模型上,并考慮到實現(xiàn)的可能性和最終系統(tǒng)的性能。物理設(shè)計最終結(jié)果包含組件定義、特定平臺上的用戶界面設(shè)計,以及數(shù)據(jù)庫的設(shè)計,Visual Studio Team System 2010中并沒有提供明確的工具,它提供組件圖來表示。
組件圖(Component Diagram):它可以顯示不同的類、接口、頁面和可執(zhí)行文件等打包成可調(diào)用的組件。組件可以暴露接口,也可以代表其他站點部署的多個組件、類庫和網(wǎng)頁等,容器組件可以委托接口實現(xiàn)這些內(nèi)部組件,如圖7所示。
如圖8所示,擴展組件ITester接口是用戶的測試組件ITester的接口。測試組件和單元測試的內(nèi)部組件實現(xiàn)了ITester接口,這樣的測試組件任務(wù)代表ITester接口測試的組成部分。同樣的單元測試組件實現(xiàn)IUnitTest接口,這進一步代表組成的IUnitTest的任務(wù)單元測試組件。
【編輯推薦】