【正文】
名 Microsoft Architect 2020 51 邊界類 在應(yīng)用程序以及運(yùn)行環(huán)境建立界面 包括的方法可以處理用戶與應(yīng)用程序內(nèi)某個(gè)商業(yè)流程的交互 主要用于界面窗體以及其他與用戶交互的建模 Boundary class name Boundary class name boundary Microsoft Architect 2020 52 定義邊界類 在使用案例中,每個(gè)腳色至少定義一個(gè)邊界類。 –集合與合成 –概括 –實(shí)現(xiàn) 關(guān)聯(lián)的屬性:描述了類的關(guān)聯(lián)的細(xì)節(jié)。 : Customer : Account 1: Create 2: Validate 參加者 對(duì)象 消息名稱 Link Microsoft Architect 2020 71 協(xié)作圖表的創(chuàng)建 自動(dòng) –從順序圖表自動(dòng)產(chǎn)生協(xié)作圖表 手工 –在使用案例場(chǎng)景中確定對(duì)象 –創(chuàng)建對(duì)象 –定義對(duì)象之間的連接 –定義對(duì)象之間的消息 –定義消息的原型 –定義消息的參數(shù) Microsoft Architect 2020 72 協(xié)作圖表 Microsoft Architect 2020 73 狀態(tài)轉(zhuǎn)變圖表 表示特定對(duì)象的所有可能的狀態(tài)和引起對(duì)象狀態(tài)變化的事件及其條件 . 在面向?qū)ο蟪绦蛟O(shè)計(jì)中 , 狀態(tài)圖表通常用來描述某一對(duì)象類的全部的行為 變化標(biāo)簽 : 事件 [條件 ] / 行動(dòng) 狀態(tài)行為標(biāo)簽 : 做 / 行為 其他關(guān)鍵詞 : –總狀態(tài) superstate , 之后 after, 當(dāng) .. when, 入口 entry, 出口 exit, 自遷移 selftransition, Microsoft Architect 2020 74 狀態(tài)轉(zhuǎn)變圖表 Microsoft Architect 2020 75 行為圖表 描述了行為的順序 , 可以描述復(fù)雜的選擇性的或并行性的行為 是狀態(tài)圖表的一個(gè)變化 類似于流程圖 關(guān)鍵詞 分支 brance,合并 merge,并行分支 fork, 并行合并 join Microsoft Architect 2020 76 行為圖表 P i c k a s h o wS c h e d u l e a s h o wP u b l i c i z e s h o wS e l l t i c k e t sB u y s c r i p t s a n d m u s i cH i r e a r t i s t sr e h e a r s a lD e s i g n l i g h t i n gD e s i g n s e t sM a k e c o s t u m e sD r e s s e d r e h e a r s a lp e r f o r mMicrosoft Architect 2020 77 議程 軟件架構(gòu)與模式 UML: 通用建模語言 – OODA: 面對(duì)對(duì)象的分析與設(shè)計(jì) – UML介紹 –使用案例視圖 –類圖表 –交互圖表與行為圖表 –模塊與組件 組件設(shè)計(jì) Microsoft Architect 2020 78 模塊圖表 o r d e r i n gP r i c i n gs e a tS e l e c t i o nK i o s k S e l e c t i o nC l e r k S e l e c t i o nS e a t D BC r e d i t S e r v i c e s u b s y s t e m T i c k e t i n gA b s t r a c t p a c k a g eT h e r e a r e v a r i a t i o n s o f t h e s e a t s e l e c t i o np a c k a g eMicrosoft Architect 2020 79 模塊圖表 模塊 ,幾個(gè)聯(lián)系緊密的對(duì)象類組成的單元 模塊圖表 Package Diagram 在較高層次上表現(xiàn)對(duì)象類 , 或組成部分間的依賴關(guān)系 . 依賴 –一個(gè)組成部分的變化決定與另一個(gè)組成部分的變化 –消息聯(lián)系 ,數(shù)據(jù)關(guān)系 ,參數(shù) –無傳遞性 Microsoft Architect 2020 80 定義模塊的指南 找到邏輯上有關(guān)聯(lián)的“類” – 例如: 集合或合成關(guān)系 考慮外在的系統(tǒng)接口 檢測(cè)系統(tǒng)構(gòu)造 – 層 – 節(jié)點(diǎn) 決定元件的版面設(shè)計(jì) Microsoft Architect 2020 81 模塊和其體系結(jié)構(gòu) 子系統(tǒng)可以用在項(xiàng)目的早期階段 – 定義高層次應(yīng)用的體系結(jié)構(gòu) – 支持“從上到下”的設(shè)計(jì)方式 系統(tǒng)的系統(tǒng) – 包含多樣化引用的系統(tǒng) – 每一種引用是整個(gè)系統(tǒng)的一個(gè)子系統(tǒng) Microsoft Architect 2020 82 組件 元件 – 物理的、可用二進(jìn)制表示的應(yīng)用程序,其中壓縮了數(shù)據(jù)和資料的 動(dòng)態(tài)鏈接的數(shù)據(jù)庫 (DLL) 可執(zhí)行的 (EXE) – 可運(yùn)行一個(gè)或以上的界面 – 包含一個(gè)或以上的類別 Microsoft Architect 2020 83 組件圖表 Microsoft Architect 2020 84 部署圖表 :描述圖 T i c k e t O f f i c eC r e d i t C a r d C h a r g e M a n a g e r I n t e r f a c eT i c k e t S e l l e r T i c k e t D BK i o s k N o d e 2C u s t o m e r I n t e r f a c e C l e r k I n t e r f a c eC u s t o m e r C l e r k171。171。M a n a g e r171。C r e d i t C a r d A g e n c y E n d 11 E n d 2* E n d 31 E n d 4*Microsoft Architect 2020 85 UML在程序規(guī)范中的應(yīng)用 使用案例圖表忽略了記錄詳細(xì)用戶情景和推斷他們的需要的步驟 行為圖表直觀的表示了流程和功能 類圖表定義了對(duì)象和屬性,以及它們之間的相互關(guān)系 Microsoft Architect 2020 86 議程 軟件架構(gòu)與模式 UML: 通用建模語言 組件設(shè)計(jì)過程 –三種設(shè)計(jì)角度 –概念性設(shè)計(jì) –邏輯性設(shè)計(jì) –物理性設(shè)計(jì) –綜合設(shè)計(jì) Microsoft Architect 2020 87 討論 如何進(jìn)行文檔的組織? –設(shè)計(jì)自己的工作方式 如何形成良好的工作模式? Microsoft Architect 2020 88 FM Stock Microsoft Architect 2020 89 FM Stocks 的結(jié)構(gòu) AccountSummary_Client Form IAccount Internet Information Server and ASP SQL Server ActiveX DLL account Business layer Presentation layer Data layer Microsoft Architect 2020 90 設(shè)計(jì) 將具體的用戶需求轉(zhuǎn)化成具體的編程規(guī)范( programming sepcification) 的過程 Microsoft Architect 2020 91 設(shè)計(jì)的演變 概念性設(shè)計(jì) 邏輯性設(shè)計(jì) 物理性設(shè)計(jì) Microsoft Architect 2020 92 三種設(shè)計(jì)角度 商務(wù)解決方案 概念性 邏輯性 物理性 Microsoft Architect 2020 93 三種設(shè)計(jì)角度 概念性設(shè)計(jì) –從用戶和商務(wù)的角度看問題 , 將問題和解決方案定義場(chǎng)景和使用案例 邏輯性設(shè)計(jì) –從設(shè)計(jì)組的角度看解決方案 , 從使用案例中,發(fā)掘一系列類和服務(wù)極其相互配合的關(guān)系 物理性設(shè)計(jì) –從程序員的角度看解決方案 , 具體定義解決方案的組件,包裝,分布及技術(shù)實(shí)施 Microsoft Architect 2020 94 4+1 視圖模式 使用案例視圖 ( “+1” 視圖 ) – 使用案例模型 邏輯視圖 – 設(shè)計(jì)模型 實(shí)施視圖 – 實(shí)施模型 過程視圖 – 包括在設(shè)計(jì)模型中 分發(fā)視圖 邏輯視圖 實(shí)施 視 圖 分發(fā) 視 圖 過程 視 圖 使用案例 視圖 最終用戶: 功能性 系統(tǒng)工程師: 拓?fù)浣Y(jié)構(gòu)、聯(lián)系 程序員: 軟件開發(fā)管理 綜合: 性能、擴(kuò)展性 Microsoft Architect 2020 95 議程 軟件架構(gòu)與模式 UML: 通用建模語言 組件設(shè)計(jì)過程 –三種設(shè)計(jì)角度 –概念