類圖、時序圖、狀態(tài)圖-ATM系統(tǒng)[稻谷書屋]_第1頁
類圖、時序圖、狀態(tài)圖-ATM系統(tǒng)[稻谷書屋]_第2頁
類圖、時序圖、狀態(tài)圖-ATM系統(tǒng)[稻谷書屋]_第3頁
類圖、時序圖、狀態(tài)圖-ATM系統(tǒng)[稻谷書屋]_第4頁
類圖、時序圖、狀態(tài)圖-ATM系統(tǒng)[稻谷書屋]_第5頁
已閱讀5頁,還剩50頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、第10章 面向?qū)ο蠓治?10.1 面向?qū)ο蠓治龅幕具^程 10.2 需求陳述 10.3 建立對象模型 10.4 建立動態(tài)模型 10.5 建立功能模型 10.6 定義服務(wù) 10.7 小結(jié) 1知識材料 10.1 面向?qū)ο蠓治龅幕具^程 面向?qū)ο蠓治雒嫦驅(qū)ο蠓治?抽取和整理用戶需求并建立問題域精確模型的過程. 理解-用戶、分析員和領(lǐng)域?qū)<?表達(dá)-需求規(guī)格說明書(對象模型、動態(tài)模型、功能模型) 驗證-二義性,完善性 對象模型最基本、最重要、最核心。 2知識材料 10.1 面向?qū)ο蠓治龅幕具^程 3個子模型個子模型 對所解決問題的描述角度進(jìn)行劃分: 靜態(tài)結(jié)構(gòu)(對象模型) 3個子模型 交互次序(動態(tài)模型)

2、 數(shù)據(jù)變換(功能模型) 解決問題不同,三個子模型的重要程度也不同。 3知識材料 10.1 面向?qū)ο蠓治龅幕具^程 5個層次個層次 復(fù)雜問題的對象模型的5個層次 五個層次像是對象模型的五個層次像是對象模型的5張水平切片,張水平切片, 一層比一層顯示出對象模型的更多細(xì)節(jié)。一層比一層顯示出對象模型的更多細(xì)節(jié)。 主題指讀者理解大型、主題指讀者理解大型、 復(fù)雜模型的一種機(jī)制復(fù)雜模型的一種機(jī)制 (記憶的(記憶的7+27+2原則)原則) 4知識材料 面向?qū)ο蠓治龅倪^程 尋找類與對象 識別結(jié)構(gòu) 識別主題 定義屬性 建立動態(tài)模型 建立功能模型 定義服務(wù) 10.1 面向?qū)ο蠓治龅幕具^程 5知識材料 10.2 需

3、求陳述 需求陳述是闡明“做什么”,而不是“怎樣做” 問題范圍 功能需求 性能需求 應(yīng)用環(huán)境 假設(shè)條件 6知識材料 ATM機(jī)系統(tǒng)問題描述機(jī)系統(tǒng)問題描述 銀行網(wǎng)絡(luò)中包含柜員和 ATM,ATM 被共享中心所分享。 每家銀行利用自己的計算機(jī)維護(hù)自己的賬戶并處理賬戶 所屬的交易,這些交易包括存款和取款。 某些銀行擁有自己的柜員站,柜員站直接和該銀行的計 算機(jī)通信,柜員鍵入賬戶數(shù)據(jù)和交易數(shù)據(jù)。 ATM 和中心計算機(jī)通信,中心計算機(jī)再和銀行清賬。 ATM 接受金融卡,要求用戶做些操作后和中心計算機(jī) 通信,執(zhí)行交易給予現(xiàn)金和打印收據(jù)。 系統(tǒng)要求保留交易記錄和嚴(yán)守安全規(guī)定。 能同時存取客戶的相同賬戶。 10.2

