10-1面向?qū)ο蠓治?1).ppt_第1頁(yè)
10-1面向?qū)ο蠓治?1).ppt_第2頁(yè)
10-1面向?qū)ο蠓治?1).ppt_第3頁(yè)
10-1面向?qū)ο蠓治?1).ppt_第4頁(yè)
10-1面向?qū)ο蠓治?1).ppt_第5頁(yè)
已閱讀5頁(yè),還剩57頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、學(xué)習(xí)目標(biāo),掌握面向?qū)ο蠓治龅幕具^(guò)程,能夠根據(jù)需求陳述進(jìn)行建模, 掌握建立對(duì)象模型的方法。,第10章 面向?qū)ο蠓治?分析的過(guò)程都是提取系統(tǒng)需求的過(guò)程。分析工作主要包括三項(xiàng)內(nèi)容,這就是理解、表達(dá)和驗(yàn)證。 需求分析過(guò)程是系統(tǒng)分析員與用戶及領(lǐng)域?qū)<曳磸?fù)交流和多次修正的過(guò)程。也就是說(shuō),理解和驗(yàn)證的過(guò)程通常交替進(jìn)行,反復(fù)迭代,而且往往要利用原型系統(tǒng)作為輔助工具。 面向?qū)ο蠓治龅年P(guān)鍵,是識(shí)別出問(wèn)題域內(nèi)的對(duì)象,并分析它們相互間的關(guān)系,最終建立起問(wèn)題域的簡(jiǎn)潔、精確、可理解的正確模型。,第10章 面向?qū)ο蠓治?10.1 面向?qū)ο蠓治龅幕具^(guò)程 10.1.1 概述,面向?qū)ο蠓治?,就是抽取和整理用戶需求并建立?wèn)題域

2、精確模型的過(guò)程。 從分析陳述用戶需求的文件開始。 系統(tǒng)分析員應(yīng)該深入理解用戶需求,抽象出目標(biāo)系統(tǒng)的本質(zhì)屬性,并用模型準(zhǔn)確地表示出來(lái)。 系統(tǒng)分析員必須認(rèn)真向領(lǐng)域?qū)<覍W(xué)習(xí)。 應(yīng)該仔細(xì)研究以前針對(duì)相同的或類似的問(wèn)題域進(jìn)行面向?qū)ο蠓治鏊玫降慕Y(jié)果。,1012 三個(gè)子模型與五個(gè)層次,面向?qū)ο蠼5玫降哪P桶瑢?duì)象的三個(gè)要素,即靜態(tài)結(jié)構(gòu)(對(duì)象模型),交互次序(動(dòng)態(tài)模型)和數(shù)據(jù)變換(功能模型)。 復(fù)雜問(wèn)題(大型系統(tǒng))的對(duì)象模型由下述五個(gè)層次組成:類與對(duì)象層、結(jié)構(gòu)層、屬性層和服務(wù)層、主題層。 面向?qū)ο蠓治龃篌w上按照下列順序進(jìn)行: 尋找類與對(duì)象,識(shí)別結(jié)構(gòu),識(shí)別主題,定義屬性,建立動(dòng)態(tài)模型,建立功能模型,定義服務(wù)

3、。,10.2 需求陳述 10.2.1 書寫要點(diǎn),需求陳述的內(nèi)容包括: 問(wèn)題范圍, 功能需求,性能需求, 應(yīng)用環(huán)境及假設(shè)條件等。 總之,需求陳述應(yīng)該闡明“做什么”而不是“怎樣做”。 下面陳述對(duì)ATM系統(tǒng)的需求:,某銀行擬開發(fā)一個(gè)自動(dòng)取款機(jī)系統(tǒng),它是一個(gè)由自動(dòng)取款機(jī)、中央計(jì)算機(jī)、分行計(jì)算機(jī)及柜員終端組成的網(wǎng)絡(luò)系統(tǒng)。ATM和中央計(jì)算機(jī)由總行投資購(gòu)買。總行擁有多臺(tái)ATM,分別設(shè)在全市各主要街道上。分行負(fù)責(zé)提供分行計(jì)算機(jī)和柜員終端。柜員終端設(shè)在分行營(yíng)業(yè)廳及分行下屬的各個(gè)儲(chǔ)蓄所內(nèi)。該系統(tǒng)的軟件開發(fā)成本由各個(gè)分行分?jǐn)偂?銀行柜員使用柜員終端處理儲(chǔ)戶提交的儲(chǔ)蓄事務(wù)。儲(chǔ)戶可以用現(xiàn)金或支票向自己擁有的某個(gè)賬戶內(nèi)存

