




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、第第1010章章 面向?qū)ο蠓治雒嫦驅(qū)ο蠓治?0.1 10.1 面向?qū)ο蠓治龅幕具^程面向?qū)ο蠓治龅幕具^程10.2 10.2 需求陳述需求陳述10.3 10.3 建立對象模型建立對象模型10.4 10.4 建立動態(tài)模型建立動態(tài)模型10.5 10.5 建立功能模型建立功能模型10.6 10.6 定義服務(wù)定義服務(wù) 分析工作主要包括分析工作主要包括3 3項內(nèi)容項內(nèi)容v理解理解: :系統(tǒng)分析員通過用戶及領(lǐng)域?qū)<业某浞窒到y(tǒng)分析員通過用戶及領(lǐng)域?qū)<业某浞纸涣?,力求完全理解用戶需求和該?yīng)用領(lǐng)域交流,力求完全理解用戶需求和該應(yīng)用領(lǐng)域中的關(guān)鍵性背景知識中的關(guān)鍵性背景知識v表達表達: :用某種無二義性的方式把這種
2、理解表達用某種無二義性的方式把這種理解表達成文檔資料,分析過程得出的最重要的文檔成文檔資料,分析過程得出的最重要的文檔資料是軟件需求規(guī)格說明資料是軟件需求規(guī)格說明( (主要由對象模型、主要由對象模型、動態(tài)模型和功能模型組成動態(tài)模型和功能模型組成) )。v驗證驗證: :驗證軟件需求規(guī)格說明的正確性、完整驗證軟件需求規(guī)格說明的正確性、完整性和有效性,如果發(fā)現(xiàn)了問題則進行修正。性和有效性,如果發(fā)現(xiàn)了問題則進行修正。 10.110.1面向?qū)ο蠓治龅幕具^程面向?qū)ο蠓治龅幕具^程10.1.2 310.1.2 3個子模型、個子模型、5 5個層次、個層次、 5 5項主要活動項主要活動v3 3個模型個模型:
3、:靜態(tài)結(jié)構(gòu)(對象模型)靜態(tài)結(jié)構(gòu)(對象模型)交互次序(動態(tài)模型)交互次序(動態(tài)模型)數(shù)據(jù)變換(功能模型)數(shù)據(jù)變換(功能模型)v5 5個層次:個層次: 主題層主題層類與對象層類與對象層結(jié)構(gòu)層結(jié)構(gòu)層屬性層屬性層服務(wù)層服務(wù)層 5 5項主要活動:項主要活動:找出類與對象找出類與對象識別結(jié)構(gòu)識別結(jié)構(gòu)識別主題識別主題定義屬性定義屬性定義服務(wù)定義服務(wù)v面向?qū)ο蠓治龃篌w上按照下列順序進行:面向?qū)ο蠓治龃篌w上按照下列順序進行:尋找類與對象尋找類與對象識別結(jié)構(gòu)識別結(jié)構(gòu)識別主題識別主題定義屬性定義屬性建立動態(tài)模型建立動態(tài)模型建立功能模型建立功能模型定義服務(wù)定義服務(wù)10.2.1 10.2.1 書寫要點書寫要點v需求陳述
4、的內(nèi)容包括:問題范圍,功能需求,需求陳述的內(nèi)容包括:問題范圍,功能需求,性能需求,應(yīng)用環(huán)境及假設(shè)條件等。性能需求,應(yīng)用環(huán)境及假設(shè)條件等。v書寫需求陳述時,要盡力做到語法正確,而書寫需求陳述時,要盡力做到語法正確,而且應(yīng)該慎重選用名詞、動詞、形容詞和同義且應(yīng)該慎重選用名詞、動詞、形容詞和同義詞。詞。v需求陳述可簡可繁。需求陳述可簡可繁。 v絕大多數(shù)需求陳述都是有二義性的、不完整絕大多數(shù)需求陳述都是有二義性的、不完整的、甚至不一致的。的、甚至不一致的。 10.2 10.2 需求陳述需求陳述 10.2.2 10.2.2 例子:自動取款機(例子:自動取款機(ATMATM)系統(tǒng),是)系統(tǒng),是本書講述面向
5、對象分析和面向?qū)ο笤O(shè)計時使本書講述面向?qū)ο蠓治龊兔嫦驅(qū)ο笤O(shè)計時使用的一個實例。用的一個實例。 某銀行擬開發(fā)一個自動取款機系統(tǒng),它是一個由自某銀行擬開發(fā)一個自動取款機系統(tǒng),它是一個由自動取款機、中央計算機、分行計算機及柜員終端組成的動取款機、中央計算機、分行計算機及柜員終端組成的網(wǎng)絡(luò)系統(tǒng)。網(wǎng)絡(luò)系統(tǒng)。ATMATM和中央計算機由總行投資購買。總行擁有和中央計算機由總行投資購買。總行擁有多臺多臺ATMATM,分別設(shè)在全市各主要街道上。分行負責(zé)提供分,分別設(shè)在全市各主要街道上。分行負責(zé)提供分行計算機和柜員終端。柜員終端設(shè)在分行營業(yè)廳及分行行計算機和柜員終端。柜員終端設(shè)在分行營業(yè)廳及分行下屬的各個儲蓄所內(nèi)
6、。該系統(tǒng)的軟件開發(fā)成本由各個分下屬的各個儲蓄所內(nèi)。該系統(tǒng)的軟件開發(fā)成本由各個分行分攤。行分攤。 某銀行柜員使用柜員終端處理儲戶提交的儲蓄事務(wù)某銀行柜員使用柜員終端處理儲戶提交的儲蓄事務(wù)。儲戶可以用現(xiàn)金或支票向自己擁有的某個帳戶內(nèi)存款。儲戶可以用現(xiàn)金或支票向自己擁有的某個帳戶內(nèi)存款或開新帳戶。儲戶也可以從自己的帳戶中取款。通常,或開新帳戶。儲戶也可以從自己的帳戶中取款。通常,一個儲戶可能擁有多個帳戶。柜員負責(zé)把儲戶提交的存一個儲戶可能擁有多個帳戶。柜員負責(zé)把儲戶提交的存款或取款事務(wù)輸進柜員終端,接收儲戶交來的現(xiàn)金和支款或取款事務(wù)輸進柜員終端,接收儲戶交來的現(xiàn)金和支票,或付給儲戶現(xiàn)金。柜員終端與相
7、應(yīng)的分行計算機通票,或付給儲戶現(xiàn)金。柜員終端與相應(yīng)的分行計算機通信,分行計算機具體處理針對某個帳戶的事務(wù),并且維信,分行計算機具體處理針對某個帳戶的事務(wù),并且維護帳戶。護帳戶。 擁有銀行帳戶的儲戶有權(quán)申請領(lǐng)取現(xiàn)金擁有銀行帳戶的儲戶有權(quán)申請領(lǐng)取現(xiàn)金兌換卡。使用現(xiàn)金兌換卡可以通過兌換卡。使用現(xiàn)金兌換卡可以通過ATMATM訪問自己的帳戶訪問自己的帳戶。目前僅限于用現(xiàn)金兌換卡在。目前僅限于用現(xiàn)金兌換卡在ATMATM上提取現(xiàn)金(即取款上提取現(xiàn)金(即取款),或查詢有關(guān)自己帳戶的信息(例如,某個指定帳戶),或查詢有關(guān)自己帳戶的信息(例如,某個指定帳戶的余額)。將來可能還要求使用的余額)。將來可能還要求使用A
8、TMATM辦理轉(zhuǎn)帳、存款等辦理轉(zhuǎn)帳、存款等事務(wù)。事務(wù)。 所謂現(xiàn)金兌換卡就是一張?zhí)刂频拇趴?,上面有分行所謂現(xiàn)金兌換卡就是一張?zhí)刂频拇趴?,上面有分行代碼和卡號。分行代碼唯一標(biāo)識總行下屬的一個分行,代碼和卡號。分行代碼唯一標(biāo)識總行下屬的一個分行,卡號確定了這張卡可以訪問哪些帳戶。通常,一張卡可卡號確定了這張卡可以訪問哪些帳戶。通常,一張卡可以訪問儲戶的若干帳戶,但是并不一定能訪問這個儲戶以訪問儲戶的若干帳戶,但是并不一定能訪問這個儲戶的全部帳戶。每張現(xiàn)金兌換卡僅屬于一個儲戶所有,但的全部帳戶。每張現(xiàn)金兌換卡僅屬于一個儲戶所有,但是,同一張卡可能有多個副本,因此,必須考慮同時在是,同一張卡可能有多個副
9、本,因此,必須考慮同時在若干臺若干臺ATMATM上使用同樣的現(xiàn)金兌換卡的可能性。也就是上使用同樣的現(xiàn)金兌換卡的可能性。也就是說,系統(tǒng)應(yīng)該能夠處理并發(fā)的訪問。說,系統(tǒng)應(yīng)該能夠處理并發(fā)的訪問。 當(dāng)用戶把現(xiàn)金兌換卡插入當(dāng)用戶把現(xiàn)金兌換卡插入ATMATM后,后,ATMATM就與用戶就與用戶交互,以獲取有關(guān)這次事務(wù)的信息,并與中央計算交互,以獲取有關(guān)這次事務(wù)的信息,并與中央計算機交換關(guān)于事務(wù)的信息。首先,機交換關(guān)于事務(wù)的信息。首先,ATMATM要求用戶輸入密要求用戶輸入密碼,接下來,碼,接下來,ATMATM把從這張卡上讀到的信息以及用戶把從這張卡上讀到的信息以及用戶輸入的密碼傳給中央計算機,請求中央計算
10、機核對輸入的密碼傳給中央計算機,請求中央計算機核對這些信息并處理這次事務(wù)。中央計算機根據(jù)卡上的這些信息并處理這次事務(wù)。中央計算機根據(jù)卡上的分行代碼確定這次事務(wù)與分行的對應(yīng)關(guān)系,并且委分行代碼確定這次事務(wù)與分行的對應(yīng)關(guān)系,并且委托相應(yīng)的分行計算機驗證用戶密碼。如果用戶輸入托相應(yīng)的分行計算機驗證用戶密碼。如果用戶輸入的密碼是正確的,的密碼是正確的,ATMATM就要求用戶選擇事務(wù)類型(取就要求用戶選擇事務(wù)類型(取款、查詢等)。當(dāng)用戶選擇取款時,款、查詢等)。當(dāng)用戶選擇取款時,ATMATM請求用戶輸請求用戶輸入取款額。最后,入取款額。最后,ATMATM從現(xiàn)金出口吐出現(xiàn)金,并且打從現(xiàn)金出口吐出現(xiàn)金,并且
11、打印出帳單交給用戶。印出帳單交給用戶。10.3 10.3 建立對象模型建立對象模型 10.3.1 10.3.1 確定類與對象確定類與對象1.1.找出候選的類與對象找出候選的類與對象 對象是對問題域中有意義的事物的對象是對問題域中有意義的事物的抽象,它們既可能是物理實體,也可能抽象,它們既可能是物理實體,也可能是抽象概念。具體地說,大多數(shù)客觀事是抽象概念。具體地說,大多數(shù)客觀事物可分為下述物可分為下述5 5類。類。v可感知的物理實體,例如,飛機、汽可感知的物理實體,例如,飛機、汽車、書、房屋等等。車、書、房屋等等。v人或組織的角色,例如,醫(yī)生、教師、人或組織的角色,例如,醫(yī)生、教師、雇主、雇員、
12、計算機系、財務(wù)處等等。雇主、雇員、計算機系、財務(wù)處等等。v應(yīng)該記憶的時間,例如,飛行、演出、應(yīng)該記憶的時間,例如,飛行、演出、訪問、交通事故等等。訪問、交通事故等等。v兩個或多個對象的相互作用,通常具兩個或多個對象的相互作用,通常具有交易或接觸的性質(zhì),例如,購買、有交易或接觸的性質(zhì),例如,購買、納稅、結(jié)婚等等。納稅、結(jié)婚等等。v需要說明的概念,例如,政策、版權(quán)需要說明的概念,例如,政策、版權(quán)法等等。法等等。 以自然語言書寫的需求陳述為依據(jù),把以自然語言書寫的需求陳述為依據(jù),把陳述中的名詞作為類與對象的候選者陳述中的名詞作為類與對象的候選者 形容詞作為確定屬性的線索形容詞作為確定屬性的線索 動詞
13、作為服務(wù)(操作)的候選者動詞作為服務(wù)(操作)的候選者 某某銀行擬開發(fā)一個銀行擬開發(fā)一個(2)(2)自動取款機自動取款機(3)(3)系統(tǒng),它系統(tǒng),它是一個由自動取款機、是一個由自動取款機、(4)(4)中央計算機、中央計算機、(5)(5)分行計算分行計算機及機及(6)(6)柜員終端組成的柜員終端組成的(7)(7)網(wǎng)絡(luò)系統(tǒng)。網(wǎng)絡(luò)系統(tǒng)。ATMATM和中央計和中央計算機由算機由(8)(8)總行投資購買。總行擁有多臺總行投資購買。總行擁有多臺ATMATM,分別,分別設(shè)在全設(shè)在全(9)(9)市各主要市各主要(10)(10)街道上。街道上。(11)(11)分行負責(zé)提供分分行負責(zé)提供分行計算機和柜員終端。柜員終
14、端設(shè)在分行行計算機和柜員終端。柜員終端設(shè)在分行(12)(12)營業(yè)廳營業(yè)廳及分行下屬的各個及分行下屬的各個(13)(13)儲蓄所內(nèi)。該系統(tǒng)的儲蓄所內(nèi)。該系統(tǒng)的(14)(14)軟件軟件開發(fā)開發(fā)(15)(15)成本由各個分行分攤。成本由各個分行分攤。 某銀行某銀行(16)(16)柜員使用柜員終端處理柜員使用柜員終端處理(17)(17)儲戶提交儲戶提交的儲蓄的儲蓄(18)(18)事務(wù)。儲戶可以用事務(wù)。儲戶可以用(19)(19)現(xiàn)金或現(xiàn)金或(20)(20)支票向自支票向自己擁有的某個己擁有的某個(21)(21)帳戶內(nèi)存款或開新帳戶。儲戶也可帳戶內(nèi)存款或開新帳戶。儲戶也可以從自己的帳戶中取款。通常,一個
15、儲戶可能擁有以從自己的帳戶中取款。通常,一個儲戶可能擁有多個帳戶。柜員負責(zé)把儲戶提交的存款或取款事務(wù)多個帳戶。柜員負責(zé)把儲戶提交的存款或取款事務(wù)輸進柜員終端,接收儲戶交來的現(xiàn)金和支票,或付輸進柜員終端,接收儲戶交來的現(xiàn)金和支票,或付給儲戶現(xiàn)金。柜員終端與相應(yīng)的分行計算機通信,給儲戶現(xiàn)金。柜員終端與相應(yīng)的分行計算機通信,分行計算機具體處理針對某個帳戶的事務(wù),并且維分行計算機具體處理針對某個帳戶的事務(wù),并且維護帳戶。護帳戶。 擁有銀行帳戶的儲戶有權(quán)申請領(lǐng)取擁有銀行帳戶的儲戶有權(quán)申請領(lǐng)取(22)(22)現(xiàn)金兌換現(xiàn)金兌換卡。使用現(xiàn)金兌換卡可以通過卡。使用現(xiàn)金兌換卡可以通過ATMATM訪問自己的帳戶。訪
16、問自己的帳戶。目前僅限于用現(xiàn)金兌換卡在目前僅限于用現(xiàn)金兌換卡在ATMATM上提取現(xiàn)金(即取上提取現(xiàn)金(即取款),或查詢有關(guān)自己帳戶的信息(例如,某個指款),或查詢有關(guān)自己帳戶的信息(例如,某個指定帳戶的定帳戶的(23)(23)余額)。將來可能還要求使用余額)。將來可能還要求使用ATMATM辦理辦理轉(zhuǎn)帳、存款等事務(wù)。轉(zhuǎn)帳、存款等事務(wù)。 所謂現(xiàn)金兌換卡就是一張?zhí)刂频乃^現(xiàn)金兌換卡就是一張?zhí)刂频?24)(24)磁卡,上面磁卡,上面有有(25)(25)分行代碼和分行代碼和(26)(26)卡號。分行代碼唯一標(biāo)識總行卡號。分行代碼唯一標(biāo)識總行下屬的一個分行,卡號確定了這張卡可以訪問哪些下屬的一個分行,卡號
17、確定了這張卡可以訪問哪些帳戶。通常,一張卡可以訪問儲戶的若干帳戶,但帳戶。通常,一張卡可以訪問儲戶的若干帳戶,但是并不一定能訪問這個儲戶的全部帳戶。每張現(xiàn)金是并不一定能訪問這個儲戶的全部帳戶。每張現(xiàn)金兌換卡僅屬于一個儲戶所有,但是,同一張卡可能兌換卡僅屬于一個儲戶所有,但是,同一張卡可能有多個有多個(27)(27)副本,因此,必須考慮同時在若干臺副本,因此,必須考慮同時在若干臺ATMATM上使用同樣的現(xiàn)金兌換卡的可能性。也就是說,系上使用同樣的現(xiàn)金兌換卡的可能性。也就是說,系統(tǒng)應(yīng)該能夠處理并發(fā)的統(tǒng)應(yīng)該能夠處理并發(fā)的(28)(28)訪問。訪問。 當(dāng)當(dāng)(29)(29)用戶把現(xiàn)金兌換卡插入用戶把現(xiàn)金
18、兌換卡插入ATMATM后,后,ATMATM就與用就與用戶交互,以獲取有關(guān)這次事務(wù)的戶交互,以獲取有關(guān)這次事務(wù)的(30)(30)信息,并與中央信息,并與中央計算機交換關(guān)于事務(wù)的信息。首先,計算機交換關(guān)于事務(wù)的信息。首先,ATMATM要求用戶輸要求用戶輸入入(31)(31)密碼,接下來,密碼,接下來,ATMATM把從這張卡上讀到的信息以把從這張卡上讀到的信息以及用戶輸入的密碼傳給中央計算機,請求中央計算機及用戶輸入的密碼傳給中央計算機,請求中央計算機核對這些信息并處理這次事務(wù)。中央計算機根據(jù)卡上核對這些信息并處理這次事務(wù)。中央計算機根據(jù)卡上的分行代碼確定這次事務(wù)與分行的對應(yīng)關(guān)系,并且委的分行代碼確
19、定這次事務(wù)與分行的對應(yīng)關(guān)系,并且委托相應(yīng)的分行計算機驗證用戶密碼。如果用戶輸入的托相應(yīng)的分行計算機驗證用戶密碼。如果用戶輸入的密碼是正確的,密碼是正確的,ATMATM就要求用戶選擇事務(wù)就要求用戶選擇事務(wù)(32)(32)類型(取類型(取款、查詢等)。當(dāng)用戶選擇取款時,款、查詢等)。當(dāng)用戶選擇取款時,ATMATM請求用戶輸請求用戶輸入入(33)(33)取款額。最后,取款額。最后,ATMATM從現(xiàn)金出口吐出現(xiàn)金,并且從現(xiàn)金出口吐出現(xiàn)金,并且打印出打印出(34)(34)帳單交給用戶。帳單交給用戶。銀行銀行 自動取款機(自動取款機(ATMATM) 系統(tǒng)系統(tǒng) 中央計算機中央計算機 分行計算機分行計算機 柜
20、員終端柜員終端 網(wǎng)絡(luò)網(wǎng)絡(luò) 總行總行 市市 街道街道 分行分行 營業(yè)廳營業(yè)廳 儲蓄所儲蓄所 軟件軟件 成本成本柜員柜員 儲戶儲戶 事務(wù)事務(wù)現(xiàn)金現(xiàn)金 支票支票 帳戶帳戶現(xiàn)金兌換卡現(xiàn)金兌換卡 余額余額 磁卡磁卡分行代碼分行代碼 卡號卡號 副本副本訪問訪問 用戶用戶 信息信息密碼密碼 類型類型 取款額取款額帳單帳單 冗余冗余無關(guān)無關(guān)籠統(tǒng)籠統(tǒng)屬性屬性ATM ATM 中央計算機中央計算機 分行計算機分行計算機柜員終端柜員終端 總行總行 分行分行柜員柜員 儲戶儲戶 帳戶帳戶現(xiàn)金兌換卡現(xiàn)金兌換卡 事務(wù)事務(wù) ( (柜員、遠程柜員、遠程) )10.3.2 10.3.2 確定關(guān)聯(lián)確定關(guān)聯(lián)1.1.初步確定關(guān)聯(lián)初步確定
21、關(guān)聯(lián)v在初步確定關(guān)聯(lián)時,可以通過直接提取在初步確定關(guān)聯(lián)時,可以通過直接提取需求陳述中的動詞詞組而得出。需求陳述中的動詞詞組而得出。v通過分析需求陳述,還能發(fā)現(xiàn)一些在陳通過分析需求陳述,還能發(fā)現(xiàn)一些在陳述中隱含的關(guān)聯(lián)。述中隱含的關(guān)聯(lián)。v分析員還應(yīng)該與用戶及領(lǐng)域?qū)<矣懻搯柗治鰡T還應(yīng)該與用戶及領(lǐng)域?qū)<矣懻搯栴}域?qū)嶓w間的相互依賴、相互作用的關(guān)題域?qū)嶓w間的相互依賴、相互作用的關(guān)系,根據(jù)領(lǐng)域知識再進一步補充一些關(guān)系,根據(jù)領(lǐng)域知識再進一步補充一些關(guān)聯(lián)。聯(lián)。 某銀行擬開發(fā)一個自動取款機系統(tǒng),它是一個由某銀行擬開發(fā)一個自動取款機系統(tǒng),它是一個由(1)(1)自動取款機、中央計算機、分行計算機及柜員終端自動取款機、
22、中央計算機、分行計算機及柜員終端組成組成的網(wǎng)絡(luò)系統(tǒng)。的網(wǎng)絡(luò)系統(tǒng)。ATMATM和中央計算機由總行投資購買。和中央計算機由總行投資購買。 (2)(2)總行擁有多臺總行擁有多臺ATMATM,(3)(3)分別分別設(shè)設(shè)在全市各主要街道上。在全市各主要街道上。 (4)(4)分行負責(zé)提供分行計算機和柜員終端。分行負責(zé)提供分行計算機和柜員終端。(5)(5)柜員終端柜員終端設(shè)設(shè)在分行營業(yè)廳及分行下屬的各個儲蓄所內(nèi)。該系統(tǒng)在分行營業(yè)廳及分行下屬的各個儲蓄所內(nèi)。該系統(tǒng)的的(6)(6)軟件開發(fā)成本由各個分行軟件開發(fā)成本由各個分行分攤分攤。 (7)(7)某銀行柜員某銀行柜員使用使用柜員終端處理儲戶提交的儲蓄事務(wù)柜員終端
23、處理儲戶提交的儲蓄事務(wù)。儲戶可以用現(xiàn)金或支票向自己擁有的某個帳戶內(nèi)存。儲戶可以用現(xiàn)金或支票向自己擁有的某個帳戶內(nèi)存款或開新帳戶。儲戶也可以從自己的帳戶中取款。通款或開新帳戶。儲戶也可以從自己的帳戶中取款。通常,常,(8)(8)一個儲戶可能一個儲戶可能擁有擁有多個帳戶。柜員負責(zé)把儲戶多個帳戶。柜員負責(zé)把儲戶提交的存款或取款事務(wù)輸進柜員終端,接收儲戶交來提交的存款或取款事務(wù)輸進柜員終端,接收儲戶交來的現(xiàn)金和支票,或付給儲戶現(xiàn)金。的現(xiàn)金和支票,或付給儲戶現(xiàn)金。(9)(9)柜員終端與相應(yīng)柜員終端與相應(yīng)的分行計算機通信,的分行計算機通信,(10)(10)分行計算機具體處理針對某個分行計算機具體處理針對某
24、個帳戶的事務(wù),帳戶的事務(wù),(11)(11)并且維護帳戶。并且維護帳戶。 擁有銀行帳戶的儲戶有權(quán)申請領(lǐng)取現(xiàn)金兌換卡。擁有銀行帳戶的儲戶有權(quán)申請領(lǐng)取現(xiàn)金兌換卡。使用現(xiàn)金兌換卡可以通過使用現(xiàn)金兌換卡可以通過ATMATM訪問自己的帳戶。目前僅訪問自己的帳戶。目前僅限于用現(xiàn)金兌換卡在限于用現(xiàn)金兌換卡在ATMATM上提取現(xiàn)金(即取款),或查上提取現(xiàn)金(即取款),或查詢有關(guān)自己帳戶的信息(例如,某個指定帳戶的余額詢有關(guān)自己帳戶的信息(例如,某個指定帳戶的余額)。將來可能還要求使用)。將來可能還要求使用ATMATM辦理轉(zhuǎn)帳、存款等事務(wù)。辦理轉(zhuǎn)帳、存款等事務(wù)。 所謂現(xiàn)金兌換卡就是一張?zhí)刂频拇趴ǎ厦嬗蟹炙^現(xiàn)金
25、兌換卡就是一張?zhí)刂频拇趴?,上面有分行代碼和卡號。分行代碼唯一標(biāo)識總行下屬的一個分行代碼和卡號。分行代碼唯一標(biāo)識總行下屬的一個分行,卡號確定了這張卡可以訪問哪些帳戶。通常,一行,卡號確定了這張卡可以訪問哪些帳戶。通常,一張卡可以訪問儲戶的若干帳戶,但是并不一定能訪問張卡可以訪問儲戶的若干帳戶,但是并不一定能訪問這個儲戶的全部帳戶。每張現(xiàn)金兌換卡僅屬于一個儲這個儲戶的全部帳戶。每張現(xiàn)金兌換卡僅屬于一個儲戶所有,但是,同一張卡可能有多個副本,因此,必戶所有,但是,同一張卡可能有多個副本,因此,必須考慮同時在若干臺須考慮同時在若干臺ATMATM上使用同樣的現(xiàn)金兌換卡的可上使用同樣的現(xiàn)金兌換卡的可能性。
26、也就是說,能性。也就是說,(12)(12)系統(tǒng)應(yīng)該能夠處理系統(tǒng)應(yīng)該能夠處理并發(fā)并發(fā)的訪問。的訪問。 當(dāng)用戶把現(xiàn)金兌換卡插入當(dāng)用戶把現(xiàn)金兌換卡插入ATMATM后,后,(13)(13)ATMATM就與用戶就與用戶交互,以獲取有關(guān)這次事務(wù)的信息,并與中央計算機交互,以獲取有關(guān)這次事務(wù)的信息,并與中央計算機交換關(guān)于事務(wù)的信息。首先,交換關(guān)于事務(wù)的信息。首先,ATMATM要求用戶輸入密碼,要求用戶輸入密碼,接下來,接下來,(14)(14)ATMATM把從這張卡上讀到的信息以及用戶輸入把從這張卡上讀到的信息以及用戶輸入的密碼傳給中央計算機,請求中央計算機核對這些信的密碼傳給中央計算機,請求中央計算機核對這
27、些信息并處理這次事務(wù)。息并處理這次事務(wù)。(15)(15)中央計算機根據(jù)卡上的分行代中央計算機根據(jù)卡上的分行代碼確定這次事務(wù)與分行的對應(yīng)關(guān)系,并且委托相應(yīng)的碼確定這次事務(wù)與分行的對應(yīng)關(guān)系,并且委托相應(yīng)的分行計算機驗證用戶密碼。如果用戶輸入的密碼是正分行計算機驗證用戶密碼。如果用戶輸入的密碼是正確的,確的,ATMATM就要求用戶選擇事務(wù)類型(取款、查詢等)就要求用戶選擇事務(wù)類型(取款、查詢等)。當(dāng)用戶選擇取款時,。當(dāng)用戶選擇取款時,(16)(16)ATMATM請求用戶輸入取款額。最請求用戶輸入取款額。最后,后,(17)(17)ATMATM從現(xiàn)金出口從現(xiàn)金出口吐出吐出現(xiàn)金,現(xiàn)金,(18)(18)并且
28、并且打印打印出帳單出帳單交給用戶。交給用戶。以以ATMATM系統(tǒng)為例,經(jīng)過分析初步確定出下列關(guān)系統(tǒng)為例,經(jīng)過分析初步確定出下列關(guān)聯(lián):聯(lián):(1 1)直接提取動詞短語得出的關(guān)聯(lián))直接提取動詞短語得出的關(guān)聯(lián)ATMATM、中央計算機、分行計算機及柜員終、中央計算機、分行計算機及柜員終端組成的網(wǎng)絡(luò)端組成的網(wǎng)絡(luò)總行擁有多臺總行擁有多臺ATMATMATMATM設(shè)在主要街道上設(shè)在主要街道上分行提供分行計算機和柜員終端分行提供分行計算機和柜員終端柜員終端設(shè)在分行營業(yè)廳及儲蓄所內(nèi)柜員終端設(shè)在分行營業(yè)廳及儲蓄所內(nèi)分行分攤軟件開發(fā)成本分行分攤軟件開發(fā)成本儲戶擁有帳戶儲戶擁有帳戶分行計算機處理針對帳戶的事務(wù)分行計算機處
29、理針對帳戶的事務(wù)分行計算機維護帳戶分行計算機維護帳戶柜員終端與分行計算機通信柜員終端與分行計算機通信柜員輸入針對帳戶的事務(wù)柜員輸入針對帳戶的事務(wù)ATMATM與中央計算機交換關(guān)于事務(wù)的信息與中央計算機交換關(guān)于事務(wù)的信息中央計算機確定事務(wù)與分行的對應(yīng)關(guān)系中央計算機確定事務(wù)與分行的對應(yīng)關(guān)系 ATMATM讀現(xiàn)金兌換卡讀現(xiàn)金兌換卡ATMATM與用戶交互與用戶交互ATMATM吐出現(xiàn)金吐出現(xiàn)金ATMATM打印賬單打印賬單系統(tǒng)處理并發(fā)的訪問系統(tǒng)處理并發(fā)的訪問(2)(2)需求陳述中隱含的關(guān)聯(lián)需求陳述中隱含的關(guān)聯(lián)總行由各個分行組成總行由各個分行組成分行保管賬戶分行保管賬戶總行擁有中央計算機總行擁有中央計算機系統(tǒng)維
30、護事務(wù)日志系統(tǒng)維護事務(wù)日志系統(tǒng)提供必要的安全性系統(tǒng)提供必要的安全性儲戶擁有現(xiàn)金兌換卡儲戶擁有現(xiàn)金兌換卡(3)(3)根據(jù)問題域知識得出的關(guān)聯(lián)根據(jù)問題域知識得出的關(guān)聯(lián)現(xiàn)金兌換卡訪問賬戶現(xiàn)金兌換卡訪問賬戶分行雇用柜員分行雇用柜員(4)(4)與問題無關(guān)的或應(yīng)在實現(xiàn)階段考慮的關(guān)聯(lián)與問題無關(guān)的或應(yīng)在實現(xiàn)階段考慮的關(guān)聯(lián) 應(yīng)刪去。例如,在應(yīng)刪去。例如,在ATMATM系統(tǒng)的例子中,系統(tǒng)的例子中, “系統(tǒng)處理并發(fā)的訪問系統(tǒng)處理并發(fā)的訪問” (5)(5)瞬間事件刪除瞬間事件刪除 “ATMATM讀現(xiàn)金兌換卡讀現(xiàn)金兌換卡” “ATMATM與用戶交互與用戶交互” 如果用動作描述的需求隱含了問題域的如果用動作描述的需求隱含
31、了問題域的某種基本結(jié)構(gòu),則應(yīng)該用適當(dāng)?shù)膭釉~詞組重某種基本結(jié)構(gòu),則應(yīng)該用適當(dāng)?shù)膭釉~詞組重新表示這個關(guān)聯(lián)。例如,在新表示這個關(guān)聯(lián)。例如,在ATMATM系統(tǒng)的需求陳系統(tǒng)的需求陳述中,述中,“中央計算機確定事務(wù)與分行的對應(yīng)中央計算機確定事務(wù)與分行的對應(yīng)關(guān)系關(guān)系”隱含了結(jié)構(gòu)上隱含了結(jié)構(gòu)上“中央計算機與分行通中央計算機與分行通信信”的關(guān)系。的關(guān)系。(6)(6)派生關(guān)聯(lián)派生關(guān)聯(lián) 應(yīng)該去掉那些可以用其他關(guān)聯(lián)定義的冗應(yīng)該去掉那些可以用其他關(guān)聯(lián)定義的冗余關(guān)聯(lián)。例如,在余關(guān)聯(lián)。例如,在ATMATM系統(tǒng)的例子中,系統(tǒng)的例子中,“總行擁有多臺總行擁有多臺ATM”=“ATM”=“總行擁有中央計算機總行擁有中央計算機”和和
32、 “ATMATM與中央計算機通信與中央計算機通信” “分行計算機維護帳戶分行計算機維護帳戶”=“=“分行保管帳戶分行保管帳戶”和和 “事務(wù)修改帳戶事務(wù)修改帳戶” 3.3.進一步完善進一步完善 通常從下述幾個方面進行改進:通常從下述幾個方面進行改進:(1)(1)正名正名 應(yīng)該仔細選擇含義更明確的名字作應(yīng)該仔細選擇含義更明確的名字作為關(guān)聯(lián)名。例如,為關(guān)聯(lián)名。例如,“分行提供分行計算分行提供分行計算機和柜員終端機和柜員終端”不如改為不如改為“分行擁有分分行擁有分行計算機行計算機”和和“分行擁有柜員終端分行擁有柜員終端”。(2)(2)分解分解 為了能夠適用于不同的關(guān)聯(lián),必要為了能夠適用于不同的關(guān)聯(lián),必
33、要時應(yīng)該分解以前確定的類與對象。例如,時應(yīng)該分解以前確定的類與對象。例如,在在ATMATM系統(tǒng)中,應(yīng)該把系統(tǒng)中,應(yīng)該把“事務(wù)事務(wù)”分解成分解成“遠程事務(wù)遠程事務(wù)”和和“柜員事務(wù)柜員事務(wù)”。 (3)(3)補充補充 發(fā)現(xiàn)了遺漏的關(guān)聯(lián)就應(yīng)該及時補上。例發(fā)現(xiàn)了遺漏的關(guān)聯(lián)就應(yīng)該及時補上。例如,在如,在ATMATM系統(tǒng)中把系統(tǒng)中把“事務(wù)事務(wù)”分解成上述兩類分解成上述兩類以后,需要補充以后,需要補充 “柜員輸入柜員事務(wù)柜員輸入柜員事務(wù)” “柜員事務(wù)輸進柜員終端柜員事務(wù)輸進柜員終端” “在在ATMATM上輸入遠程事務(wù)上輸入遠程事務(wù)” “遠程事務(wù)由現(xiàn)金兌換卡授權(quán)遠程事務(wù)由現(xiàn)金兌換卡授權(quán)” (4)(4)標(biāo)明重數(shù)標(biāo)
34、明重數(shù) 應(yīng)該初步判定各個關(guān)聯(lián)的類型,并粗略應(yīng)該初步判定各個關(guān)聯(lián)的類型,并粗略地確定關(guān)聯(lián)的重數(shù)。地確定關(guān)聯(lián)的重數(shù)。 10.3.3 10.3.3 劃分主題劃分主題 應(yīng)該按問題領(lǐng)域而不是用功能分解方法來確定應(yīng)該按問題領(lǐng)域而不是用功能分解方法來確定主題。此外,應(yīng)該按照使不同主題內(nèi)的對象相互間主題。此外,應(yīng)該按照使不同主題內(nèi)的對象相互間依賴和交互最少的原則來確定主題。以依賴和交互最少的原則來確定主題。以ATMATM系統(tǒng)為系統(tǒng)為例,可以把它劃分成例,可以把它劃分成總行總行總行總行中央計算機中央計算機分行分行分行分行分行計算機分行計算機柜員終端柜員終端柜員事務(wù)柜員事務(wù)柜員柜員帳戶帳戶ATMATMATMATM
35、遠程事務(wù)遠程事務(wù)現(xiàn)金兌換卡現(xiàn)金兌換卡儲戶儲戶10.3.4 10.3.4 確定屬性確定屬性v“卡號卡號”實際上是一個限定詞實際上是一個限定詞v“分行代碼分行代碼”是關(guān)聯(lián)是關(guān)聯(lián)“分行組成總行分行組成總行”上的上的限定詞限定詞v“帳號帳號”是關(guān)聯(lián)是關(guān)聯(lián)“分行保管帳戶分行保管帳戶”上的限定上的限定詞詞 v“雇員號雇員號”是是“分行雇用柜員分行雇用柜員”上的限定詞上的限定詞v“站號站號”是是“分行擁有柜員終端分行擁有柜員終端”、“柜員柜員終端與分行計算機通信終端與分行計算機通信”及及“中央計算機與中央計算機與ATMATM通信通信”等三個關(guān)聯(lián)上的限定詞等三個關(guān)聯(lián)上的限定詞 。 10.3.5 10.3.5
36、識別繼承關(guān)系識別繼承關(guān)系(1 1)自底向上:抽象出現(xiàn)有類的共同性質(zhì)泛)自底向上:抽象出現(xiàn)有類的共同性質(zhì)泛化出父類,這個過程實質(zhì)上模擬了人類思化出父類,這個過程實質(zhì)上模擬了人類思維過程。例如,在維過程。例如,在ATMATM系統(tǒng)中,系統(tǒng)中,“遠程事務(wù)遠程事務(wù)”和和“柜員事務(wù)柜員事務(wù)”是類似的,可以泛化出父是類似的,可以泛化出父類類“事務(wù)事務(wù)”;類似地,可以從;類似地,可以從“ATM”ATM”和和“柜員終端柜員終端”泛化出父類泛化出父類“輸入站輸入站”。 (2 2)自頂向下:把現(xiàn)有類細化成更具體的子)自頂向下:把現(xiàn)有類細化成更具體的子類,這模擬了人類的演繹思維過程。從應(yīng)類,這模擬了人類的演繹思維過程
37、。從應(yīng)用領(lǐng)域中常常能明顯看出應(yīng)該做的自頂向用領(lǐng)域中常常能明顯看出應(yīng)該做的自頂向下的具體化工作。例如,帶有形容詞修飾下的具體化工作。例如,帶有形容詞修飾的名詞詞組往往暗示了一些具體的類。但的名詞詞組往往暗示了一些具體的類。但是,在分析階段應(yīng)該避免過渡細化。是,在分析階段應(yīng)該避免過渡細化。 利用多重繼承可以提高共享程度,通常利用多重繼承可以提高共享程度,通常指定一個主要的父類,從它繼承大部分屬指定一個主要的父類,從它繼承大部分屬性和行為;次要父類只補充一些屬性和行性和行為;次要父類只補充一些屬性和行為。圖為。圖10.510.5是增加了繼承關(guān)系以后的是增加了繼承關(guān)系以后的ATMATM對對象模型。象模
38、型。 10.3.6 10.3.6 反復(fù)修改反復(fù)修改 僅僅經(jīng)過一次建模過程很難得到完全正僅僅經(jīng)過一次建模過程很難得到完全正確的對象模型。事實上,軟件開發(fā)過程就是確的對象模型。事實上,軟件開發(fā)過程就是一個多次重復(fù)修改、逐步完善的過程。在建一個多次重復(fù)修改、逐步完善的過程。在建模的任何一個步驟中,如果發(fā)現(xiàn)了模型的缺模的任何一個步驟中,如果發(fā)現(xiàn)了模型的缺陷,都必須返回到前期階段進行修改。由于陷,都必須返回到前期階段進行修改。由于面向?qū)ο蟮母拍詈头栐谡麄€開發(fā)過程中都面向?qū)ο蟮母拍詈头栐谡麄€開發(fā)過程中都是一致的,因此遠比使用結(jié)構(gòu)分析、設(shè)計技是一致的,因此遠比使用結(jié)構(gòu)分析、設(shè)計技術(shù)更容易實現(xiàn)反復(fù)修改、逐
39、步完善的過程。術(shù)更容易實現(xiàn)反復(fù)修改、逐步完善的過程。 以下以以下以ATMATM系統(tǒng)為例,討論可能做的修改:系統(tǒng)為例,討論可能做的修改:1.1.分解分解“現(xiàn)金兌換卡現(xiàn)金兌換卡”類類“卡權(quán)限卡權(quán)限”, ,標(biāo)志儲戶訪問帳戶的權(quán)限標(biāo)志儲戶訪問帳戶的權(quán)限“現(xiàn)金兌換卡現(xiàn)金兌換卡” 含有分行代碼和卡號的數(shù)含有分行代碼和卡號的數(shù)據(jù)載體。據(jù)載體。2.“2.“事務(wù)事務(wù)”由由“更新更新”組成組成 通常,一個事務(wù)包含對帳戶的若干次更通常,一個事務(wù)包含對帳戶的若干次更新,這里所說的更新,指的是對帳戶所做的新,這里所說的更新,指的是對帳戶所做的一個動作(取款、存款或查詢)。一個動作(取款、存款或查詢)?!案赂隆彪m然代
40、表一個動作,但是它有自己的屬性雖然代表一個動作,但是它有自己的屬性(類型、金額等),應(yīng)該獨立存在,因此應(yīng)(類型、金額等),應(yīng)該獨立存在,因此應(yīng)該把它作為類。該把它作為類。3. 3. 合并合并 區(qū)分區(qū)分“分行分行”與與“分行計算機分行計算機”,對于,對于分析這個系統(tǒng)來說,并沒有多大意義,為簡分析這個系統(tǒng)來說,并沒有多大意義,為簡單起見,應(yīng)該把它們合并。類似地,應(yīng)該并單起見,應(yīng)該把它們合并。類似地,應(yīng)該并“總行總行”和和“中央計算機中央計算機”。 圖圖10.610.6給出了修改以后的給出了修改以后的ATMATM對象模型,對象模型,與修改前比較起來,它更簡單、更清晰。與修改前比較起來,它更簡單、更清
41、晰。10.4 10.4 建立動態(tài)模型建立動態(tài)模型 在開發(fā)交互式系統(tǒng)時,動態(tài)模型卻起著在開發(fā)交互式系統(tǒng)時,動態(tài)模型卻起著很重要的作用。建立動態(tài)模型的步驟:很重要的作用。建立動態(tài)模型的步驟:v編寫典型交互行為的腳本編寫典型交互行為的腳本v畫事件跟蹤圖畫事件跟蹤圖v畫狀態(tài)圖畫狀態(tài)圖 10.4.1 10.4.1 編寫腳本編寫腳本v編寫正常情況的腳本。編寫正常情況的腳本。v考慮特殊情況,例如輸入或輸出的數(shù)據(jù)考慮特殊情況,例如輸入或輸出的數(shù)據(jù)為最大值(或最小值)。為最大值(或最小值)。v考慮出錯情況,例如,輸入的值為非法考慮出錯情況,例如,輸入的值為非法值或響應(yīng)失敗。對大多數(shù)交互式系統(tǒng)來值或響應(yīng)失敗。對大
42、多數(shù)交互式系統(tǒng)來說,出錯處理都是最難實現(xiàn)的部分。如說,出錯處理都是最難實現(xiàn)的部分。如果可能,應(yīng)該允許用戶果可能,應(yīng)該允許用戶“異常中止異常中止”一一個操作或個操作或“取消取消”一個操作。一個操作。ATMATM系統(tǒng)的正常情況腳本系統(tǒng)的正常情況腳本(1)ATM(1)ATM請儲戶插卡;儲戶插入一張現(xiàn)金兌換卡。請儲戶插卡;儲戶插入一張現(xiàn)金兌換卡。(2)ATM(2)ATM接受該卡并讀它上面的分行代碼和卡號。接受該卡并讀它上面的分行代碼和卡號。(3)ATM(3)ATM要求儲戶輸入密碼;儲戶輸入自己的密碼要求儲戶輸入密碼;儲戶輸入自己的密碼“1234”1234”等數(shù)字。等數(shù)字。(4)ATM(4)ATM請求總
43、行驗證卡號和密碼;總行要求請求總行驗證卡號和密碼;總行要求“39”39”號號分行核對儲戶密碼,然后通知分行核對儲戶密碼,然后通知ATMATM說這張卡有效。說這張卡有效。(5)ATM(5)ATM要求儲戶選擇事務(wù)類型(取款、轉(zhuǎn)帳、查詢要求儲戶選擇事務(wù)類型(取款、轉(zhuǎn)帳、查詢等);儲戶選擇等);儲戶選擇“取款取款”。(6)ATM(6)ATM要求儲戶輸入取款額;儲戶輸入要求儲戶輸入取款額;儲戶輸入“880”880”。(7)ATM(7)ATM確認取款額在預(yù)先規(guī)定的限額內(nèi),然確認取款額在預(yù)先規(guī)定的限額內(nèi),然后要求總行處理這個事務(wù);總行把請求轉(zhuǎn)后要求總行處理這個事務(wù);總行把請求轉(zhuǎn)給分行,該分行成功地處理完這項
44、事務(wù)并給分行,該分行成功地處理完這項事務(wù)并返回該帳戶的新余額。返回該帳戶的新余額。(8)ATM(8)ATM吐出現(xiàn)金并請儲戶拿走這些現(xiàn)金;儲吐出現(xiàn)金并請儲戶拿走這些現(xiàn)金;儲戶拿走現(xiàn)金。戶拿走現(xiàn)金。(9)ATM(9)ATM問儲戶是否繼續(xù)這項任務(wù);儲戶回答問儲戶是否繼續(xù)這項任務(wù);儲戶回答“不不”。(10)ATM(10)ATM打印帳單,退出現(xiàn)金兌換卡,請儲打印帳單,退出現(xiàn)金兌換卡,請儲戶拿走它們;儲戶取走帳單和卡。戶拿走它們;儲戶取走帳單和卡。(11)ATM(11)ATM請儲戶插卡。請儲戶插卡。ATMATM系統(tǒng)的異常情況腳本系統(tǒng)的異常情況腳本(1)ATM(1)ATM請儲戶插卡;儲戶插入一張現(xiàn)金兌換卡。
45、請儲戶插卡;儲戶插入一張現(xiàn)金兌換卡。(2)ATM(2)ATM接受這張卡并順序讀它上面的數(shù)字。接受這張卡并順序讀它上面的數(shù)字。(3)ATM(3)ATM要求密碼;儲戶誤輸入要求密碼;儲戶誤輸入“8888”8888”。(4)ATM(4)ATM請求總行驗證輸入數(shù)字和密碼;總行在請求總行驗證輸入數(shù)字和密碼;總行在向有關(guān)分行咨詢后拒絕這張卡。向有關(guān)分行咨詢后拒絕這張卡。(5)ATM(5)ATM顯示顯示“密碼錯密碼錯”,并請儲戶重新輸入密,并請儲戶重新輸入密碼;儲戶輸入碼;儲戶輸入“1234”1234”;ATMATM請總行驗證后知請總行驗證后知道這次輸入的密碼正確。道這次輸入的密碼正確。(6)ATM(6)A
46、TM請儲戶選擇事務(wù)類型;儲戶選擇請儲戶選擇事務(wù)類型;儲戶選擇“取款取款”。(7)ATM(7)ATM詢問取款額;儲戶改變主意不想取款了詢問取款額;儲戶改變主意不想取款了,他敲,他敲“取消取消”鍵。鍵。(8)ATM(8)ATM退出現(xiàn)金兌換卡,并請儲戶拿走它;儲退出現(xiàn)金兌換卡,并請儲戶拿走它;儲戶拿走他的卡。戶拿走他的卡。(9)ATM(9)ATM請儲戶插卡。請儲戶插卡。10.4.3 10.4.3 畫事件跟蹤圖畫事件跟蹤圖1.1.確定事件確定事件v事件包括系統(tǒng)與用戶(或外部設(shè)備)交互的事件包括系統(tǒng)與用戶(或外部設(shè)備)交互的所有信號、輸入、輸出、中斷、動作等等。所有信號、輸入、輸出、中斷、動作等等。2.
47、2.畫出事件跟蹤圖畫出事件跟蹤圖v在事件跟蹤圖中,一條豎線代表一個對象;在事件跟蹤圖中,一條豎線代表一個對象;v每個事件用一條水平的箭頭線表示,箭頭方每個事件用一條水平的箭頭線表示,箭頭方向從事件的發(fā)送對象指向接受對象。向從事件的發(fā)送對象指向接受對象。v時間從上向下遞增,箭頭線之間的間距并沒時間從上向下遞增,箭頭線之間的間距并沒有具體含義,圖中僅用箭頭線在垂直方向上有具體含義,圖中僅用箭頭線在垂直方向上的相對位置表示事件發(fā)生的先后,并不表示的相對位置表示事件發(fā)生的先后,并不表示兩個時間之間的精確時間表。兩個時間之間的精確時間表。儲戶儲戶分行事務(wù)成功分行事務(wù)成功請求處理分行事務(wù)請求處理分行事務(wù)帳
48、戶有效帳戶有效請求分行驗證帳戶請求分行驗證帳戶事務(wù)成功事務(wù)成功請求處理事務(wù)請求處理事務(wù)帳戶有效帳戶有效請求驗證帳戶請求驗證帳戶插卡插卡要求密碼要求密碼輸入密碼輸入密碼要求事務(wù)類型要求事務(wù)類型輸入類型輸入類型要求輸入取款額要求輸入取款額輸入取款額輸入取款額吐出現(xiàn)金吐出現(xiàn)金請求拿走現(xiàn)金請求拿走現(xiàn)金拿走現(xiàn)金拿走現(xiàn)金請求繼續(xù)此事務(wù)請求繼續(xù)此事務(wù)結(jié)束結(jié)束印帳單印帳單退卡退卡請求拿走卡請求拿走卡拿走卡拿走卡顯示主屏幕顯示主屏幕ATM總行總行分行分行圖 10.8 ATM 系統(tǒng)正常情況腳本的事件跟蹤圖10.4.4 10.4.4 畫狀態(tài)圖畫狀態(tài)圖v狀態(tài)圖描繪時間與對象的狀態(tài)關(guān)系。當(dāng)對象狀態(tài)圖描繪時間與對象的狀態(tài)
49、關(guān)系。當(dāng)對象接受了一個事件以后,它的下個狀態(tài)取決與接受了一個事件以后,它的下個狀態(tài)取決與當(dāng)前狀態(tài)及所接受的事件。由事件引起的狀當(dāng)前狀態(tài)及所接受的事件。由事件引起的狀態(tài)改變稱為態(tài)改變稱為“轉(zhuǎn)換轉(zhuǎn)換”。v如果一個事件并不引起當(dāng)前狀態(tài)發(fā)生轉(zhuǎn)換,如果一個事件并不引起當(dāng)前狀態(tài)發(fā)生轉(zhuǎn)換,則可忽略這個事件。則可忽略這個事件。v一張狀態(tài)圖描繪一類對象的行為,它確定了一張狀態(tài)圖描繪一類對象的行為,它確定了由時間序列引出的狀態(tài)序列。由時間序列引出的狀態(tài)序列。ATMATM類的狀態(tài)類的狀態(tài)圖圖總行類的狀態(tài)總行類的狀態(tài)圖圖分行類的狀態(tài)分行類的狀態(tài)圖圖10.4.5 10.4.5 審查動態(tài)模型審查動態(tài)模型v各個類的狀態(tài)圖通過共享事件合并起來,構(gòu)各個類的狀態(tài)圖通過共享事件合并起來,構(gòu)成了系統(tǒng)的動態(tài)模型。成了系統(tǒng)的動態(tài)模型。v在完成了每個具有交互行為的類的狀態(tài)圖之在完成了每個具有交互行為的類的狀態(tài)圖之后,應(yīng)該檢查系統(tǒng)級的完整性和一致性。后,應(yīng)該檢查系統(tǒng)級的完整性和一致性。v每個事件應(yīng)該既有發(fā)送對象又有接受對象,每個事件應(yīng)該既有發(fā)送對象又有接受
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 網(wǎng)絡(luò)安全與信息技術(shù)2025年考試重點題目及答案
- 蘭州職業(yè)技術(shù)學(xué)院《Hadoop大數(shù)據(jù)技術(shù)》2023-2024學(xué)年第二學(xué)期期末試卷
- 四川工業(yè)科技學(xué)院《微機原理與匯編語言》2023-2024學(xué)年第二學(xué)期期末試卷
- 2025年數(shù)據(jù)分析與處理職業(yè)考試試卷及答案
- 2025年注冊會計師資格考試試卷及答案
- 2025年移動互聯(lián)網(wǎng)應(yīng)用開發(fā)職業(yè)考試試題及答案
- 2025年職業(yè)健康管理師考試試卷及答案匯編
- 山東省廣饒一中2024-2025學(xué)年高三最后一卷化學(xué)試題文試題含解析
- 岐山縣2025年小升初總復(fù)習(xí)數(shù)學(xué)精練含解析
- 江蘇省句容市、丹陽市2024-2025學(xué)年第一次高中畢業(yè)生復(fù)習(xí)統(tǒng)一檢測試題語文試題含解析
- JGJ79-2012 建筑地基處理技術(shù)規(guī)范
- ??低曅U性诰€測評題庫
- 新編酒水知識與調(diào)酒
- 電網(wǎng)兩票培訓(xùn)課件
- 班級管理《班主任經(jīng)驗交流》課件
- 預(yù)防機車車輛傷害培訓(xùn)課件
- 《土地集約利用》課件
- 2024老舊小區(qū)改造質(zhì)量驗收規(guī)范
- 小學(xué)英語(完整版)現(xiàn)在進行時練習(xí)題附答案
- 《畫幾何圖形》教學(xué)課件
- 園林綠化工程技術(shù)標(biāo)書
評論
0/150
提交評論