【正文】
( generalize) ? 與類的泛化關(guān)系相似 ? 用途 ? 先給出一個(gè)概念性的用例,再給出其實(shí)現(xiàn)用例 參與者與用例之間的關(guān)聯(lián)關(guān)系 顧 客開 通 信 用 卡持 卡 消 費(fèi)轉(zhuǎn) 帳顧 客 帳 戶 管 理退 貨信 用 卡 消 費(fèi) 系 統(tǒng)發(fā) 卡 行商 場(chǎng)用例之間的關(guān)系 下訂單 下加急訂單查詢訂單狀態(tài) 用戶合法性檢查檢查密碼檢查指紋 e x t e n d in c l u d e in c l u d e 用例圖的主要用途 ? 分析階段 ? 幫助識(shí)別系統(tǒng)的相關(guān)主體 ? 幫助明確并逐步細(xì)化系統(tǒng)功能需求 ? 是繪制其它圖的出發(fā)點(diǎn) ? 實(shí)現(xiàn)階段 ? 是編制測(cè)試用例的基礎(chǔ) ? 實(shí)施階段 ? 是制定培訓(xùn)、維護(hù)計(jì)劃的依據(jù) 狀態(tài)圖 ( Statechart Diagram) ? 用途與狀態(tài)遷移圖相似,用于描述一個(gè)實(shí)體基于事件反應(yīng)的動(dòng)態(tài)行為,顯示了該實(shí)體如何根據(jù)當(dāng)前狀態(tài)對(duì)不同的事件做出反應(yīng)。 ? 要素 ? 狀態(tài) ? 轉(zhuǎn)移 ? 與 STD的主要不同點(diǎn) ? 以圓角矩形代表狀態(tài) ? 增加兩個(gè)可選的特殊狀態(tài):起始狀態(tài)、終止?fàn)顟B(tài) ? 狀態(tài)內(nèi)增加屬性:進(jìn)入操作、退出操作、內(nèi)部轉(zhuǎn)移 ? 允許在狀態(tài)內(nèi)嵌套子狀態(tài)圖 ? 允許無(wú)觸發(fā)器轉(zhuǎn)移 狀態(tài)及轉(zhuǎn)移的屬性 ? 狀態(tài) ? 名稱 ? 進(jìn)入 /退出操作 ? 內(nèi)部轉(zhuǎn)移 ? 子狀態(tài) ? 順序子狀態(tài) ? 并行子狀態(tài) ? 延遲的事件 ? 轉(zhuǎn)移 ? 源狀態(tài) ? 事件觸發(fā)器 ? 警戒條件 ? 操作 ? 目標(biāo)狀態(tài) 狀態(tài)圖示例 初 始 化 工 作屏 幕 保 護(hù)E n t r y / 保 存 原 屏 幕D o / 隨 機(jī) 更 換 圖 片E x i t / 恢 復(fù) 原 屏 幕關(guān) 機(jī) 中打 開 計(jì) 算 機(jī) 關(guān) 機(jī)設(shè) 定空 閑時(shí) 間到移 動(dòng)鍵 盤或鼠 標(biāo)活動(dòng)圖 ( Activity Diagram) ? 本質(zhì)上為流程圖 ? 要素 ? 狀態(tài) ? 初始狀態(tài) ? 終止?fàn)顟B(tài) ? 動(dòng)作狀態(tài) ? 原子性 ? 不可中斷性 ? 瞬時(shí)性 ? 活動(dòng)狀態(tài) ? 可分解 ? 可中斷 ? 占有有限的時(shí)間 ? 控制流(轉(zhuǎn)換) ? 普通轉(zhuǎn)換 ? 分支 ? 分叉 ? 匯合 ? 對(duì)象流 ? 表示活動(dòng)中輸入或輸出的對(duì)象 ? 泳道 ? 用于將活動(dòng)圖中的活動(dòng)狀態(tài)分組 活動(dòng)圖示例 提 交 建 筑 設(shè) 計(jì) 圖選 址提 出 修 建 計(jì) 劃報(bào) 批采 購(gòu) 原 材 料 建 造結(jié) 束 建 造[獲 得 批 準(zhǔn) ] [未 獲 批 準(zhǔn) ] 倉(cāng) 庫(kù)銷 售顧 客訂 貨處 理 訂 單o : O r d e r發(fā) 貨o : O r d e r收 到 帳 單支 付b : B i l l記 錄簽 收 貨 物結(jié) 束 交 易[ 處 理 中 ][ 已 發(fā) 貨 ][ 未 支 付 ]b : B i l l[ 已 支 付 ]活動(dòng)圖的主要用途 ? 分析階段 ? 輔助進(jìn)行工作流分析 ? 輔助對(duì)系統(tǒng)中主體行為進(jìn)行分析 ? 設(shè)計(jì)階段 ? 設(shè)計(jì)類的依據(jù) ? 最終細(xì)化到程序流程圖 交互圖( Interaction Diagram) ? 與活動(dòng)圖一樣,用于對(duì)系統(tǒng)的動(dòng)態(tài)特性建模 ? 交互圖強(qiáng)調(diào)從對(duì)象到對(duì)象的控制流 ? 活動(dòng)圖強(qiáng)調(diào)從活動(dòng)到活動(dòng)的控制流 ? 由 順序圖 和 協(xié)作圖 共同構(gòu)成 ? 顯示的是一個(gè)交互,由一組對(duì)象和它們之間的關(guān)系組成,包含它們之間可能傳遞的消息 ? 順序圖:強(qiáng)調(diào)時(shí)間順序的交互圖 ? 協(xié)作圖:強(qiáng)調(diào)結(jié)構(gòu)組織的交互圖 ? 兩者在語(yǔ)義上是等價(jià)的 順序圖( Sequence Diagram) ? 要素 ? 對(duì)象:沿 X軸排列 ? 名稱 ? 生命線 ? 控制焦點(diǎn)--可選,用于可視化消息的嵌套或?qū)嶋H計(jì)算發(fā)生時(shí)的時(shí)間 ? 消息:沿 Y軸排列 ? 名稱 ? 參數(shù)(可選) ? 消息的類型 ? 普通消息 ? 調(diào)用 順序圖示例 s : C a l l e r : S w i t c hr : C a l l e rc : C o n v e r s a t i o n設(shè) 置 撥 號(hào) 音摘 機(jī)撥 號(hào)r o u t e C a l l ( s , n )c r e a t e振 鈴摘 機(jī)c o n n e c t ( r , s )c o n n e c t ( s )c o n n e c t ( r )協(xié)作圖( Collaboration Diagram) ? 要素 ? 對(duì)象:名稱 ? 鏈:連接對(duì)象之間的弧 ? 消息 ? 名稱 ? 參數(shù) ? 順序號(hào):以嵌套的形式反映了消息間的先后順序 協(xié)作圖示例 s : C a l l e r: S w i t c h c : C o n v e r s a t i o nr : C a l l e r1: 摘機(jī)2: 設(shè)置撥號(hào)音3: 撥號(hào)3 . 2 : c r e a t e3 . 2 . 3 : c o n n e c t ( r , s )3.1: routeCall(s,n)3.2.1: 振鈴3.2.2: 摘機(jī)3.2.4: connect(s)3.2.5: connect(r)交互圖的主要用途 ? 分析階段 ? 幫助識(shí)別系統(tǒng)的相關(guān)主體 ? 幫助分析業(yè)務(wù)流程 ? 設(shè)計(jì)階段 ? 設(shè)計(jì)類的操作的重要依據(jù) ? 設(shè)計(jì)程序流程的出發(fā)點(diǎn) ? 實(shí)現(xiàn)階段 ? 是編制測(cè)試用例的重要參考 基于 UML的分析設(shè)計(jì)過(guò)程 ? 基本原則 ? 用例驅(qū)動(dòng)的 ? 以體系結(jié)構(gòu)為中心的 ? 迭代的 ? 增量的 ? 一般技巧 ? 每一個(gè)圖中只包含與特定主題相關(guān)的內(nèi)容 ? 使用工具 利用 UML進(jìn)行系統(tǒng)分析的方法 ? 確定 Actor ? 畫出用例圖 ? 畫各種動(dòng)態(tài)視圖(主要是活動(dòng)圖、順序圖及狀態(tài)圖),以進(jìn)一步說(shuō)明各個(gè)用例的詳細(xì)情況 UML支援環(huán)境 ? Rational Rose (IBM) ? 經(jīng)典的可視化建模工具 ? 全面支持 UML 建模標(biāo)準(zhǔn) ? 可以在同一個(gè)模型中實(shí)現(xiàn)業(yè)務(wù)建模、需求建模、應(yīng)用建模和數(shù)據(jù)建模 ? 支持多種語(yǔ)言( C++, Java、 VB 等)的代碼生成及雙向工程 ? 自帶的的模塊測(cè)試工具,可以在設(shè)計(jì)階段就及早對(duì)設(shè)計(jì)模型進(jìn)行測(cè)試 ? Poseidon for UML (Gentleware German) ? Visio2023 (Microsoft) ? PowerDesigner (Sybase) ? Trufun KantPlato (楚凡 China) 演講完畢,謝謝觀看!