4、款或開新賬戶。儲(chǔ)戶也可以從自己的賬戶中取款。通常,一個(gè)儲(chǔ)戶可能擁有多個(gè)賬戶。柜員負(fù)責(zé)把儲(chǔ)戶提交的存款或取款事務(wù)輸進(jìn)柜員終端,接收儲(chǔ)戶交來(lái)的現(xiàn)金或支票,或付給儲(chǔ)戶現(xiàn)金。柜員終端與相應(yīng)的分行計(jì)算機(jī)通信,分行計(jì)算機(jī)具體處理針對(duì)某個(gè)賬戶的事務(wù)并且維護(hù)賬戶。,對(duì)ATM系統(tǒng)的需求陳述:,擁有銀行賬戶的儲(chǔ)戶有權(quán)申請(qǐng)領(lǐng)取現(xiàn)金兌換卡。使用現(xiàn)金兌換卡可以通過(guò)ATM訪問(wèn)自己的賬戶。目前僅限于用現(xiàn)金兌換卡在ATM上提取現(xiàn)金(即取款),或查詢有關(guān)自己賬戶的信息(例如,某個(gè)指定賬戶上的余額)。將來(lái)可能還要求使用ATM辦理轉(zhuǎn)賬、存款等事務(wù)。 所謂現(xiàn)金兌換卡就是一張?zhí)刂频拇趴?,上面有分行代碼和卡號(hào)。分行代碼唯一標(biāo)識(shí)總行下屬的

5、分行,卡號(hào)確定了這張卡可以訪問(wèn)哪些賬戶。通常,一張卡可以訪問(wèn)儲(chǔ)戶的若干個(gè)賬戶,但是不一定能訪問(wèn)這個(gè)儲(chǔ)戶的全部賬戶。每張現(xiàn)金兌換卡僅屬于一個(gè)儲(chǔ)戶所有,但是,同一張卡可能有多個(gè)副本,因此,必須考慮同時(shí)在若干臺(tái)ATM上使用同樣的現(xiàn)金兌換卡的可能性。也就是說(shuō),系統(tǒng)應(yīng)該能夠處理并發(fā)的訪問(wèn)。,對(duì)ATM系統(tǒng)的需求陳述:,當(dāng)用戶把現(xiàn)金兌換卡插入ATM之后,ATM就與用戶交互,以獲取有關(guān)這次事務(wù)的信息,并與中央計(jì)算機(jī)交換關(guān)于事務(wù)的信息。首先,ATM要求用戶輸入密碼,接下來(lái)ATM把從這張卡上讀到的信息以及用戶輸入的密碼傳給中央計(jì)算機(jī),請(qǐng)求中央計(jì)算機(jī)核對(duì)這些信息并處理這次事務(wù)。中央計(jì)算機(jī)根據(jù)卡上的分行代碼確定這次事

6、務(wù)與分行的對(duì)應(yīng)關(guān)系,并且委托相應(yīng)的分行計(jì)算機(jī)驗(yàn)證用戶密碼。如果用戶輸入的密碼是正確的,ATM就要求用戶選擇事務(wù)類型(取款、查詢等)。當(dāng)用戶選擇取款時(shí),ATM請(qǐng)求用戶輸入取款額。最后,ATM從現(xiàn)金出口吐出現(xiàn)金,并且打印出賬單交給用戶。,對(duì)ATM系統(tǒng)的需求陳述:,103 建立對(duì)象模型,對(duì)象模型通常有五個(gè)層次。典型的工作步驟是: 首先確定對(duì)象類和關(guān)聯(lián)(因?yàn)樗鼈冇绊懴到y(tǒng)整體結(jié)構(gòu)和解決問(wèn)題的方法),對(duì)于大型復(fù)雜問(wèn)題還要進(jìn)一步劃分出若干個(gè)主題; 然后給類和關(guān)聯(lián)增添屬性,以進(jìn)一步描述它們接下來(lái)利用適當(dāng)?shù)睦^承關(guān)系進(jìn)一步合并和組織類。 而對(duì)類中操作的最后確定,則需等到建立了動(dòng)態(tài)模型和功能模型之后,因?yàn)檫@兩個(gè)子模

