已閱讀5頁,還剩28頁未讀, 繼續(xù)免費閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
確定屬性的過程包括分析和選擇兩個步驟。 1. 分析(Adjective and Noun phrase for Attribute Candidate) 在需求陳述中用名詞詞組表示屬性。 例如,“汽車的顏色”或“光標(biāo)的位置”。往往用形容詞表示可枚舉的具體屬性,例如,“紅色的”、“打開的”。但是,不可能在需求陳述中找到所有屬性,分析員還必須藉助于領(lǐng)域知識和常識才能分析得出需要的屬性。,10.3.4 確定屬性(Identifying attribute),2. 選擇(Choose Proper Attribute) 刪掉不正確的或不必要的屬性。 (1) 誤把對象當(dāng)作屬性 例如,在郵政目錄中,“城市”是一個屬性,而在人口普查中卻應(yīng)該把“城市”當(dāng)作對象。,(2) 誤把關(guān)聯(lián)類的屬性當(dāng)作一般對象的屬性 如果某個性質(zhì)依賴于某個關(guān)聯(lián)鏈的存在,則該性質(zhì)是關(guān)聯(lián)類的屬性,在分析階段不應(yīng)該把它作為一般對象的屬性。 (3) 把限定誤當(dāng)成屬性 在ATM系統(tǒng)的例子中,“分行代碼”、“賬號”、“雇員號”、“站號”等都是限定詞。,(4) 誤把內(nèi)部狀態(tài)當(dāng)成了屬性 如果某個性質(zhì)是對象的非公開的內(nèi)部狀態(tài),則應(yīng)該從對象模型中刪掉這個屬性。 (5) 過于細(xì)化 在分析階段應(yīng)該忽略那些對大多數(shù)操作都沒有影響的屬性。 (6) 存在不一致的屬性 類應(yīng)該是簡單而且一致的。如果得出一些看起來與其他屬性毫不相關(guān)的屬性,則應(yīng)該考慮把該類分解成兩個不同的類。,10.3.5 識別繼承關(guān)系(Recognising Inheritance) 用兩種方式建立繼承(即泛化)關(guān)系: 利用繼承機制共享公共性質(zhì),并對系統(tǒng)中眾多的類加以組織。 (1) 自底向上: 抽象出現(xiàn)有類的共同性質(zhì)泛化出父類,這個過程實質(zhì)上模擬了人類歸納思維過程。 例如,在ATM系統(tǒng)中,“遠(yuǎn)程事務(wù)”和“柜員事務(wù)”是類似的,可以泛化出父類“事務(wù)”;類似地,可以從“ATM”和“柜員終端”泛化出父類“輸入站”。,(2) 自頂向下: 把現(xiàn)有類細(xì)化成更具體的子類,這模擬了人類的演繹思維過程。 利用多重繼承可以提高共享程度,但是同時也增加了概念上以及實現(xiàn)時的復(fù)雜程度。使用多重繼承機制時,通常應(yīng)該指定一個主要父類,從它繼承大部分屬性和行為;次要父類只補充一些屬性和行為。 圖10.5增加了繼承關(guān)系之后的ATM對象模型。,10.3.6 反復(fù)修改(Repetitious Modification) 1. 分解“現(xiàn)金兌換卡”類 把“現(xiàn)金兌換卡”類分解為“卡權(quán)限”和“現(xiàn)金兌換卡”兩個類,將使每個類的功能更單一:前一個類標(biāo)志儲戶訪問賬戶的權(quán)限,后一個類是含有分行代碼和卡號的數(shù)據(jù)載體。多張現(xiàn)金兌換卡可能對應(yīng)著相同的訪問權(quán)限。,2. “事務(wù)”由“更新”組成 通常,一個事務(wù)包含對賬戶的若干次更新,這里所說的更新,指的是對賬戶所做的一個動作(取款、存款或查詢)。“更新”雖然代表一個動作,但是它有自己的屬性(類型、金額等),應(yīng)該獨立存在,因此應(yīng)該把它作為類。 3. 把“分行”與“分行計算機”合并 區(qū)分“分行”與“分行計算機”,對于分析這個系統(tǒng)來說,并沒有多大意義,為簡單起見,應(yīng)該把它們合并。類似地,應(yīng)該合并“總行”和“中央計算機”。,10.4 建立動態(tài)模型(Dynamic Modeling) 第一步是編寫典型交互行為的腳本。 第二步,從腳本中提取出事件,確定觸發(fā)每個事件的動作對象以及接受事件的目標(biāo)對象。 第三步,排列事件發(fā)生的次序,確定每個對象可能有的狀態(tài)及狀態(tài)間的轉(zhuǎn)換關(guān)系,并用狀態(tài)圖描繪它們。 最后,比較各個對象的狀態(tài)圖,檢查它們之間的一致性,確保事件之間的匹配。 本節(jié)結(jié)合ATM系統(tǒng)的實例,進(jìn)一步講述建立動態(tài)模型的方法。,在建立動態(tài)模型的過程中,腳本是指系統(tǒng)在某一執(zhí)行期間內(nèi)出現(xiàn)的一系列事件。 腳本描述用戶(或其他外部設(shè)備)與目標(biāo)系統(tǒng)之間的一個或多個典型的交互過程,以便對目標(biāo)系統(tǒng)的行為有更具體的認(rèn)識。 編寫腳本的目的,是保證不遺漏重要的交互步驟,它有助于確保整個交互過程的正確性的和清晰性。 ATM系統(tǒng)的正常情況腳本和異常情況腳本(240頁)。,10.4.1 編寫腳本(Writing Script),大多數(shù)交互行為都可以分為應(yīng)用邏輯和用戶界面兩部分。 采用不同界面(例如,命令行或圖形用戶界面),可以實現(xiàn)同樣的程序邏輯。應(yīng)用邏輯是內(nèi)在的、本質(zhì)的內(nèi)容,用戶界面是外在的表現(xiàn)形式。 動態(tài)模型著重表示應(yīng)用系統(tǒng)的控制邏輯。,10.4.2 設(shè)想用戶界面(User Interface Design),圖10.7 ATM的界面格式,完整、正確的腳本為建立動態(tài)模型奠定了必要的基礎(chǔ)。但是,用自然語言書寫的腳本往往不夠簡明,而且有時在閱讀時會有二義性。為了有助于建立動態(tài)模型,通常在畫狀態(tài)圖之前先畫出事件跟蹤圖。為此首先需要進(jìn)一步明確事件及事件與對象的關(guān)系。,10.4.3 畫事件跟蹤圖(Drawing Events Track Diagram),1. 確定事件(Identifying events) 應(yīng)該仔細(xì)分析每個腳本,以便從中提取出所有外部事件。 2. 畫出事件跟蹤圖(Drawing Events Track Diagram) 從腳本中提取出各類事件并確定了每類事件的發(fā)送對象和接受對象之后,就可以用事件跟蹤圖把事件序列以及事件與對象的關(guān)系,形象、清晰地表示出來。事件跟蹤圖是簡化的UML順序圖。 在事件跟蹤圖中,一條豎線代表一個對象,每個事件用一條水平的箭頭線表示,箭頭方向從事件的發(fā)送對象指向接受對象。時間從上向下遞增。圖中僅用箭頭線在垂直方向上的相對位置表示事件發(fā)生的先后。,狀態(tài)圖描繪事件與對象狀態(tài)的關(guān)系。當(dāng)對象接受了一個事件以后,引起的狀態(tài)改變稱為“轉(zhuǎn)換”。 用一張狀態(tài)圖描繪一類對象的行為,它確定了由事件序列引出的狀態(tài)序列。僅考慮具有重要交互行為的那些類。 考慮事件跟蹤圖中指向某條豎線的那些箭頭線。把這些事件作為狀態(tài)圖中的有向邊(即箭頭線),邊上標(biāo)以事件名。兩個事件之間的間隔就是一個狀態(tài)。 從事件跟蹤圖中的豎線射出的箭頭線,是這條豎線代表的對象達(dá)到某個狀態(tài)時所做的行為(往往是引起另一類對象狀態(tài)轉(zhuǎn)換的事件)。,10.4.4 畫狀態(tài)圖(Drawing States Diagram),考慮完正常事件之后再考慮邊界情況和特殊情況,出錯處理是不能省略的。 “ATM”、“總行”和“分行”的狀態(tài)圖。 這些狀態(tài)圖都是簡化的,尤其對異常情況和出錯情況的考慮是相當(dāng)粗略的。,圖10.10 總行類的狀態(tài)圖,圖10.11 分行類的狀態(tài)圖,各個類的狀態(tài)圖通過共享事件合并起來,構(gòu)成了系統(tǒng)的動態(tài)模型。 在完成了每個具有重要交互行為的類的狀態(tài)圖之后,應(yīng)該檢查系統(tǒng)級的完整性和一致性。,10.4.5 審查動態(tài)模型(Review Dynamic Model),功能模型表明了系統(tǒng)中數(shù)據(jù)之間的依賴關(guān)系,以及有關(guān)的數(shù)據(jù)處理功能,它由一組數(shù)據(jù)流圖(DFD)組成。其中的處理功能可以用IPO圖(或表)、偽碼等多種方式進(jìn)一步描述。 通常在建立了對象模型和動態(tài)模型之后再建立功能模型。,10.5 建立功能模型(Function Modeling),1. 常規(guī)行為( Actions) 在分析階段可以認(rèn)為,類中定義的每個屬性都是可以訪問的,也就是說,假設(shè)在每個類中都定義了讀、寫該類每個屬性的操作。但是,通常無需在類圖中顯式表示這些常規(guī)操作。,10.6 定義服務(wù)(Definition Service),2. 從事件導(dǎo)出的操作(Operations) 狀態(tài)圖中發(fā)往對象的事件也就是該對象接收到的消息,因此該對象必須有由消息選擇符指定的操作,這個操作修改對象狀態(tài)(即屬性值)并啟動相應(yīng)的服務(wù)。 例如,在ATM系統(tǒng)中,發(fā)往ATM對象的事件“中止”,啟動該對象的服務(wù)“打印賬單”; 發(fā)行分行的事件“請分行驗卡”啟動該對象的服務(wù)“驗證卡號”; 而事件“處理分行事務(wù)”啟動分行對象的服務(wù)“更新賬戶”。 所啟動的這些服務(wù)通常就是接受事件的對象在相應(yīng)狀態(tài)的行為。,3. 與數(shù)據(jù)流圖中處理框?qū)?yīng)的操作(Process of DFD) 數(shù)據(jù)流圖中的每個處理框都與一個對象(也可能是若干個對象)上的操作相對應(yīng)。 應(yīng)該仔細(xì)對照狀態(tài)圖和數(shù)據(jù)流圖,以便更正確地確定對象應(yīng)該提供的服務(wù)。 例如,在ATM系統(tǒng)中,從狀態(tài)圖上看出分行對象應(yīng)該提供“驗證卡號”服務(wù),而在數(shù)據(jù)流圖上與之對應(yīng)的處理框是“驗卡”,根據(jù)實際應(yīng)該完成的功能看,該對象提供的這個服務(wù)應(yīng)該是“驗卡”。,4. 利用繼承減少冗余操作(Inheritance Operations) 應(yīng)該盡量利用繼承機制以減少所需定義的服務(wù)數(shù)目。只要不違背領(lǐng)域知識和常識,就盡量抽取出相似類的公共屬性和操作,以建立這些類的新父類,并在類等級的不同層次中正確地定義各個服務(wù)。,10-1 用面向?qū)ο蠓椒ǚ治鲅芯勘緯?xí)題2第2題中描述的儲蓄系統(tǒng),試建立它的對象模型、動態(tài)模型和功能模型。 10-2 用面向?qū)ο蠓椒ǚ治鲅芯勘緯?xí)題2第3題中描述的機票預(yù)訂系統(tǒng),試建立它的對象模型、動態(tài)模型和功能模型。 10-3 用面向?qū)ο蠓椒ǚ治鲅芯勘緯?xí)題2第4題中描述的患者監(jiān)護(hù)系統(tǒng),試建立它的對象模型、動態(tài)模型和功能模型。 10-4 下面是自動售貨機系統(tǒng)的需求陳述,請建立它的對象模型、動態(tài)模型和功能模型:,習(xí)題,自動售貨機系統(tǒng)是一種無人售貨系統(tǒng)。售貨時,顧客把硬幣投入機器的投幣口中,機器檢查硬幣的大小、重量、厚度及邊緣類型。有效的硬幣是一元幣、五角幣、一角幣、五分幣、二分幣和一分幣。其他貨幣都被認(rèn)為是假幣。機器拒絕接收假幣,并將其從退幣孔退出。當(dāng)機器接收了有效的硬幣之后,就把硬幣送入硬幣儲藏器中。顧客支付的貨幣根據(jù)硬幣的面值進(jìn)行累加。,自動售貨機裝有貨物分配器。
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度熟食加工企業(yè)環(huán)保設(shè)施租賃合同2篇
- 二零二五年飼料生產(chǎn)廢棄物處理合同2篇
- 2024有關(guān)工程合作協(xié)議書模板
- 2025年度文化產(chǎn)業(yè)并購知識產(chǎn)權(quán)許可及運營合同3篇
- 二零二五版吊車租賃項目驗收與交付合同3篇
- 二零二五版?zhèn)}單質(zhì)押擔(dān)保與倉儲物流合同3篇
- 2025年度綠色能源廠房租賃合同補充協(xié)議3篇
- 個性化家裝服務(wù)詳細(xì)協(xié)議條款版A版
- 二零二五版生物醫(yī)藥廠房租賃安全協(xié)議范本3篇
- 二零二五年防火門產(chǎn)品認(rèn)證與安裝服務(wù)合同2篇
- 三晶8000B系列變頻器說明書
- 幽默動感年會互動PPT演示模板
- 麒麟小學(xué)創(chuàng)建五好關(guān)工委工作實施方案
- 地化錄井技術(shù)在油田勘探開發(fā)中的應(yīng)用-李斌
- GB/T 23315-2009粘扣帶
- GB/T 10228-2015干式電力變壓器技術(shù)參數(shù)和要求
- 會議系統(tǒng)大會議室報價清單
- 2休閑食品市場營銷策劃案1
- 全國高校第三輪學(xué)科評估按大學(xué)匯總
- 社區(qū)衛(wèi)生服務(wù)中心裝飾施工組織設(shè)計(86頁)
- 送達(dá)地址確認(rèn)書(法院最新版)
評論
0/150
提交評論