4、 需求陳述 7知識材料 自動取款機(jī)(ATM)系統(tǒng) ATM系統(tǒng) 10.2 需求陳述 8知識材料 10.3 建立對象模型 建立對象模型典型的步驟: 確定對象類和關(guān)聯(lián),對于大型復(fù)雜問題還要 進(jìn)一步劃分出若干個主題; 給類和關(guān)聯(lián)增添屬性,以進(jìn)一步描述它們; 利用適當(dāng)?shù)睦^承關(guān)系進(jìn)一步合并和組織類。 9知識材料 10.3 建立對象模型 10.3.1 找出候選類與對象 1.找出候選的類與對象 尋找以下五類客觀事物尋找以下五類客觀事物 可感知的物理實體 人或組織的角色 應(yīng)該記憶的事件 兩個或多個對象的相互作用,通常具有交易 或接觸的性質(zhì) 需要說明的概念 10知識材料 10.3 建立對象模型 10.3.1找出候

5、選類與對象 1.找出候選的類與對象(續(xù)) 名詞解析法 從陳述中找出所有名詞,作為類和對象的初步候選者從陳述中找出所有名詞,作為類和對象的初步候選者 銀行,自動取款機(jī)(ATM),系統(tǒng),中央計算機(jī), 分行計算機(jī),柜員終端,網(wǎng)絡(luò),總行,分行,軟件, 成本,市,街道,營業(yè)廳,儲蓄所,柜員,儲戶, 現(xiàn)金,支票,賬戶,事物,現(xiàn)金兌換卡,余額, 磁卡,分行代碼,卡號,用戶,副本,信息,密碼, 類型,取款額,賬單,訪問。 通信鏈路通信鏈路 事務(wù)日志事務(wù)日志 11知識材料 10.3 建立對象模型 10.3.1找出候選類與對象 2.篩選出正確的類與對象 篩選時主要依據(jù)下列標(biāo)準(zhǔn),刪除不正確或不必要的類篩選時主要依據(jù)

6、下列標(biāo)準(zhǔn),刪除不正確或不必要的類 與對象與對象 (1)冗余 (2)無關(guān) (3)籠統(tǒng) (4)屬性 (5)操作 (6)實現(xiàn) 銀行,自動取款機(jī)(ATM),系統(tǒng),中央計算機(jī) 分行計算機(jī),柜員終端,網(wǎng)絡(luò),總行,分行,軟件,成 本,市,街道,營業(yè)廳,儲蓄所,柜員,儲戶, 現(xiàn)金, 支票,賬戶,事物,現(xiàn)金兌換卡,余額,磁卡,分行代 碼,卡號,用戶,副本,信息,密碼,類型,取款額, 賬單,訪問。 通信鏈路通信鏈路 事務(wù)日志事務(wù)日志 (儲戶、用戶;現(xiàn)金兌換卡、磁卡和副本) (成本、市、街道、營業(yè)廳和儲蓄所) (銀行、訪問、信息、網(wǎng)絡(luò)、系統(tǒng)、軟件等) (現(xiàn)金、支票、取款額、賬單、余額、分行代碼、 卡號、密碼、類型)

7、 (事務(wù)日志、通信鏈路) 12知識材料 10.3 建立對象模型 10.3.1找出候選類與對象 2.篩選出正確的類與對象 ATM、中央計算機(jī)、分行計算機(jī)、柜員終 端、總行、分行、柜員、儲戶、賬戶、事務(wù)、現(xiàn) 金兌換卡 13知識材料 10.3 建立對象模型 10.3.2 確定關(guān)聯(lián) 1.初步確定關(guān)聯(lián) 需求陳述中使用的描述性動詞或動詞詞組,通 常表示關(guān)聯(lián)關(guān)系。 直接提取動詞短語得出關(guān)聯(lián) 需求陳述中隱含的關(guān)聯(lián) 根據(jù)問題域知識得出的關(guān)聯(lián) 2.篩選(根據(jù)下述標(biāo)準(zhǔn)刪除候選關(guān)聯(lián)) 已刪去的類之間的關(guān)聯(lián) 與問題無關(guān)的或在實現(xiàn)階段考慮的關(guān)聯(lián) 瞬時事件 三元關(guān)聯(lián) 派生關(guān)聯(lián) 14知識材料 直接提取動詞短語得出的關(guān)聯(lián)直接提