7、型更準(zhǔn)確地描述了對(duì)類中提供的服務(wù)的需求。,10.3.1 確定類與對(duì)象 具體地說(shuō),大多數(shù)客觀事物可分為下述五類: (1)可感知的物理實(shí)體,例如,飛機(jī)、汽車、書、房屋等等。 (2)人或組織的角色,例如,醫(yī)生、教師、雇主、雇員、計(jì)算機(jī)系、財(cái)務(wù)處等等。 (3)應(yīng)該記憶的事件,例如,飛行、演出、訪問(wèn)、交通事故等等。 (4)兩個(gè)或多個(gè)對(duì)象的相互作用,通常具有交易或接觸的性質(zhì),例如,購(gòu)買、納稅、結(jié)婚等等。 (5)需要說(shuō)明的概念,例如,政策、保險(xiǎn)政策、版權(quán)法等等。,ATM系統(tǒng)的需求陳述,某銀行擬開發(fā)一個(gè)自動(dòng)取款機(jī)系統(tǒng),它是一個(gè)由自動(dòng)取款機(jī)、中央計(jì)算機(jī)、分行計(jì)算機(jī)及柜員終端組成的網(wǎng)絡(luò)系統(tǒng)。 ATM和中央計(jì)算機(jī)由

8、總行投資購(gòu)買??傂袚碛卸嗯_(tái)ATM,分別設(shè)在全市各主要街道上。,ATM系統(tǒng)的需求陳述,分行負(fù)責(zé)提供分行計(jì)算機(jī)和柜員終端。 柜員終端設(shè)在分行營(yíng)業(yè)廳及分行下屬的各個(gè)儲(chǔ)蓄所內(nèi)。 該系統(tǒng)的軟件開發(fā)成本由各個(gè)分行分?jǐn)偂?ATM系統(tǒng)的需求陳述,銀行柜員使用柜員終端處理儲(chǔ)戶提交的儲(chǔ)蓄事務(wù)。 儲(chǔ)戶可以用現(xiàn)金或支票向自己擁有的某個(gè)賬戶內(nèi)存款或開新賬戶。儲(chǔ)戶也可以從自己的賬戶中取款。 通常,一個(gè)儲(chǔ)戶可能擁有多個(gè)賬戶。,ATM系統(tǒng)的需求陳述,柜員負(fù)責(zé)把儲(chǔ)戶提交的存款或取款事務(wù)輸進(jìn)柜員終端,接收儲(chǔ)戶交來(lái)的現(xiàn)金或支票,或付給儲(chǔ)戶現(xiàn)金。 柜員終端與相應(yīng)的分行計(jì)算機(jī)通信,分行計(jì)算機(jī)具體處理針對(duì)某個(gè)賬戶的事務(wù)并且維護(hù)賬戶。,A

9、TM系統(tǒng)的需求陳述,擁有銀行賬戶的儲(chǔ)戶有權(quán)申請(qǐng)領(lǐng)取現(xiàn)金兌換卡。 使用現(xiàn)金兌換卡可以通過(guò)ATM訪問(wèn)自己的賬戶。 目前僅限于用現(xiàn)金兌換卡在ATM上提取現(xiàn)金(即取款),或查詢有關(guān)自己賬戶的信息(例如,某個(gè)指定賬戶上的余額)。,ATM系統(tǒng)的需求陳述,將來(lái)可能還要求使用ATM辦理轉(zhuǎn)賬、存款等事務(wù)。 所謂現(xiàn)金兌換卡就是一張?zhí)刂频拇趴ǎ厦嬗蟹中写a和卡號(hào)。 分行代碼唯一標(biāo)識(shí)總行下屬的一個(gè)分行,卡號(hào)確定了這張卡可以訪問(wèn)哪些賬戶。,ATM系統(tǒng)的需求陳述,通常,一張卡可以訪問(wèn)儲(chǔ)戶的若干個(gè)賬戶,但是不一定能訪問(wèn)這個(gè)儲(chǔ)戶的全部賬戶。 每張現(xiàn)金兌換卡僅屬于一個(gè)儲(chǔ)戶所有,但是,同一張卡可能有多個(gè)副本,因此,必須考慮同時(shí)

