面向?qū)ο蠓治?/font>
OMT(對象建模技術(shù))
OMT方法的OOA模型包括對象模型、動態(tài)模型和功能模型
1、對象模型:是對客觀世界實體模擬的對象及對象彼此之間的關(guān)系的映射,描述了系統(tǒng)的靜態(tài)結(jié)構(gòu)。通常用類圖表示
2、動態(tài)模型:規(guī)定對象模型中的對象的合法變化序列。通常用狀態(tài)圖表示。
3、功能模型:指明系統(tǒng)應(yīng)該做什么。更直接地反映了用戶對目標系統(tǒng)的需求。用數(shù)據(jù)流圖表示。
功能模型指明應(yīng)該做什么,動態(tài)模型明確了什么時候做,對象模型定義做事情的實體。
建立對象模型
對象模型通常由五個層次組成:類及對象層、結(jié)構(gòu)層、主題層、屬性層、服務(wù)層
1、確定類與對象:類與對象是在問題域中客觀存在的,系統(tǒng)分析的重要任務(wù)之一就是找出這些類與對象。
2、確定結(jié)構(gòu)與關(guān)聯(lián):即確定對象(或類)之間的關(guān)系,關(guān)系可分為一般-特殊結(jié)構(gòu)、整體-部分結(jié)構(gòu)、實例關(guān)聯(lián)、消息關(guān)聯(lián)
3、劃分主題:為了降低復(fù)雜程度,需要把系統(tǒng)劃分成幾個不同的主題。應(yīng)該按問題域而不是用功能分解方法來確定主題。
4、定義屬性
5、定義服務(wù)
建立動態(tài)模型
1、編寫典型交互行為的腳本,確保不遺漏交互行為
2、從腳本中提取事件,確定觸發(fā)每個事件的動作對象及接受事件的目標對象
3、排列事件發(fā)生的次序,用狀態(tài)圖描繪每個對象可能的狀態(tài)及狀態(tài)間的轉(zhuǎn)換關(guān)系。
4、比較各個對象的狀態(tài)圖,檢查它們之間的一致性,確保事件之間的匹配。
建立功能模型
使用數(shù)據(jù)流圖建立系統(tǒng)功能模型
UML統(tǒng)一建模語言
整個分析階段通常包括兩個任務(wù):建立一個反映問題域靜態(tài)關(guān)系的概念模型,使用類圖表示。建立一個反應(yīng)系統(tǒng)行為的動態(tài)模型,用用例圖來表示。
建立域模型
問題域是指一個包含現(xiàn)實世界事物與概念的領(lǐng)域,這些事物和概念與所設(shè)計的系統(tǒng)要解決的問題有關(guān),建立域模型又稱為問題域建模或域建模,就是找到代表事物與概念的“對象”
1、尋找類:名詞動詞法,閱讀需求文檔,找出名詞和名詞短語,從中提取對象與屬性
2、確定類之間的關(guān)聯(lián):依賴關(guān)系、泛化關(guān)系、實現(xiàn)關(guān)系、關(guān)聯(lián)關(guān)系
3、為類添加職責:添加屬性和方法
4、把握好域模型的詳細度:
建立用例模型
1、用例的定義:用例實例是在系統(tǒng)中執(zhí)行的一系列動作,這些動作將生成特定參與者可見的價值結(jié)果,一個用例定義一組用例實例。
2、用例模型如何產(chǎn)生:采用現(xiàn)有的需求捕獲技術(shù)從客戶、原有系統(tǒng)、文檔中找到需求,然后進行整理、提煉,從而建立用例模型
3、識別參與者:參與者是同系統(tǒng)交互的所有事物,不僅可以由人承擔,還可以是其他系統(tǒng)、硬件設(shè)備等。參與者一定在系統(tǒng)之外,不是系統(tǒng)的一部分。
4、合并需求獲得用例:將參與者找到之后,仔細檢查參與者,為每一個參與者確定用例。
5、繪制成用例圖:將識別到的參與者及生成的用例通過用例圖的形式整理出來,獲得用例模型的框架
6、細化用例描述:用例描述包括:用例名稱、簡要說明、事件流、非功能要求、前置條件、后置條件、擴展點、優(yōu)先級