8、取動詞短語得出的關(guān)聯(lián) ATM、中央計算機(jī)、分行計算機(jī)及柜員終端組成網(wǎng)絡(luò)。 總行擁有多臺ATM。 ATM設(shè)在主要街道上。 分行提供分行計算機(jī)和柜員終端。 柜員終端設(shè)在分行營業(yè)廳及儲蓄所內(nèi)。 分行分?jǐn)傑浖_發(fā)成本。 儲戶擁有賬戶。 分行計算機(jī)處理針對賬戶的事務(wù)。 分行計算機(jī)維護(hù)賬戶。 柜員終端與分行計算機(jī)通信。 柜員輸入針對賬戶的事務(wù)。 ATM與中央計算機(jī)交換關(guān)于事務(wù)的信息。 中央計算機(jī)確定事務(wù)與分行的對應(yīng)關(guān)系。 ATM讀現(xiàn)金兌換卡。 ATM與用戶交互。 ATM吐出現(xiàn)金。 ATM打印賬單。 系統(tǒng)處理并發(fā)的訪問。 隱含的關(guān)聯(lián)隱含的關(guān)聯(lián) 總行由各個分行組成。 分行保管賬戶。 總行擁有中央計算機(jī)。 系統(tǒng)

9、維護(hù)事務(wù)日志。 系統(tǒng)提供必要的安全性。 儲戶擁有現(xiàn)金兌換卡。 中央計算機(jī)與分行通信 根據(jù)問題域知識得出的關(guān)聯(lián)根據(jù)問題域知識得出的關(guān)聯(lián) 現(xiàn)金兌換卡訪問賬戶。 分行雇用柜員。 15知識材料 10.3 建立對象模型 10.3.2 確定關(guān)聯(lián) 3.進(jìn)一步完善 正名、分解、補(bǔ)充、標(biāo)明重數(shù) ATMATM系統(tǒng)原始的類圖 系統(tǒng)原始的類圖 16知識材料 10.3 建立對象模型 10.3.3 劃分主題 在概念上把系統(tǒng)包含的內(nèi)容分解成若干個范疇 應(yīng)該按問題領(lǐng)域而不是用功能分解的方法來確定主題 不同主題內(nèi)的對象相互間依賴和交互最少的原則 總行(總行和中央計算機(jī)) ATM系統(tǒng) 分行(分行、分行計算機(jī)、柜員終端、柜員 事務(wù)

10、、柜員和賬戶等) ATM(ATM、遠(yuǎn)程事務(wù)、現(xiàn)金兌換卡和儲 戶) 17知識材料 10.3 建立對象模型 10.3.4 確定屬性 屬性是對象的性質(zhì)或特征 注意在分析階段不要用屬性來表示對象間的關(guān) 系,使用關(guān)聯(lián)能夠表示兩個對象間的任何關(guān)系, 而且把關(guān)系表示得更清晰、更醒目。 確定屬性的過程包括分析和選擇兩個步驟。 18知識材料 10.3 建立對象模型 10.3.4 確定屬性 選擇 在需求陳述中一般用名詞詞組表示屬性 需藉助于領(lǐng)域知識和常識才能分析得出屬性 屬性對問題域的基本結(jié)構(gòu)影響很小 屬性的確定與問題域和目標(biāo)系統(tǒng)的任務(wù)有關(guān)。 不要考慮那些超出所要解決的問題范圍的屬性。 先找最重要的屬性,再逐漸把