10、在若干臺(tái)ATM上使用同樣的現(xiàn)金兌換卡的可能性。,ATM系統(tǒng)的需求陳述,也就是說(shuō),系統(tǒng)應(yīng)該能夠處理并發(fā)的訪問(wèn)。 當(dāng)用戶把現(xiàn)金兌換卡插入ATM之后,ATM就與用戶交互,以獲取有關(guān)這次事務(wù)的信息,并與中央計(jì)算機(jī)交換關(guān)于事務(wù)的信息。,ATM系統(tǒng)的需求陳述,首先,ATM要求用戶輸入密碼,接下來(lái)ATM把從這張卡上讀到的信息以及用戶輸入的密碼傳給中央計(jì)算機(jī),請(qǐng)求中央計(jì)算機(jī)核對(duì)這些信息并處理這次事務(wù)。 中央計(jì)算機(jī)根據(jù)卡上的分行代碼確定這次事務(wù)與分行的對(duì)應(yīng)關(guān)系,并且委托相應(yīng)的分行計(jì)算機(jī)驗(yàn)證用戶密碼。,ATM系統(tǒng)的需求陳述,如果用戶輸入的密碼是正確的,ATM就要求用戶選擇事務(wù)類型(取款、查詢等)。 當(dāng)用戶選擇取款

11、時(shí),ATM請(qǐng)求用戶輸入取款額。 最后,ATM從現(xiàn)金出口吐出現(xiàn)金,并且打印出賬單交給用戶。,類與對(duì)象的初步候選者,銀行 自動(dòng)取款機(jī)(ATM) 系統(tǒng) 中央計(jì)算機(jī) 分行計(jì)算機(jī) 柜員終端 網(wǎng)絡(luò) 總行 市 街道 分行 營(yíng)業(yè)廳 儲(chǔ)蓄所 軟件 成本 柜員 儲(chǔ)戶 現(xiàn)金 支票 賬戶 事務(wù) 現(xiàn)金兌換卡 余額 磁卡 分行代碼 卡號(hào) 副本 訪問(wèn) 用戶 信息 密碼 類型 取款額 賬單。,通常,在需求陳述中不會(huì)一個(gè)不漏地寫出問(wèn)題域中所有有關(guān)的類與對(duì)象; 分析員應(yīng)該根據(jù)領(lǐng)域知識(shí)或常識(shí)進(jìn)一步把隱含的類與對(duì)象提取出來(lái)。 例如,在ATM系統(tǒng)的需求陳述中沒(méi)寫的“通信鏈路”和“事務(wù)日志”,。,篩選出正確的類與對(duì)象,篩選時(shí)主要依據(jù)下列

12、標(biāo)準(zhǔn),刪除不正確或不必要的類與對(duì)象: 冗余 無(wú)關(guān) 籠統(tǒng) 屬性 操作 實(shí)現(xiàn),冗余,如果兩個(gè)類表達(dá)了同樣的信息,則應(yīng)該保留在此問(wèn)題域中最富于描述力的名稱。 ATM系統(tǒng)有34個(gè)候選的類,其中儲(chǔ)戶與用戶,現(xiàn)金兌換卡與磁卡及副本分別描述了相同的二類信息; 因此,應(yīng)該去掉“用戶”、“磁卡”、“副本”等冗余的類,僅保留“儲(chǔ)戶”和“現(xiàn)金兌換卡”這兩個(gè)類。,冗余,銀行 自動(dòng)取款機(jī)(ATM) 系統(tǒng) 中央計(jì)算機(jī) 分行計(jì)算機(jī) 柜員終端 網(wǎng)絡(luò) 總行 市 街道 分行 營(yíng)業(yè)廳 儲(chǔ)蓄所 軟件 成本 柜員 儲(chǔ)戶 現(xiàn)金 支票 賬戶 事務(wù) 現(xiàn)金兌換卡 余額 分行代碼 卡號(hào) 訪問(wèn) 信息 密碼 類型 取款額 賬單 用戶 磁卡 副本,無(wú)

