《面向?qū)ο蠓治觥稰PT課件.ppt_第1頁(yè)
《面向?qū)ο蠓治觥稰PT課件.ppt_第2頁(yè)
《面向?qū)ο蠓治觥稰PT課件.ppt_第3頁(yè)
《面向?qū)ο蠓治觥稰PT課件.ppt_第4頁(yè)
《面向?qū)ο蠓治觥稰PT課件.ppt_第5頁(yè)
已閱讀5頁(yè),還剩33頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

VIP免費(fèi)下載

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

文檔簡(jiǎn)介

第6章 面向?qū)ο蠓治?4學(xué)時(shí),引言面向?qū)ο蠓治鰳?gòu)建三個(gè)模型,第6章 面向?qū)ο蠓治?1)面向?qū)ο蠓治龅姆椒?、步驟 2)面向?qū)ο蠓治龊徒Y(jié)構(gòu)化分析之間的區(qū)別 3)面向?qū)ο笮枨蠓治鲆?guī)格說(shuō)明書的主要內(nèi)容,掌握 理解 了解,要求,6.1 面向?qū)ο笮枨蠓治龈攀?面向?qū)ο蠓治龊驮O(shè)計(jì)涉及到3方面內(nèi)容: 一套完善的建模符號(hào) 一系列有效的分析步驟 一個(gè)方便易用的建模工具。 目前流行的建模符號(hào)采用UML的一套圖形符號(hào);從描述用戶需求的文件中,抽象出目標(biāo)系統(tǒng)的本質(zhì)屬性,建立以用例模型、對(duì)象模型和動(dòng)態(tài)模型為核心的分析模型;建模工具可以選擇Rational ROSE。,面向?qū)ο笮枨蠓治龅娜蝿?wù),面向?qū)ο蠓治鍪浅槿『驼碛脩粜枨蟛⒔栴}域精確模型的過程。識(shí)別問題域的對(duì)象并分析它們相互之間的關(guān)系,最終建立簡(jiǎn)潔、精確、可理解的正確模型是分析階段的關(guān)鍵。 開發(fā)人員首先要理解用戶的需求,找出描述問題域和系統(tǒng)責(zé)任所需的對(duì)象和類,將用例行為映射到對(duì)象上,進(jìn)一步分析它們的內(nèi)部構(gòu)成和外部關(guān)系,從而建立面向?qū)ο蠓治瞿P汀T诖嘶A(chǔ)上,開發(fā)人員和用戶一起檢查模型,保證模型的正確、一致、完整和可行。 面向?qū)ο蟮姆治鲞^程是一個(gè)循環(huán)漸進(jìn)過程,需要多次循環(huán)迭代完成。,面向?qū)ο笮枨蠓治?個(gè)主要模型,目前的面向?qū)ο蠓治龇椒ㄓ性S多,大多數(shù)的分析方法可以被歸結(jié)為建立以下三個(gè)模型: 功能模型:表達(dá)系統(tǒng)的詳細(xì)需求,由用例圖和場(chǎng)景描述組成 對(duì)象模型:表示靜態(tài)的、結(jié)構(gòu)化的系統(tǒng)“數(shù)據(jù)”性質(zhì)。描述現(xiàn)實(shí)世界中實(shí)體的對(duì)象以及它們之間的關(guān)系,表示目標(biāo)系統(tǒng)的靜態(tài)數(shù)據(jù)結(jié)構(gòu)。在面向?qū)ο蠓椒ㄖ?類圖是構(gòu)件對(duì)象模型的核心工具。 動(dòng)態(tài)模型:描述系統(tǒng)的動(dòng)態(tài)結(jié)構(gòu)和對(duì)象之間的交互,表示瞬時(shí)的、行為化的系統(tǒng)的“控制”特性。面向?qū)ο蠓椒ㄖ?常用狀態(tài)圖、順序圖、合作圖、活動(dòng)圖構(gòu)件系統(tǒng)的動(dòng)態(tài)模型。,6.2 創(chuàng)建用例模型,第1步:創(chuàng)建組織機(jī)構(gòu)和角色職能圖 用例模型的本質(zhì)是要確定系統(tǒng)的功能。為了解系統(tǒng)功能,我們需要一種簡(jiǎn)便的方法能夠快速有效地找出誰(shuí)使用系統(tǒng)?他們用系統(tǒng)做什么?在哪里做?什么時(shí)間做? 為了便于理解,對(duì)于信息系統(tǒng)我們建議用一張相關(guān)的組織機(jī)構(gòu)和角色職能圖來(lái)反映誰(shuí)可能使用使用系統(tǒng),做什么?在哪個(gè)部門做? 注意:這個(gè)圖不是UML的一部分。如果不是信息系統(tǒng)這個(gè)圖可能沒有意義。,第2步:確定角色 系統(tǒng)分析人員與用戶一起確定與系統(tǒng)發(fā)生交互活動(dòng)的所有角色。 使用者 如果是信息系統(tǒng),則從第1步的組織機(jī)構(gòu)和角色職責(zé)圖中能夠很容易發(fā)現(xiàn)系統(tǒng)的使用者。 如果不是信息系統(tǒng),總還有系統(tǒng)的使用者吧,把系統(tǒng)的使用者都列出來(lái)。,外部系統(tǒng) 需要與本系統(tǒng)發(fā)生關(guān)系(功能,數(shù)據(jù))的其他軟件系統(tǒng) 外部設(shè)備 與本系統(tǒng)發(fā)生關(guān)系的外部設(shè)備(控制的設(shè)備,或接受其他設(shè)備的控制) 時(shí)間 受時(shí)間影響的任務(wù)(按時(shí)間自動(dòng)觸發(fā)的任務(wù)),第3步 確定用例 確定角色之后,系統(tǒng)分析人員從每個(gè)角色出發(fā)研究該角色要干什么?把要做的事情映射到用例,研究過程中需要弄清的幾個(gè)問題: 角色要求系統(tǒng)提供哪些功能(使用者需要做什么)? 角色需要了解和處理的信息有哪些類型? 必須提醒角色的系統(tǒng)事件有哪些?角色必須提醒系統(tǒng)的事件有哪些?怎樣把這些事件表示成用例中的功能?,為了完整地描述用例,還需要知道角色的某些典型功能是否能夠被系統(tǒng)自動(dòng)實(shí)現(xiàn)? 系統(tǒng)需要的輸入輸出是什么?輸入從何處來(lái)?輸出到何處? 當(dāng)前運(yùn)行系統(tǒng)(也許是一些手工操作而不是計(jì)算機(jī)系統(tǒng))的主要問題?,第4步 確定用例模型使用用例圖展示系統(tǒng)的用例模型。,第5步 用例模型說(shuō)明包括角色說(shuō)明;用例總覽和詳述。 見用例說(shuō)明,角色說(shuō)明,用例總覽,用例詳述,第6步 用例模型評(píng)價(jià)在初步建立了用例模型后,應(yīng)該邀請(qǐng)領(lǐng)域?qū)<液推渌嚓P(guān)的用戶一起對(duì)模型進(jìn)行評(píng)審,回答下面的問題: 是否已將所有必須的功能性需求都捕獲為用例。 每個(gè)用例的動(dòng)作系列是否正確、完善、易于理解。 是否已經(jīng)確定了一些價(jià)值很小或根本沒有價(jià)值的用例,如果又將它們刪除。,第7步 優(yōu)化用例模型系統(tǒng)分析員檢查模型中的每個(gè)用例,提煉出公共部分,創(chuàng)建抽象用例,并用使用關(guān)系與之連接;確定補(bǔ)充功能或可選功能;檢查每個(gè)用例,如果發(fā)現(xiàn)一個(gè)用例比較大,并且其中既包含了一般處理又包含了特殊處理,那么則應(yīng)該將特殊處理的部分提取出來(lái),創(chuàng)建單獨(dú)的用例,并且用擴(kuò)展關(guān)系連接相關(guān)的用例。這樣做可以減小用例規(guī)模,簡(jiǎn)化用例的處理。,第8步 構(gòu)造用戶界面的原型 系統(tǒng)分析員已經(jīng)確定了用例與角色之間的對(duì)應(yīng)關(guān)系,現(xiàn)在要確定角色如何啟動(dòng)用例,以及用例以什么形式向角色提供信息。這項(xiàng)活動(dòng)的結(jié)果是用戶界面原型。,界面設(shè)計(jì)人員考慮下面的問題:,需要哪些界面元素來(lái)啟動(dòng)用例? 用戶界面元素之間如何相關(guān)? 用戶界面看起來(lái)應(yīng)該是什么樣的? 應(yīng)該如何處理這些用戶界面元素? 針對(duì)所涉及的業(yè)務(wù)領(lǐng)域,對(duì)用戶界面元素有何特殊要求? 角色可以激發(fā)哪些動(dòng)作?在激發(fā)這些動(dòng)作前需要哪些指南? 角色向系統(tǒng)提供什么信息? 系統(tǒng)向角色提供什么信息? 每項(xiàng)輸入/輸出的長(zhǎng)度和類型是什么?,6.3 創(chuàng)建對(duì)象模型,第1步:識(shí)別分析類。 分析用例模型的每個(gè)用例,確定實(shí)現(xiàn)用例的類,分析每個(gè)類的職責(zé)、屬性和關(guān)聯(lián)。 將參與用例實(shí)現(xiàn)的類收集到一個(gè)類圖中。 界面類描述系統(tǒng)與角色之間的接口。 控制類在分析模型內(nèi)表示協(xié)調(diào)、順序、事務(wù)處理以及控制其他對(duì)象的類。 實(shí)體型為需要長(zhǎng)久保存的信息進(jìn)行建模的類。,識(shí)別邊界類,在每一個(gè)用例中,每一個(gè)參與者至少與一個(gè)邊界類進(jìn)行交互。 邊界類擔(dān)負(fù)著協(xié)調(diào)參與者與用例之間的交互職責(zé)。因此初步給每一對(duì)(參與者,用例)確定一個(gè)邊界類,并在分析的過程中有可能進(jìn)行分解和合并。,用戶界面的位置,識(shí)別控制類,控制類負(fù)責(zé)協(xié)調(diào)邊界類和實(shí)體類,通常在現(xiàn)實(shí)世界中沒有對(duì)應(yīng)的事物。它負(fù)責(zé)接收邊界類的信息,并將其分發(fā)給實(shí)體類。對(duì)于控制類來(lái)說(shuō),我們初步給每個(gè)用例設(shè)置一個(gè)控制類,隨著分析的發(fā)展有可能進(jìn)行分解和合并。,注意:,在有些情況下,用例事件流的邏輯結(jié)構(gòu)十分簡(jiǎn)單,這時(shí)沒有必要使用控制類,邊界類可以實(shí)現(xiàn)用例的行為,例如圖書館圖書信息關(guān)系系統(tǒng)中的“登錄”用例就是這種情況。 當(dāng)用例比較復(fù)雜時(shí),特別是產(chǎn)生分支事件流的情況下,一個(gè)用例可以有多個(gè)控制類。,識(shí)別實(shí)體類,實(shí)體類通常是用例中的參與對(duì)象,對(duì)應(yīng)著現(xiàn)實(shí)世界中的“事物”。識(shí)別實(shí)體類需要開發(fā)人員進(jìn)一步理解應(yīng)用領(lǐng)域,可以通過分析用例描述和詞匯表等發(fā)現(xiàn)備選的實(shí)體對(duì)象。,可能作為實(shí)體類的選擇,第2步 構(gòu)造類圖,6.4 構(gòu)造動(dòng)態(tài)模型,通過描述分析類實(shí)例之間的消息傳遞將用例的職責(zé)分配到分析類中。 在初步找出一些分析類之后,用順序圖將用例和分析對(duì)象聯(lián)系在一起,描述用例的行為是怎樣在它的參與對(duì)象之間分布的。順序圖可以將用例的行為分配到所識(shí)別的分析類中,并且?guī)椭_發(fā)人員發(fā)現(xiàn)和補(bǔ)充前面遺漏的分析類。例如,圖書館信息管理系統(tǒng)“借書”用例的順序圖,6.5 評(píng)價(jià)分析模型,為了使需求評(píng)審工作更加具有可操作性,下面列出了一些問題清單: 1檢查“正確性”的問題列表 用戶是否可以理解實(shí)體對(duì)象的術(shù)語(yǔ)表? 抽象類與用戶層次上的概念對(duì)應(yīng)嗎? 所有的描述都與用戶定義一致嗎? 所有的實(shí)體類和邊界類都使用具有實(shí)際含義的名詞短語(yǔ)嗎? 所有的用例和控制類都使用具有實(shí)際含義的動(dòng)詞短語(yǔ)嗎? 所有的異常情況都被描述和處理了嗎? 是否描述了系統(tǒng)的啟動(dòng)和關(guān)閉? 是否描述了系統(tǒng)功能的管理?,2檢查“完整性”的問題列表 每一個(gè)分析類都是用例需要的嗎?它在什么用例中被創(chuàng)建、修改和刪除?是否存在邊界類可以訪問它? 每一個(gè)屬性是在什么時(shí)候設(shè)置的?類型是什么?它是限定詞嗎? 每一個(gè)關(guān)系是在什么時(shí)候被遍歷?為什么選擇指定的基數(shù)?一對(duì)多和多對(duì)多的關(guān)系能被限定嗎? 每一個(gè)控制類對(duì)象是否有必要訪問參與用例的對(duì)象?,3檢查“一致性”的問題列表 類或用例有重名嗎? 具有相同名字的實(shí)體表示相同的對(duì)象嗎? 所有的實(shí)體都以同樣的細(xì)節(jié)進(jìn)行描述嗎? 是否存在具有相同屬性和關(guān)系卻不在同一個(gè)繼承層次中的對(duì)象?,4檢查“可行性”的問題列表 系統(tǒng)中有什么創(chuàng)新之處?建立了什么計(jì)劃或原型來(lái)確保這些創(chuàng)新的可行性? 性能是否符合可靠性需求?這些需求是否已被運(yùn)行在指定硬件上進(jìn)行原型驗(yàn)證?,6.6 面向?qū)ο蟮男枨笠?guī)格說(shuō)明書,面向?qū)ο蟮男枨蠓治鍪褂玫姆椒ê凸ぞ吲c結(jié)構(gòu)化方法有很大的區(qū)別,本小節(jié)給出一個(gè)基于面向?qū)ο蠓椒ǖ男枨笠?guī)格說(shuō)明書的文檔模板。 見模板,本章要點(diǎn),面向?qū)ο蠓治龊驮O(shè)計(jì)用到的三個(gè)內(nèi)容:一套完善的建模符號(hào)、一系列有效的分析步驟和一個(gè)方便易用的建模工具。 面向?qū)ο蟮姆治瞿P陀晒δ苣P?、?duì)象

溫馨提示

  • 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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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)論