11、其余屬性增添進(jìn)去。分 析階段不考慮那些純粹用于實現(xiàn)的屬性。 19知識材料 10.3 建立對象模型 10.3.4 確定屬性 分析 (1) 誤把對象當(dāng)作屬性 同一個實體在不同應(yīng)用領(lǐng)域中,到底應(yīng)該作為對象還是屬性,需要具體 分析才能確定。 例如,儲戶/賬戶. (2) 誤把關(guān)聯(lián)類的屬性當(dāng)作對象的屬性 如果某個性質(zhì)依賴于某個關(guān)聯(lián)鏈的存在,則該性質(zhì)是關(guān)聯(lián)類的屬性,不 應(yīng)該把它作為一般對象的屬性。 例如,帶寬是體現(xiàn)關(guān)聯(lián)的屬性而不是ATM的 20知識材料 10.3 建立對象模型 10.3.4 確定屬性 分析 (3) 把限定誤當(dāng)成屬性 正確使用限定詞往往可以減少關(guān)聯(lián)的重數(shù)。如果把某個屬性值固定下來 以后能減少關(guān)

12、聯(lián)的重數(shù),則應(yīng)該考慮把這個屬性重新表述成一個限定 詞。 在ATM系統(tǒng)的例子中,“分行代碼”、“賬號”、“雇員號”、“站號” 等都是限定詞。 (4) 誤把內(nèi)部狀態(tài)當(dāng)成了屬性 如果某個性質(zhì)是對象的非公開的內(nèi)部狀態(tài),則應(yīng)該從對象模型中刪掉這 個屬性。 21知識材料 10.3 建立對象模型 10.3.4 確定屬性 分析 (5) 過于細(xì)化 在分析階段應(yīng)該忽略那些對大多數(shù)操作都沒有影響的屬性。 (6) 存在不一致的屬性 類應(yīng)該是簡單而且一致的。如果得出一些看起來與其他屬 性毫不相關(guān)的屬性,則應(yīng)該考慮把該類分解成兩個不同 的類。 e.g. 輪,帆; 22知識材料 經(jīng)過篩選之后,得到ATM系統(tǒng)中各個類的屬性,

13、如圖所示。 10.3 建立對象模型 23知識材料 建立類間的繼承是為了共享其公共性質(zhì)/屬性。 繼承也對類按層次加以組織。 繼承關(guān)系反映出一定深度的領(lǐng)域知識,需領(lǐng) 域?qū)<颐芮信浜喜拍芡瓿伞?繼承前人的成果是提高效率的重要方法,也 是復(fù)用的基礎(chǔ)。 10.3.5 識別繼承關(guān)系識別繼承關(guān)系 24知識材料 兩種建立繼承(即泛化)關(guān)系的方式: (1) 自底向上: 抽象出現(xiàn)有類的共同性質(zhì)泛化 出父類,這個過程實質(zhì)上模擬了人類歸納思維 過程。 例如,在ATM系統(tǒng)中,“遠(yuǎn)程事務(wù)”和“柜員 事務(wù)”是類似的,可以泛化出父類“事務(wù)”; 類似地,從“ATM”和“柜員終端”泛化出父類 “輸入站”。 (2) 自頂向下: 把

14、現(xiàn)有類細(xì)化成更具體的子類 或從已知類派生出一個新類,這模擬了人類的 演繹思維過程:從一般到特殊。 帶有形容詞修飾的名詞詞組往往暗示了一些具 體類。分析階段應(yīng)該避免過度細(xì)化。 25知識材料 增加了繼承關(guān)系之后的ATM對象模型 26知識材料 一次建模過程很難得到完全正確的對象模型。 有些細(xì)化工作(例如,定義服務(wù))是在建立了動態(tài) 模型和功能模型之后才進(jìn)行的。 由于面向?qū)ο蟮母拍詈头栐谡麄€開發(fā)過程中都 是一致的,因此遠(yuǎn)比使用結(jié)構(gòu)分析、設(shè)計技術(shù)更 容易實現(xiàn)反復(fù)修改、逐步完善的過程。 建模的步驟并不一定按照前面講述的次序進(jìn)行。 它給初學(xué)者提供了一個指南。 下面以ATM系統(tǒng)為例,討論可能做的修改: 10.