13、關(guān),僅需要把與本問(wèn)題密切相關(guān)的類與對(duì)象放進(jìn)目標(biāo)系統(tǒng)中。 ATM系統(tǒng)并不處理分?jǐn)傑浖_發(fā)成本的問(wèn)題,而且ATM和柜員終端放置的地點(diǎn)與本軟件的關(guān)系也不大。 因此,應(yīng)該去掉候選類“成本”、“市”、“街道”、“營(yíng)業(yè)廳”和“儲(chǔ)蓄所”。,無(wú)關(guān),銀行 自動(dòng)取款機(jī)(ATM) 系統(tǒng) 中央計(jì)算機(jī) 分行計(jì)算機(jī) 柜員終端 網(wǎng)絡(luò) 總行 分行 軟件 柜員 儲(chǔ)戶 現(xiàn)金 支票 賬戶 事務(wù) 現(xiàn)金兌換卡 余額 分行代碼 卡號(hào) 訪問(wèn) 信息 密碼 類型 取款額 賬單。 成本 市 街道 營(yíng)業(yè)廳 儲(chǔ)蓄所,籠統(tǒng),把籠統(tǒng)的或模糊的類去掉。 以ATM系統(tǒng)為例,“銀行”實(shí)際指總行或分行,“訪問(wèn)”在這里實(shí)際指事務(wù),“信息”的具體內(nèi)容在需求陳述中隨

14、后就指明了。此外還有一些籠統(tǒng)含糊的名詞。 總之,在本例中應(yīng)該去掉“銀行”、“網(wǎng)絡(luò)”、“系統(tǒng)”、“軟件”、“信息”、“訪問(wèn)”等候選類。,籠統(tǒng),自動(dòng)取款機(jī)(ATM) 中央計(jì)算機(jī) 分行計(jì)算機(jī) 柜員終端 總行 分行 柜員 儲(chǔ)戶 現(xiàn)金 支票 賬戶 事務(wù) 現(xiàn)金兌換卡 余額 分行代碼 卡號(hào) 密碼 類型 取款額 賬單。 銀行 網(wǎng)絡(luò) 系統(tǒng) 軟件 信息 訪問(wèn),屬性,有些名詞實(shí)際上描述的是其他對(duì)象的屬性,應(yīng)該把這些名詞從候選類與對(duì)象中去掉。 當(dāng)然,如果某個(gè)性質(zhì)具有很強(qiáng)的獨(dú)立性,則應(yīng)把它作為類而不是作為屬性。 在ATM系統(tǒng)的例子中,“現(xiàn)金”、“支票”、“取款額”、“賬單”、“余額”、“分行代碼”、“卡號(hào)”、“密碼”、

15、“類型”等,實(shí)際上都應(yīng)該作為屬性對(duì)待。,屬性,自動(dòng)取款機(jī)(ATM) 中央計(jì)算機(jī) 分行計(jì)算機(jī) 柜員終端 總行 分行 柜員 儲(chǔ)戶 賬戶 事務(wù) 現(xiàn)金兌換卡 現(xiàn)金 支票 取款額 賬單 余額 分行代碼 卡號(hào) 密碼 類型,操作,一些既可作為名詞,又可作為動(dòng)詞的詞,應(yīng)該慎重考慮它們?cè)诒締?wèn)題中的含義,以便正確地決定把它們作為類還是作為類中定義的操作。 但是,本身具有屬性需獨(dú)立存在的操作,應(yīng)該作為類與對(duì)象。,操作,例如,談到電話時(shí)通常把“撥號(hào)”當(dāng)作動(dòng)詞,當(dāng)構(gòu)造電話模型時(shí)確實(shí)應(yīng)該把它作為一個(gè)操作,而不是一個(gè)類。 但是,在開發(fā)電話的自動(dòng)記賬系統(tǒng)時(shí),“撥號(hào)”需要有自己的屬性(如日期、時(shí)間、受話地點(diǎn)等),因此應(yīng)該把它作