15、3.6 反復(fù)修改 27知識材料 1. 分解“現(xiàn)金兌換卡”類 “現(xiàn)金兌換卡”有兩個相對獨(dú)立的功能,它 既是鑒別儲戶及使用ATM的權(quán)限的卡,又是 ATM獲得分行代碼和卡號等數(shù)據(jù)的數(shù)據(jù)載體。 因此,把“現(xiàn)金兌換卡”類分解為“卡權(quán)限” 和“現(xiàn)金兌換卡”兩個類,將使每個類的功 能更單一:前一個類標(biāo)志儲戶訪問賬戶的權(quán) 限,后一個類是含有分行代碼和卡號的數(shù)據(jù) 載體。 多張現(xiàn)金兌換卡可能對應(yīng)著相同的訪問權(quán)限。 28知識材料 2. “事務(wù)”由“更新”組成 一個事務(wù)可包含對賬戶的若干次更新。更新指 的是對賬戶所做的一個動作(取款、存款或查 詢)?!案隆?有自己的屬性(類型、金額等), 應(yīng)該獨(dú)立存在,因此應(yīng)該把它

16、作為類。 3. 把“分行”與“分行計算機(jī)”合并 區(qū)分“分行”與“分行計算機(jī)”,對于分析這 個系統(tǒng)來說,并沒有多大意義,為簡單起見, 把它們合并。類似地,應(yīng)該合并“總行”和 “中央計算機(jī)”。 下圖給出了修改后的ATM對象模型,與修改前 比較起來,它更簡單、更清晰。29知識材料 修正: 總行/分行的通信, 儲戶輸入事務(wù)(ATM) ATM讀卡 擁有/通信 修改后的ATM對象模 型 30知識材料 對于僅存儲靜態(tài)數(shù)據(jù)的系統(tǒng)(例如數(shù)據(jù)庫)來說, 動態(tài)模型并沒有什么意義。 但是若開發(fā)交互式系統(tǒng)交互式系統(tǒng)時,動態(tài)模型卻起著很重 要的作用。 例如: 收集輸入信息是目標(biāo)系統(tǒng)的主要工作 10.4 建立動態(tài)模型的方法

17、 31知識材料 建立動態(tài)模型的三步: 1) 編寫典型交互行為的腳本, 不遺漏常見的 交互行為。 2)從腳本中提取出事件,確定觸發(fā)每個事件 的動作對象以及接受事件的目標(biāo)對象。 3)排列事件發(fā)生的次序,確定每個對象可能 有的狀態(tài)及狀態(tài)間的轉(zhuǎn)換關(guān)系,并用狀態(tài)圖 描繪它們。 最后,比較各個對象的狀態(tài)圖,檢查它們之 間的一致性,確保事件之間的匹配。 32知識材料 腳本: 是指系統(tǒng)在某一執(zhí)行期間內(nèi)出現(xiàn)的一系列事件。 腳本功能: 描述用戶(或其他外部設(shè)備)與目標(biāo)系統(tǒng)之間的一個 或多個典型的交互過程。 編寫腳本的目的: 是保證不遺漏重要的交互步驟,有助于確保 整個交互過程的正確性的和清晰性。 編寫腳本內(nèi)容:

18、描寫既可以包括系統(tǒng)中發(fā)生的全部事件,也可 以只包括由某些特定對象觸發(fā)的事件。 對于每個事件,都應(yīng)該指明觸發(fā)該事件的動作對象(系統(tǒng)、用 戶或其他事物)、接受事件的目標(biāo)對象以及該事件的參數(shù)。 編寫步驟: 編寫正常情況的腳本。 考慮特殊情況,例如輸入或輸出的數(shù)據(jù)為最大值(或最小值)。 考慮出錯情況,例如,輸入的值為非法值或響應(yīng)失敗。 10.4.1 編寫腳本編寫腳本 33知識材料 A T M 系 統(tǒng) 正 常 和和 異 常 腳 本 34知識材料 交互行為可以分為應(yīng)用邏輯和用戶界面兩部 分。 不同界面(例如,命令行或圖形用戶界面), 可以實現(xiàn)同樣的應(yīng)用邏輯。應(yīng)用邏輯是內(nèi)在的、 本質(zhì)的內(nèi)容,用戶界面是外在的

19、表現(xiàn)形式。 動態(tài)模型著重表示應(yīng)用系統(tǒng)的控制邏輯。 分析階段不能忽略用戶界面。應(yīng)確定界面的 輪廓. 可以考慮其他方式, 如語音. 目的是確保能夠 完成全部必要的信息交換。 10.4.2 設(shè)想用戶界面 35知識材料 事件跟蹤圖有助于畫狀態(tài)圖。 它把事件序列以及事件與對象的關(guān)系,形象、 清晰地表示出來。事件跟蹤圖實質(zhì)上是擴(kuò)充的 腳本,是簡化的UML順序圖。 在事件跟蹤圖中,一條豎線代表一個對象, 每個事件用一條水平的箭頭線表示,箭頭方向 從事件的發(fā)送對象指向接受對象。時間從上向 下遞增。 下圖是ATM系統(tǒng)正常情況下的事件跟蹤圖。 10.4.3 畫事件跟蹤圖 36知識材料 如何確定事件 通過分析腳本,

20、可從中提取出所有外部事件。 事件包括系統(tǒng)與用戶交互的所有信號、輸入、輸出、 中斷、動作等等。 例如,儲戶插入現(xiàn)金兌換卡。 不能遺漏了異常事件和出錯。 某些事件可以按類組合在一起。 例如,“吐出現(xiàn)金”是一個事件類,吐出的具體的現(xiàn)金數(shù) 額用參數(shù)/屬性值表達(dá)。 區(qū)分出每類事件的發(fā)送對象和接受對象。 37知識材料 ATM系統(tǒng)正常情況下的事件跟蹤圖 時間 對象 事件/消息 38知識材料 順序圖(Sequence Diagram) 順序圖也稱為序列圖,它按時間順序顯示 對象之間的交互。 39知識材料 一張狀態(tài)圖描繪一類對象的行為,它確定了 由事件序列引出的狀態(tài)序列。 從一張事件跟蹤圖出發(fā)畫狀態(tài)圖時,僅考慮

21、 影響對象的一類事件。 兩個事件之間的間隔就是一個狀態(tài)(也可能不 變)。 從豎線射出的箭頭線,常是對象達(dá)到某個狀 態(tài)時所做的行為(也常是引起另一類對象狀態(tài)轉(zhuǎn) 換的事件)。 要把從不同腳本或事件跟蹤圖得到的同一類 的狀態(tài)圖合并。 10.4.4 畫狀態(tài)圖 40知識材料 考慮完正常事件之后再考慮邊界情況和特殊情 況. 如,用戶要求取消該當(dāng)前事務(wù), “超時”, 停電/機(jī)。 不能省略對用戶出錯情況的處理。 一張覆蓋了腳本中某類對象的全部事件的狀態(tài) 圖仍可能會一些遺漏的情況。 設(shè)想各種可能出現(xiàn)的情況,多問幾個“如果, 則”的問題是一種測試完整性的方法. 盡量給每個狀態(tài)取個有意義的名字。 10.4.4 畫狀

22、態(tài)圖 41知識材料 以ATM系統(tǒng)為例: “ATM”、“柜員終端”、“總行”和“分行”都 是主動對象,它們相互發(fā)送事件; “現(xiàn)金兌換卡”、“事務(wù)”和“賬戶”是被動對 象,并不發(fā)送事件。 “儲戶”和“柜員”雖然也是動作對象,但是, 它們都是系統(tǒng)外部的因素,無須在系統(tǒng)內(nèi)實現(xiàn)它 們。 42知識材料 ATM的狀態(tài)圖 43知識材料 圖10.10 總行類的狀態(tài)圖 44知識材料 各個類的狀態(tài)圖通過共享事件聯(lián)系(合并) 起來,構(gòu)成了系統(tǒng)的動態(tài)模型。 應(yīng)該檢查系統(tǒng)級的完整性和一致性。 對于沒有前驅(qū)或沒有后繼的狀態(tài)應(yīng)該著重 審查,如果這個狀態(tài)既不是交互序列的起點 也不是終點,則發(fā)現(xiàn)了一個錯誤。 10.4.5 審查動