16、為一個(gè)類。,實(shí)現(xiàn),應(yīng)該去掉僅和實(shí)現(xiàn)有關(guān)的候選類與對(duì)象。 在設(shè)計(jì)和實(shí)現(xiàn)階段,這些類與對(duì)象可能是重要的,但在分析階段過(guò)早地考慮它們反而會(huì)分散我們的注意力。 在ATM系統(tǒng)的例子中,“事務(wù)日志”無(wú)非是對(duì)一系列事務(wù)的記錄,它的確切表示方式是面向?qū)ο笤O(shè)計(jì)的議題;“通信鏈路”在邏輯上是一種聯(lián)系,在系統(tǒng)實(shí)現(xiàn)時(shí)它是關(guān)聯(lián)鏈的物理實(shí)現(xiàn)。 總之,應(yīng)該暫時(shí)去掉“事務(wù)日志”和“通信鏈路”這兩個(gè)類,在設(shè)計(jì)或?qū)崿F(xiàn)時(shí)再考慮它們。,篩選出正確的類與對(duì)象,在ATM系統(tǒng)的例子中,經(jīng)過(guò)初步篩選,剩下下列類與對(duì)象: 自動(dòng)取款機(jī)(ATM) 中央計(jì)算機(jī) 分行計(jì)算機(jī) 柜員終端 總行 分行 柜員 儲(chǔ)戶 賬戶 事務(wù) 現(xiàn)金兌換卡,兩個(gè)或多個(gè)對(duì)象之間

17、的相互依賴、相互作用的關(guān)系就是關(guān)聯(lián)。 分析確定關(guān)聯(lián),能促使分析員考慮問(wèn)題域的邊緣情況,有助于發(fā)現(xiàn)那些尚未被發(fā)現(xiàn)的類與對(duì)象。 初步確定關(guān)聯(lián) 大多數(shù)關(guān)聯(lián)可以通過(guò)直接提取需求陳述中的動(dòng)詞詞組而得出。 分析需求陳述,能發(fā)現(xiàn)一些在陳述中隱含的關(guān)聯(lián)。 分析員應(yīng)該與用戶及領(lǐng)域?qū)<矣懻搯?wèn)題域?qū)嶓w間的相互依賴、相互作用關(guān)系,根據(jù)領(lǐng)域知識(shí)再進(jìn)一步補(bǔ)充一些關(guān)聯(lián)。,10.3.2 確定關(guān)聯(lián),直接提取動(dòng)詞短語(yǔ)得出的關(guān)聯(lián),總行由各個(gè)分行組成。 分行保管賬戶。 總行擁有中央計(jì)算機(jī)。 系統(tǒng)維護(hù)事務(wù)日志。 系統(tǒng)提供必要的安全性。 儲(chǔ)戶擁有現(xiàn)金兌換卡。 根據(jù)問(wèn)題域知識(shí)得出的關(guān)聯(lián) 現(xiàn)金兌換卡訪問(wèn)賬戶。 分行雇用柜員。,需求陳述中隱含