23、態(tài)模型 45知識材料 應(yīng)該審查每個事件,跟蹤它對系統(tǒng)中各個 對象所產(chǎn)生的效果,以保證它們與每個腳本 都匹配。 例: ATM系統(tǒng) 在總行類的狀態(tài)圖中,事件“無效代碼”, 是由總 行發(fā)出的,但是在ATM類的狀態(tài)圖中并沒有一個狀 態(tài)接受這個事件。因此,在ATM類的狀態(tài)圖中應(yīng)該 再補(bǔ)充一個狀態(tài)“do/顯示分行代碼錯信息”,它 接受由前驅(qū)狀態(tài)“do/驗證賬戶”發(fā)出的事件“無 效代碼”,它的后續(xù)狀態(tài)是“退卡”。 10.4.5 審查動態(tài)模型 46知識材料 10.5 建立功能模型 功能模型功能模型 含義 功能模型描述的是系統(tǒng)內(nèi)值的變化,以及通過值 的變化表現(xiàn)出來的系統(tǒng)功能、映射、約束、功能 依賴的條件。 內(nèi)容

24、 確定輸入值和輸出值 畫出數(shù)據(jù)流圖 (DFD) 以表示功能之間的依賴關(guān)系 描述各功能 確定約束 詳細(xì)說明優(yōu)化標(biāo)準(zhǔn) 47知識材料 功能模型功能模型 (續(xù)續(xù)) 基本概念和圖形表示 處理 數(shù)據(jù)流 數(shù)據(jù)流的克隆 vs. 數(shù)據(jù)流的分離 數(shù)據(jù)存儲 數(shù)據(jù)存儲是被動對象 數(shù)據(jù)存儲不產(chǎn)生操作 動作者 動作者是主動對象 動作者位于數(shù)據(jù)流的源點或終點 (即終止符) 動作者產(chǎn)生的操作不包括在 DFD 中而應(yīng)屬于動態(tài)模型 10.5 建立功能模型 48知識材料 功能模型功能模型 (續(xù)續(xù)) 功能模型、對象模型、動態(tài)模型等之間的關(guān)系功能模型、對象模型、動態(tài)模型等之間的關(guān)系 就功能模型而言,對象模型表示了功能模型中的動 作者、

25、數(shù)據(jù)流、數(shù)據(jù)存儲的結(jié)構(gòu);動態(tài)模型則表示 了功能模型中處理的執(zhí)行次序。 就對象模型而言,功能模型表示了類上的操作和每 個操作的變量,因而也表示了類之間的客戶/服務(wù)器 關(guān)系;動態(tài)模型則表示了每個對象的狀態(tài)和當(dāng)對象 接收事件時/當(dāng)對象改變狀態(tài)時所 執(zhí)行的操作。 就動態(tài)模型而言,功能模型表示了動態(tài)模型中未定 義的動作和活動的定義;對象模型則表示了是什么 改變了狀態(tài)/是什么接收了操作。 49知識材料 在確定類中應(yīng)有的服務(wù)時,既要考慮該類實體 的常規(guī)行為,又要考慮在本系統(tǒng)中特殊需要的 服務(wù)。 1. 常規(guī)行為 在分析階段可以認(rèn)為,類中定義的每個屬性都 是可以訪問的,也就是說,假設(shè)在每個類中都 定義了讀、寫該類每個屬性的操作。但是,通 常無需在類圖中顯式表示這些常規(guī)操作。 10.6 定義服務(wù) 50知識材料 2. 從事件導(dǎo)出的操作 狀態(tài)圖中對象接收消息,因此該對象必

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論