18、的關(guān)聯(lián),篩選,經(jīng)初步分析得出的關(guān)聯(lián)只能作為候選的關(guān)聯(lián),還需經(jīng)過(guò)進(jìn)一步篩選,以去掉不正確的或不必要的關(guān)聯(lián)。 篩選時(shí)主要根據(jù)下述標(biāo)準(zhǔn)刪除候選的關(guān)聯(lián): 已刪去的類之間的關(guān)聯(lián) 與問(wèn)題無(wú)關(guān)或應(yīng)在實(shí)現(xiàn)階段考慮的關(guān)聯(lián) 瞬時(shí)事件 三元關(guān)聯(lián) 派生關(guān)聯(lián),已刪去的類之間的關(guān)聯(lián),如果在分析確定類與對(duì)象的過(guò)程中已經(jīng)刪掉了某個(gè)候選類,則與這個(gè)類有關(guān)的關(guān)聯(lián)也應(yīng)該刪去,或用其他類重新表達(dá)這個(gè)關(guān)聯(lián)。 以ATM系統(tǒng)為例,由于已經(jīng)刪去了系統(tǒng)、網(wǎng)絡(luò)、市、街道、成本、軟件、事務(wù)日志、現(xiàn)金、營(yíng)業(yè)廳、儲(chǔ)蓄所、賬單等候選類,因此,與這些類有關(guān)的下列八個(gè)關(guān)聯(lián)也應(yīng)該刪去: ATM、中央計(jì)算機(jī)、分行計(jì)算機(jī)及柜員終端組成網(wǎng)絡(luò)。 ATM設(shè)在主要街道上

19、。 柜員終端設(shè)在分行營(yíng)業(yè)廳及儲(chǔ)蓄所內(nèi)。 分行分?jǐn)傑浖_發(fā)成本。 ATM吐出現(xiàn)金。 ATM打印賬單。 系統(tǒng)維護(hù)事務(wù)日志。 系統(tǒng)提供必要的安全性。,與問(wèn)題無(wú)關(guān)的或應(yīng)在實(shí)現(xiàn)階段考慮的關(guān)聯(lián),應(yīng)該把處在本問(wèn)題域之外的關(guān)聯(lián)或與實(shí)現(xiàn)密切相關(guān)的關(guān)聯(lián)刪去。 例如,在ATM系統(tǒng)的例子中,“系統(tǒng)處理并發(fā)的訪問(wèn)”并沒(méi)有標(biāo)明對(duì)象之間的新關(guān)聯(lián),它只不過(guò)提醒我們?cè)趯?shí)現(xiàn)階段需要使用實(shí)現(xiàn)并發(fā)訪問(wèn)的算法,以處理并發(fā)事務(wù)。,瞬時(shí)事件,關(guān)聯(lián)應(yīng)該描述問(wèn)題域的靜態(tài)結(jié)構(gòu),而不應(yīng)該是一個(gè)瞬時(shí)事件。 以ATM系統(tǒng)為例,“ATM讀現(xiàn)金兌換卡”描述了ATM與用戶交互周期中的一個(gè)動(dòng)作,它并不是ATM與現(xiàn)金兌換卡之間的固有關(guān)系,因此應(yīng)該刪去。 類似地

20、,還應(yīng)該刪去“ATM與用戶交互”這個(gè)候選的關(guān)聯(lián)。,三元關(guān)聯(lián),三個(gè)或三個(gè)以上對(duì)象之間的關(guān)聯(lián),大多可以分解為二元關(guān)聯(lián)或用詞組描述成限定的關(guān)聯(lián)。 “柜員輸入針對(duì)賬戶的事務(wù)”可以分解成:“柜員輸入事務(wù)” 和 “事務(wù)修改賬戶” “分行計(jì)算機(jī)處理針對(duì)賬戶的事務(wù)” 可以分解成:“分行保管賬戶” 和 “事務(wù)修改賬戶” “ATM與中央計(jì)算機(jī)交換關(guān)于事務(wù)的信息” 可以分解成: “ATM與中央計(jì)算機(jī)通信”和“ATM上輸入事務(wù)”,派生關(guān)聯(lián),應(yīng)該去掉那些可以用其他關(guān)聯(lián)定義的冗余關(guān)聯(lián)。 例如,在ATM系統(tǒng)的例子中,“總行擁有多臺(tái)ATM”實(shí)質(zhì)上是“總行擁有中央計(jì)算機(jī)”和“ATM與中央計(jì)算機(jī)通信”這兩個(gè)關(guān)聯(lián)組合的結(jié)果。 而“

21、分行計(jì)算機(jī)維護(hù)賬戶”的實(shí)際含義是,“分行保管賬戶”和“事務(wù)修改賬戶”。,進(jìn)一步完善篩選后的關(guān)聯(lián), 正名:分行提供分行計(jì)算機(jī)和柜員終端 = 分行擁有分行計(jì)算機(jī) + 分行擁有柜員終端, 分解:適當(dāng)分解前面確定的class-&-objects ,使其適用于不同的關(guān)聯(lián) 事務(wù) = 遠(yuǎn)程事務(wù) + 柜員事務(wù),補(bǔ)充 柜員輸入柜員事務(wù) 在ATM上輸入遠(yuǎn)程事務(wù) 柜員事務(wù)輸進(jìn)柜員終端 遠(yuǎn)程事務(wù)由現(xiàn)金兌換卡授權(quán),標(biāo)明階數(shù)(可能經(jīng)常變動(dòng),不要花太多時(shí)間),處理后的關(guān)聯(lián),總行由各個(gè)分行組成。 總行擁有中央計(jì)算機(jī)。 中央計(jì)算機(jī)與分行通信。 ATM與中央計(jì)算機(jī)通信。 分行擁有分行計(jì)算機(jī) 分行擁有柜員終端。 柜員終端與分行計(jì)算

22、機(jī)通信。 分行雇用柜員。 柜員輸入柜員事務(wù)。 柜員事務(wù)輸入柜員終端。 柜員事務(wù)修改賬戶。 分行保管賬戶。 儲(chǔ)戶擁有賬戶。 儲(chǔ)戶擁有現(xiàn)金兌換卡。 遠(yuǎn)程事務(wù)由現(xiàn)金兌換卡授權(quán)。 在ATM上輸入遠(yuǎn)程事務(wù)。 遠(yuǎn)程事務(wù)修改賬戶。 現(xiàn)金兌換卡訪問(wèn)賬戶。,10.3.3 劃分主題,按問(wèn)題域而不是用功能分解方法來(lái)確定主題。 按照使不同主題內(nèi)的對(duì)象相互間依賴和交互最少的原則來(lái)確定主題。,10.3.4 確定屬性,屬性是對(duì)象的性質(zhì),藉助于屬性我們能對(duì)類與對(duì)象和結(jié)構(gòu)有更深入更具體的認(rèn)識(shí)。 注意,在分析階段不要用屬性來(lái)表示對(duì)象間的關(guān)系,使用關(guān)聯(lián)能夠表示兩個(gè)對(duì)象間的任何關(guān)系,而且把關(guān)系表示得更清晰、更醒目。,1分析,通常,在

23、需求陳述中用名詞詞組表示屬性,例如,“汽車的顏色”或“光標(biāo)的位置”。 不可能在需求陳述中找到所有屬性,分析員還必須藉助于領(lǐng)域知識(shí)和常識(shí)才能分析得出需要的屬性。 屬性的確定既與問(wèn)題域有關(guān),也和目標(biāo)系統(tǒng)的任務(wù)有關(guān)。 應(yīng)該僅考慮與具體應(yīng)用直接相關(guān)的屬性,不要考慮那些超出所要解決的問(wèn)題范圍的屬性。 應(yīng)該首先找出最重要的屬性,以后再逐漸把其余屬性增添進(jìn)去。 在分析階段不要考慮那些純粹用于實(shí)現(xiàn)的屬性。,2選擇,認(rèn)真考察經(jīng)初步分析而確定下來(lái)的那些屬性,從中刪掉不正確的或不必要的屬性。 通常有以下幾種常見情況: 誤把對(duì)象當(dāng)作屬性 誤把關(guān)聯(lián)類的屬性作為一般對(duì)象屬性 把限定誤當(dāng)成屬性 誤把內(nèi)部狀態(tài)當(dāng)成了屬性 過(guò)于細(xì)化 存在不一致的屬性,10.3.5 識(shí)別繼承關(guān)系,一般說(shuō)來(lái),可以使用兩種方式建立繼承(即歸納)關(guān)系: 自底向上:抽象出現(xiàn)有類的共同性質(zhì)泛化出父類,這個(gè)過(guò)程實(shí)質(zhì)上模擬了人類歸納思維

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論