(完整文檔版)UML基礎(chǔ)與Rose建模復(fù)習(xí)資料_第1頁
(完整文檔版)UML基礎(chǔ)與Rose建模復(fù)習(xí)資料_第2頁
(完整文檔版)UML基礎(chǔ)與Rose建模復(fù)習(xí)資料_第3頁
(完整文檔版)UML基礎(chǔ)與Rose建模復(fù)習(xí)資料_第4頁
(完整文檔版)UML基礎(chǔ)與Rose建模復(fù)習(xí)資料_第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

UML基礎(chǔ)與Rose建模復(fù)習(xí)資料1-4章一、主要內(nèi)容1、對象與類的定義對象:是面向?qū)ο笙到y(tǒng)的基本構(gòu)造塊,是一些相關(guān)的變量和方法的軟件集。(對象經(jīng)常用于建立對現(xiàn)實(shí)世界中的一些基本構(gòu)造塊)注:客觀世界里的任何實(shí)體都可以被稱為對象。對象可以是具體的、有形的物,也可以是無形的事物或概念。對象是問題域或?qū)崿F(xiàn)域中某些事物的一個(gè)抽象。對象是一個(gè)封裝數(shù)據(jù)屬性和操作行為的實(shí)體。類:是具有相同屬性和操作的一組對象的組合。也就是說,抽象模型中的“類”描述了一組相似對象的共同特征,為屬于該類的全部對象提供了統(tǒng)一的抽象描述。2、面向?qū)ο蟮幕咎卣鳎?)抽象:抽象忽略了事件中與當(dāng)前目標(biāo)無關(guān)的非本質(zhì)特征,強(qiáng)調(diào)與當(dāng)前事物相關(guān)的特征,并將事物正確的歸類,得出事物的抽象模型,并且為對象的重用提供了保障2)封裝:就是把對象的狀態(tài)和行為綁到一起的機(jī)制,使對象形成一個(gè)獨(dú)立的整體,并且盡可能地隱藏對象的內(nèi)部細(xì)節(jié)。3)繼承:是指特殊類的對象擁有其一般類的屬性和行為。4)多態(tài)性:同一操作作用于不同的對象,可以有不同的解釋,產(chǎn)生不同的執(zhí)行結(jié)果。3、UML包含的視圖以及這些視圖都對應(yīng)的圖UML中主要視圖有:靜態(tài)視圖、用例視圖、交互視圖、狀態(tài)機(jī)視圖、活動(dòng)視圖、物理視圖、模型管理視圖對應(yīng)的圖如下圖所示4、UML包含的圖以及圖的作用在下面的各章節(jié)中都分別有總結(jié),這里就不總結(jié)5、UML中模型元素的主要關(guān)系UML中主要包含4種關(guān)系:依賴、關(guān)聯(lián)、泛化、實(shí)現(xiàn)依賴:指的是兩個(gè)事物之間的語義,當(dāng)其中一個(gè)事物(獨(dú)立的事物)發(fā)生變化就會(huì)影響另外一個(gè)事物(依賴事物)的語義。關(guān)聯(lián):是一種事物之間的結(jié)構(gòu)關(guān)系,用它來描述一組鏈,鏈?zhǔn)菍ο笾g的連接。泛化:事物之間的一種特殊/一般關(guān)系,特殊原子(子元素)的對象,也就是我們在面向?qū)ο髮W(xué)中常常提起的繼承。實(shí)現(xiàn):實(shí)現(xiàn)關(guān)系也是UML元素之間的一種語義關(guān)系,它描述了一組操作的規(guī)約和一組對操作的具體實(shí)現(xiàn)之間的語義關(guān)系。6、對象約束語言的定義對象約束語言(OCL)是一種能夠使用工具進(jìn)行解釋的表達(dá)UML約束的標(biāo)準(zhǔn)方法。對象約束語言包含如下4個(gè)基本特征:●對象約束語言不僅是查詢語言,還是約束語言?!駥ο蠹s束語言是基于數(shù)學(xué)的,但是卻沒有使用相關(guān)數(shù)學(xué)符號(hào)的內(nèi)容?!駥ο蠹s束語言是一種強(qiáng)類型的語言?!駥ο蠹s束語言也是一種聲明式語言。7、RationalRose可以建立的視圖以及這些視圖的作用使用RationalRose建立的Rose模型中包含四種視圖:用例視圖、邏輯視圖、構(gòu)件視圖、部署視圖。用例視圖:關(guān)注的是系統(tǒng)功能的高層抽象,適合于對系統(tǒng)進(jìn)行分析和獲取需求,而不關(guān)注于系統(tǒng)的具體實(shí)現(xiàn)方法。在用例視圖中可以添加參與者、用例、用例圖、順序圖、協(xié)作圖、狀態(tài)圖、活動(dòng)圖、類圖等邏輯視圖:關(guān)注系統(tǒng)如何實(shí)現(xiàn)用例中所描述的功能,主要是對系統(tǒng)功能性需求提供支持。邏輯視圖中的模型元素可以包括類、類工具、用例、接口、類圖、用例圖、順序圖、協(xié)作圖、活動(dòng)圖、狀態(tài)圖等構(gòu)件視圖:用來描述系統(tǒng)中各個(gè)實(shí)現(xiàn)模塊以及它們之間的依賴關(guān)系。在構(gòu)件視圖中可以創(chuàng)建包、構(gòu)件、構(gòu)件圖等部署視圖:顯示的是系統(tǒng)的實(shí)際部署情況,它是為了便于理解系統(tǒng)如何在一組處理節(jié)點(diǎn)上的物理分布,而在分析和設(shè)計(jì)中使用構(gòu)架視圖。在系統(tǒng)中只包含一個(gè)部署視圖。在部署視圖中可以創(chuàng)建處理器、設(shè)備等模型元素。二、選擇題1、下列關(guān)于UML敘述不正確的是(B)AUML是一種語言,語言的使用者可以對其擴(kuò)展BUML僅是一組圖形的集合CUML僅適用于整個(gè)軟件開發(fā)過程DUML是獨(dú)立于軟件開發(fā)過程的2、UML的英文全稱是(A)A、UnifiedModelingLanguageB、UserManageLanguageC、UnitModelingLanguageD、UnifiedManagingLanguage3、定義大多數(shù)的需求和范圍的工作是在RUP中的B階段完成的。A初始階段B細(xì)化階段C構(gòu)造階段D提交階段4、在面向?qū)ο蟮姆椒▽W(xué)中,對象可看成是屬性及對于這些屬性的專用服務(wù)的封裝體。封裝是一種(1)D技術(shù),封裝的目的是使對象的(2)A分離。(1)A組裝B產(chǎn)品化C固化D信息隱藏(2)A定義和實(shí)現(xiàn)B設(shè)計(jì)和測試C設(shè)計(jì)和實(shí)現(xiàn)D分析和定義5、類是一組具有相同屬性的和相同服務(wù)的對象的抽象描述,類中的每個(gè)對象都是這個(gè)類的一個(gè)(1)C。類之間共享屬性與服務(wù)的機(jī)制稱為(2)D。一個(gè)對象通過發(fā)送(3)B來請求另一個(gè)對象為其服務(wù)。(1)A例證B用例C實(shí)例D例外(2)A多態(tài)性B動(dòng)態(tài)綁定C靜態(tài)綁定D繼承(3)A調(diào)用語句B消息C命令D口令6、下列描述中,哪個(gè)不是建模的基本原則(D)A.要仔細(xì)的選擇模型B.每一種模型可以在不同的精度級(jí)別上表示所要開發(fā)的系統(tǒng)C.模型要與現(xiàn)實(shí)相聯(lián)系D.對一個(gè)重要的系統(tǒng)用一個(gè)模型就可以充分描述7、UML體系包括三個(gè)部分:UML基本構(gòu)造塊,(A)和UML公共機(jī)制A、UML規(guī)則B、UML命名C、UML模型D、UML約束8、UML中的事物包括:結(jié)構(gòu)事物,分組事物,注釋事物和(D)A、實(shí)體事物B、邊界事物C、控制事物D、行為事物9、(A)模型的缺點(diǎn)是缺乏靈活性,特別是無法解決軟件需求不明確或不準(zhǔn)確的問題A、瀑布模型B、原型模型C、增量模型D、螺旋模型10、類圖應(yīng)該畫在Rose的哪種(B)視圖中A、UseCaseViewB、LogicViewC、ComponentViewD、DeploymentView11、組件圖用于對系統(tǒng)的靜態(tài)實(shí)現(xiàn)視圖建模,這種視圖主要支持系統(tǒng)部件的配置管理,通??梢苑譃樗姆N方式來完成,下面哪種不是其中之一(B)A.對源代碼建模B.對事物建模C.對物理數(shù)據(jù)庫建模D.對可適應(yīng)的系統(tǒng)建模12、下列關(guān)于面向?qū)ο蟮姆治雠c設(shè)計(jì)的描述正確的是(B)。A、面向?qū)ο笤O(shè)計(jì)描述軟件要做什么B、面向?qū)ο蠓治霾恍枰紤]技術(shù)和實(shí)現(xiàn)層面的細(xì)節(jié)C、面向?qū)ο蠓治龅妮斎胧敲嫦驅(qū)ο笤O(shè)計(jì)的結(jié)果D、面向?qū)ο笤O(shè)計(jì)的結(jié)果是簡單的分析模型13、UML的(B)模型圖由類圖、對象圖、包圖、構(gòu)件圖和配置圖組成。A用例B靜態(tài)C動(dòng)態(tài)D系統(tǒng) 14、RUP中有(C)個(gè)核心過程工作流。(A)1 (B)3 (C)6 (D)9三、填空題1、UML基礎(chǔ)于面向?qū)ο蠓椒ā?、領(lǐng)域模型是一組表示真實(shí)世界的概念類,不是軟件部件的模型。3、用例視圖描述了系統(tǒng)的參與者與系統(tǒng)進(jìn)行交互的功能,是參與者所能觀察和使用到的系統(tǒng)功能的模型圖。一個(gè)用例是系統(tǒng)的一個(gè)功能單元,是參與者與系統(tǒng)之間進(jìn)行的一次交互作用。4、狀態(tài)機(jī)視圖是通過對象的各種狀態(tài)建立模型來描述對象隨時(shí)間變化的動(dòng)態(tài)行為,并且它是以獨(dú)立的對象為中心進(jìn)行描述的。5、在UML中定義了4種基本的面向?qū)ο蟮氖挛?,分別是結(jié)構(gòu)事物、行為事物、分組事物、注釋事物。6、軟件對象可以這樣定義:所謂軟件對象,是一種將狀態(tài)和行為有機(jī)結(jié)合起來形成的構(gòu)造模型,它可以用來描述現(xiàn)實(shí)世界中的一個(gè)對象。7、Rational統(tǒng)一過程以一種能夠被大多數(shù)項(xiàng)目和開發(fā)組織適應(yīng)的形式建立起來,其包含的6項(xiàng)最佳實(shí)踐為:迭代式軟件開發(fā)、需求管理、基于構(gòu)件的架構(gòu)應(yīng)用、建立可視化的軟件模型、軟件質(zhì)量驗(yàn)證、軟件變更控制。8、在Rational統(tǒng)一過程的開發(fā)流程中定義了“誰”,“何時(shí)”,“如何”做“某事”,并分別使用四種主要的建模元素來進(jìn)行表達(dá),它們分別是角色、活動(dòng)、產(chǎn)物和工作流。9、對于一個(gè)以架構(gòu)為中心的開發(fā)組織,需要對架構(gòu)的3個(gè)方面進(jìn)行關(guān)注,這3個(gè)方面分別是:架構(gòu)的目的、架構(gòu)的表示、架構(gòu)的過程。10、Rose的正向工程以組件為單位,把模型中的一個(gè)或多個(gè)類圖轉(zhuǎn)換為java源代碼的過程。逆向工程是把代碼轉(zhuǎn)換為設(shè)計(jì)模型。11、UML由視圖、圖、模型元素和通用機(jī)制四個(gè)部分組成。12、UML中的建模機(jī)制分為靜態(tài)建模機(jī)制和動(dòng)態(tài)建模機(jī)制。四、簡答題1、簡述統(tǒng)一建模語言(UML)統(tǒng)一建模語言(UML)是一種繪制軟件藍(lán)圖的標(biāo)準(zhǔn)語言??梢杂肬ML對軟件密集型系統(tǒng)的制品進(jìn)行可視化詳述和文檔化。UML是一種定義良好、易于表達(dá)、功能強(qiáng)大且普遍適用的可視化建模語言。它融入了軟件工程領(lǐng)域的新思想、新方法和新技術(shù)。它的作用域不限于支持面向?qū)ο蟮姆治雠c設(shè)計(jì),還支持從需求分析開始的軟件開發(fā)的全過程。UML的作用就是用很多圖從靜態(tài)和動(dòng)態(tài)方面來全面描述我們將要開發(fā)的系統(tǒng)。2、統(tǒng)一過程中有哪四個(gè)階段,各階段需要完成的主要工作有哪些?答:1)初始階段:編制簡要的構(gòu)想文檔、業(yè)務(wù)案例、確定范圍、粗略評(píng)估成本。2)細(xì)化階段:細(xì)化構(gòu)想文檔、迭代地實(shí)現(xiàn)核心構(gòu)架、解決高風(fēng)險(xiǎn)的問題、定義大多數(shù)的需求和范圍、進(jìn)一步評(píng)估成本3)構(gòu)建階段:迭代地實(shí)現(xiàn)系統(tǒng)的其余部分、準(zhǔn)備部署4)移交階段:beta測試、部署3、面向?qū)ο蠓椒ㄓ心男┲饕攸c(diǎn)?答:(1)使人們更好地認(rèn)識(shí)客觀世界。(2)能更好地適應(yīng)需求變化(3)容易實(shí)現(xiàn)軟件復(fù)用(4)系統(tǒng)易于維護(hù)和修改4、OOA主要遵循哪些原則?答:(1)構(gòu)造和分解相結(jié)合的原則(2)抽象化和具體化相結(jié)合的原則(3)封裝的原則(4)行為約束的原則第5章、用例圖一、主要內(nèi)容1、用例圖的定義與作用定義:由參與者、用例以及它們之間的關(guān)系構(gòu)成的用于描述系統(tǒng)功能的動(dòng)態(tài)視圖。作用:用例圖是從軟件需求分析到最終實(shí)現(xiàn)的第一步,它顯示了系統(tǒng)的用戶和用戶希望提供的功能,有利于用戶和軟件開發(fā)人員之間的溝通。用例圖可視化地表達(dá)了系統(tǒng)的需求,具有直觀、規(guī)范等優(yōu)點(diǎn),克服了純文字說明的不足。用例方法是完全從外部來定義系統(tǒng)功能的,它把需求與設(shè)計(jì)完全的分離開來,使用戶不用關(guān)心系統(tǒng)內(nèi)部是如何完成各種功能。2、用例圖的組成組成要素:參與者、用例、系統(tǒng)邊界、關(guān)聯(lián)參與者:指存在于系統(tǒng)外部并直接與系統(tǒng)進(jìn)行交互的人、系統(tǒng)、子系統(tǒng)或類的外部實(shí)體的抽象。注:(1)是系統(tǒng)外的一個(gè)實(shí)體,參與者通過向系統(tǒng)輸入或者系統(tǒng)要求參與者提供某種信息來進(jìn)行交互。(2)參與者用于表示使用系統(tǒng)的對象。(3)參與者的特征是其作為外部用戶與系統(tǒng)發(fā)生交互。(4)參與者總是處理正在建模的系統(tǒng)的外部,它們不是系統(tǒng)的組成部分。用例:是參與者可以感受到的系統(tǒng)服務(wù)或功能單元。注:(1)用例是用戶期望系統(tǒng)具備的功能,它定義了系統(tǒng)的行為特征,如果沒有這些特征,系統(tǒng)就不能被成功地使用。(2)用例的目標(biāo)是要定義系統(tǒng)的一個(gè)行為,但并不顯示系統(tǒng)的內(nèi)部結(jié)構(gòu)。系統(tǒng)邊界:是系統(tǒng)與系統(tǒng)之間的界限。關(guān)聯(lián):表示參與者與用例之間的通信,任何一方都可發(fā)送或接受消息。3、用例之間的主要關(guān)系及表示符號(hào)用例之間的關(guān)系有包含(include)、擴(kuò)展(extend)、泛化等3種;包含關(guān)系:是指用例可以簡單地包含其他用例具有的行為,并把它所包含的用例行為作為自身行為的一部分。 擴(kuò)展關(guān)系:在一定條件下,把新的行為加入到已有的用例中,獲得的新用例叫做擴(kuò)展用例,原有的用例叫做基礎(chǔ)用例,從擴(kuò)展用例到基礎(chǔ)用例的關(guān)系就是擴(kuò)展關(guān)系。表示符號(hào):泛化關(guān)系:用例的泛化指的是一個(gè)父用例可以被特化成多個(gè)子用例,而父用例和子用例之間的關(guān)系就是泛化關(guān)系。二、選擇題1、用例圖從誰的角度出發(fā)對如何使用系統(tǒng)進(jìn)行描述(A)A用戶B系統(tǒng)分析師C系統(tǒng)設(shè)計(jì)師D程序員2、參與者(Actor)與用例之間的關(guān)系是(C)A包含關(guān)系B泛化關(guān)系C關(guān)聯(lián)關(guān)系D擴(kuò)展關(guān)系3、在用例圖中,參與者之間的關(guān)系只有(C)一種。A擴(kuò)展B包含C繼承D實(shí)現(xiàn)4、如果用例A和用例B相似,但A的動(dòng)作序列是通過改寫B(tài)的部分動(dòng)作或者擴(kuò)展B的動(dòng)作而獲得的,則稱(C)。A用例A包含用例BB用例A擴(kuò)展用例BC用例A繼承用例BD用例A實(shí)現(xiàn)用例B5、下列哪些選項(xiàng)不可以具有繼承關(guān)系(D)A類B參與者C用例D活動(dòng)6、下面說法錯(cuò)誤的是(C)A參與者是與所建立系統(tǒng)交互的人或物B參與者可以是人,也可以是其他系統(tǒng)C參與者是系統(tǒng)的一部分,是用例圖的重要組成部分D參與者之間存在泛化關(guān)系7、識(shí)別用例的最好方法是從哪里入手(B)A類B參與者C事件D類圖8、在UML提供的圖中,___A___用于描述系統(tǒng)與外部系統(tǒng)及用戶之間的交互;A、用例圖B、類圖C、對象圖D、部署圖9、在用例之間,會(huì)有三種不同的關(guān)系,下列哪個(gè)不是它們之間可能的關(guān)系(D)A包含B擴(kuò)展C泛化D關(guān)聯(lián)10、系統(tǒng)分析員Analyst在做儲(chǔ)蓄系統(tǒng)的需求開發(fā)時(shí),發(fā)現(xiàn):1.“取款”用例2、“查詢余額”用例3、“更改密碼”用例都要使用4、“驗(yàn)證卡號(hào)和密碼”用例的功能。那么1、2、3這3個(gè)用例與用例4的關(guān)系是(D)A使用關(guān)系B擴(kuò)展關(guān)系C組成關(guān)系D包含關(guān)系11、UML中,用例圖展示了外部Actor與系統(tǒng)所提供的用例之間的連接,UML中的外部Actor是指(D)。A人員B單位C人員和單位D人員或外部系統(tǒng)三、填空題1、用例和參與者之間的連線稱作關(guān)聯(lián),是關(guān)系的一種。2、由參與者和用例以及它們之間的關(guān)系構(gòu)成的用于描述系統(tǒng)功能的動(dòng)態(tài)視圖稱為用例圖。3、與傳統(tǒng)的SRS方法相比,用例圖可視化地表達(dá)了系統(tǒng)的需求,具有直觀、規(guī)范的有點(diǎn),克服了純文字性說明的不足。4、對于每一個(gè)用例,還需要有詳細(xì)的描述信息,這些信息包含在用例規(guī)約之中。四、簡答題1、簡述在用例圖建模中,識(shí)別參與者的方法。①誰將使用系統(tǒng)的主要功能;②與系統(tǒng)交互中,他們扮演什么角色;③誰必須維護(hù)和管理系統(tǒng)的正常工作;④與該系統(tǒng)交互的是什么系統(tǒng);⑤誰將給系統(tǒng)提供信息、使用和刪除信息;⑥系統(tǒng)需要處理那些硬件設(shè)備;⑦系統(tǒng)使用外部資源嗎2、什么是用例圖,用例圖有什么作用?答案略3、概述用例之間的關(guān)系答案略4、在確定參與者的過程中需要注意什么?答:尋找參與者的時(shí)候不要把目光只停留在使用計(jì)算機(jī)的人身上,直接或間接的與系統(tǒng)交互的任何人和事都是參與者。另外由于參與者總是處于系統(tǒng)外部,因此他們可以處于人的控制之外。五、學(xué)會(huì)畫用例圖以免出現(xiàn)作圖題第6章類圖與對象圖一、主要內(nèi)容1.類圖的定義類圖是從抽象的角度描述系統(tǒng)的靜態(tài)結(jié)構(gòu),特別是模型中存在的類、類的內(nèi)部結(jié)構(gòu)以及它們與其他類之間的相互關(guān)系的圖。通常,類圖包含的主要元素有四種,分別是:(1)類(2)接口(3)協(xié)作(4)關(guān)系2.類圖的作用 1.為系統(tǒng)的詞匯建模2.模型化簡單的協(xié)作3.模型化邏輯數(shù)據(jù)庫模式3.對象圖的定義: 對象圖描述系統(tǒng)在某一個(gè)特定時(shí)間上的靜態(tài)結(jié)構(gòu),是類圖的實(shí)力和快照,及類圖中的個(gè)各類在某一個(gè)時(shí)間點(diǎn)上的實(shí)力及其關(guān)系的靜態(tài)寫照。4.對象圖的作用 1.說明復(fù)雜的數(shù)據(jù)結(jié)構(gòu) 2.表示快照中的行為5.類圖與對象圖的區(qū)別類圖對象圖類具有三個(gè)分欄:名稱、屬性和操作對象只有兩個(gè)分欄:名稱和屬性在類的名稱分欄中只有類名對象的名稱形式為“對象名:類名”,匿名對象的名稱形式為“:類名”類中列出了操作對象圖中不包含操作,因?yàn)閷τ趯儆谕粋€(gè)類的對象而言,其操作是相同的類使用關(guān)聯(lián)連接,關(guān)聯(lián)使用名稱、角色、多重性以及約束等特征定義。類代表的是對對象的分類,所以必須說明可以參與關(guān)聯(lián)的對象的數(shù)目對象使用鏈連接,鏈擁有名稱、角色,但是沒有多重性。對象代表的是單獨(dú)的實(shí)體,所有的鏈都是一對一的,因此不涉及到多重性類的屬性分欄定義了所有屬性的特征對象則只定義了屬性的當(dāng)前值,以用于測試用例或例子中6.類圖的組成類圖是由類、接口等模型元素以及它們之間的關(guān)系構(gòu)成的。1)類是對一組具有相同屬性、操作、關(guān)系和語義的事物的抽象。 ——類的名稱*類名可分為簡單類名,帶路徑類名,例如:CheckingAccount,Banking::CheckingAccount *正體字說明類是可以被實(shí)例化的,斜體字說明類為抽象類。 *按照其作用,類分為實(shí)體類,界面類和控制類三種類型 ——類的屬性 *表示語法為([]內(nèi)的內(nèi)容是可選的):[可見性]屬性名稱[:屬性類型][=初始值][{屬性字符串}] *+public+public#protected-privateRoseUML可見性 *屬性名稱第1個(gè)英文單詞首字母小寫,其它單詞首字母大寫 ——類的操作 *表示語法為: [可見性]操作名稱[(參數(shù)表)][:返回類型][{屬性字符串}] *操作名稱的第1個(gè)英文單詞首字母小寫,其它單詞首字母大寫 2)接口 ——接口的定義接口是在沒有給出對象的實(shí)現(xiàn)和狀態(tài)的情況下對對象行為的描述。通常,在接口中包含一系列操作但是不包含屬性,并且它沒有對外界可見的關(guān)聯(lián)。接口是一種特殊的類,所有接口都是有構(gòu)造型<<interface>>的類。一個(gè)類可以通過實(shí)現(xiàn)接口從而支持接口所指定的行為。——接口的性質(zhì)①接口只聲明操作,不提供操作的實(shí)現(xiàn),需要由另外一個(gè)類來實(shí)現(xiàn)接口聲明的操作;②接口雖然是類元,但接口沒有實(shí)例;③接口不但可以聲明操作,也可聲明屬性;④接口聲明的操作和屬性的可見性是公開的,為public——接口的表示 3)類之間的關(guān)系依賴關(guān)系泛化關(guān)系表示表示符號(hào)關(guān)聯(lián)關(guān)系 聚集和組合是兩種特殊的關(guān)聯(lián) 1.聚集聚集(aggregation):表示類之間一種松散的整體與部分的組成關(guān)系。表示符號(hào) 2.表示符號(hào)組合(composition):表示類之間一種緊密的整體與部分的組成關(guān)系,部分與整體共存。 表示表示符號(hào)實(shí)現(xiàn)關(guān)系二、選擇題 在類圖中,下面哪個(gè)符號(hào)表示繼承關(guān)系(C)(B)(B)(A)(C)(D)在類圖中,下面哪個(gè)符號(hào)表示接口(C)(B)(B)(A)(C)(D)UML中關(guān)聯(lián)的多重度是指( B)(A)一個(gè)類有多個(gè)方法被另一個(gè)類調(diào)用(B)一個(gè)類的實(shí)類能夠與另一個(gè)類的多個(gè)實(shí)類相關(guān)聯(lián)(C)一個(gè)類的某個(gè)方法被另一個(gè)類調(diào)用的次數(shù)(D)兩個(gè)類所具有的相同的方法和屬性4.通常對象有很多屬性,但對于外部對象來說某些屬性應(yīng)該不能被直接訪問,下面哪個(gè)不是UML中的類成員訪問限定性(D)。A.publicB.protectedC.privateD.friendly5.面向?qū)ο蠓椒ㄖ械模―)機(jī)制使子類可以自動(dòng)擁有(復(fù)制)父類的全部屬性和操作。A.約束B.對象映射C.信息隱蔽D.繼承6.使得在多個(gè)類中能夠定義同一個(gè)操作或?qū)傩悦?,并在每一個(gè)類中有不同的實(shí)現(xiàn)的一種方法是(B)。A.繼承B.多態(tài)性C.約束D.接口7.UML的(B)模型圖由類圖、對象圖、包圖、構(gòu)件圖和配置圖組成。A.用例B.靜態(tài)C.動(dòng)態(tài)D.系統(tǒng)8.UML客戶需求分析使用的CRC卡片上“責(zé)任”一欄的內(nèi)容主要描述類的(C)和操作。A.對象成員B.關(guān)聯(lián)對象C.屬性D.私有成員9.類和對象都有屬性,它們的差別是:類描述了屬性的類型,而對象的屬性必須有(C)。A.正負(fù)號(hào)B.動(dòng)作C.具體值D.私有成員10.下面正確的說法是:CA對象表示客觀中存在的實(shí)物B類是對象的實(shí)例C類是具有相同屬性和操作的對象的集合D對象也就是類11.下面不屬于類的關(guān)系的是:DA泛化B聚集C關(guān)聯(lián)D傳遞12.下面說法正確的是:BA關(guān)聯(lián)表示兩個(gè)類之間的關(guān)系B關(guān)聯(lián)表示兩個(gè)類中對象之間的鏈接關(guān)系C組合表示事物之間的一般和特殊關(guān)系D泛化表示事物之間的整體與部分關(guān)系三.填空題 1.接口是可以在整個(gè)模型中反復(fù)使用的一組行為,是一個(gè)沒有屬性而只有方法的類。2.多重性指的是,某個(gè)類有多個(gè)對象可以和另一個(gè)類的1個(gè)對象關(guān)聯(lián)。3.在泛化關(guān)系中,子類可以替代父類。也就是說,后者出現(xiàn)的地方,前者都可以出現(xiàn)。但是反過來卻不成立。四.簡答題1、類有哪幾種類型?指出各自的作用。 答:實(shí)體類,界面類,控制類。2.類之間有哪幾種關(guān)系? 答:略3.聚集和組合的區(qū)別是什么? 答案:①聚集松散,組合緊密;②一個(gè)部分事物對象可以屬于多個(gè)聚集對象,但一個(gè)部分事物對象僅能屬于一個(gè)組合對象;③聚集的對象生命周期可以不同,但組合對象則是同存同亡。4.了解類圖與對象圖的區(qū)別?答案:略五.分析設(shè)計(jì) 圖書管理系統(tǒng)功能性需求說明如下:(25分)圖書管理系統(tǒng)能夠?yàn)橐欢〝?shù)量的借閱者提供服務(wù)。每個(gè)借閱者能夠擁有唯一標(biāo)識(shí)其存在的編號(hào)。圖書館向每一個(gè)借閱者發(fā)放圖書證,其中包含每一個(gè)借閱者的編號(hào)和個(gè)人信息。提供的服務(wù)包括:提供查詢圖書信息、查詢個(gè)人信息服務(wù)和預(yù)定圖書服務(wù)等。當(dāng)借閱者需要借閱圖書、歸還書籍時(shí)需要通過圖書管理員進(jìn)行,即借閱者不直接與系統(tǒng)交互,而是通過圖書管理員充當(dāng)借閱者的代理和系統(tǒng)交互。系統(tǒng)管理員主要負(fù)責(zé)系統(tǒng)的管理維護(hù)工作,包括對圖書、數(shù)目、借閱者的添加、刪除和修改。并且能夠查詢借閱者、圖書和圖書管理員的信息。可以通過圖書的名稱或圖書的ISBN/ISSN號(hào)對圖書進(jìn)行查找。回答下面問題:該系統(tǒng)中有哪些參與者?(3分)借閱者圖書管理員系統(tǒng)管理員確定該系統(tǒng)中的類,找出類之間的關(guān)系并畫出類圖用戶類、用戶角色類、圖書類、預(yù)定類、借閱類、書目類(6分)類圖(6分)6個(gè)類每2個(gè)1分,6個(gè)關(guān)系每2個(gè)1分 第7章序列圖一、主要內(nèi)容1、序列圖的定義:序列圖用于表現(xiàn)一種交互,該交互是一個(gè)協(xié)作中的各種類元角色間的一組消息交換,側(cè)重于強(qiáng)調(diào)時(shí)間順序,是對對象之間傳送消息的時(shí)間順序的可視化表示。2、序列圖的作用:1)確認(rèn)和豐富一個(gè)使用語境的邏輯表達(dá);2)細(xì)化用例的表達(dá):把用例表達(dá)的需求,轉(zhuǎn)化為進(jìn)一步、更加正式層次的精細(xì)表達(dá)。用例常常被細(xì)化為一個(gè)或者更多的序列圖;有效地描述如何分配各個(gè)類的職責(zé)以及各類具有相應(yīng)職責(zé)的原因。3、序列圖與用例圖和類圖的關(guān)系:序列圖示例:4、序列圖的組成:序列圖包含的內(nèi)容:對象、生命線、激活、消息。對象:類的實(shí)例。可以是系統(tǒng)的參與者或者任何有效的系統(tǒng)對象。生命線:生命線是表示序列圖中對象在一段時(shí)間內(nèi)的存在,它是一條時(shí)間線,出序列圖的頂部延伸到底部,所用時(shí)間取決于交互時(shí)間的長短。激活:當(dāng)一條消息被傳遞給對象的時(shí)候,它會(huì)觸發(fā)該對象的某個(gè)行為,這時(shí)就說該對象被激活了。消息:消息是對象之間的通信,它在傳達(dá)信息的同時(shí)期望活動(dòng)隨之發(fā)生。消息的3個(gè)部分消息發(fā)送者:發(fā)出消息的類元角色;消息接受者:接受消息的類元角色;操作方法實(shí)現(xiàn),接受信號(hào)被激活,活動(dòng)結(jié)束后調(diào)用者收回控制權(quán),并可能接受返回值對主動(dòng)對象而言,操作調(diào)用導(dǎo)致調(diào)用事件,并觸發(fā)狀態(tài)機(jī)轉(zhuǎn)換活動(dòng):是調(diào)用、信號(hào)、發(fā)生者的局部操作或原始活動(dòng),(創(chuàng)建或銷毀)。對象之間普通消息的傳遞對象自身消息傳遞返回消息撤銷或刪除對象之間過程調(diào)用對象之間異步消息,發(fā)送消息后不管消息是否被接受,繼續(xù)進(jìn)行下一步處理同步消息:表示發(fā)送者發(fā)出消息后等待接收者響應(yīng)這個(gè)消息。異步消息:在這種消息中,發(fā)送者把控制權(quán)轉(zhuǎn)交給接收者,但不等待操作完成創(chuàng)建一個(gè)對象指的是發(fā)送者發(fā)送一個(gè)實(shí)例化消息后實(shí)例化對象的結(jié)果。銷毀對象指的是將對象銷毀并回收其擁有的資源。銷毀一個(gè)對象講導(dǎo)致對象的所有組成部分將被銷毀,但是不會(huì)銷毀一般關(guān)聯(lián)或者聚集關(guān)系連接的對象,盡管它們之間包含該對象的鏈接將被消除。有兩種方式來修改序列圖的控制流:使用分支和使用從屬流??刂屏鞯母淖兪怯捎诓煌臈l件導(dǎo)致控制流走向不同的道路:分支允許控制流由一個(gè)點(diǎn)發(fā)出消息,走向不同的對象。從屬流是指從一個(gè)點(diǎn)發(fā)出多個(gè)消息指向同一個(gè)對象不同的生命線。二、選擇題在UML順序圖中,如果一條消息從對象a傳向?qū)ο骲,那么其(A)是一條從b指向a的虛線有向邊,它表示原消息的處理已經(jīng)完成處理結(jié)果(如果有的話)給返回消息傳回。A返回消息B自消息C創(chuàng)建消息D銷毀消息在UML提供的圖中,(A)用于描述系統(tǒng)與外部系統(tǒng)及用戶之間的交互;(D)用于按時(shí)間順序描述對象間的交互。(1)A、用例圖B、類圖C、對象圖D、部署圖(2)A、網(wǎng)絡(luò)圖B、狀態(tài)圖C、協(xié)作圖D、序列圖3順序圖由類角色,生命線,激活期和(B)組成A、關(guān)系B、消息C、用例D、實(shí)體4、在UML的順序圖中,通常由左向右分層排列各個(gè)對象,正確的排列方法是(A)(A)執(zhí)行者角色 控制類 用戶接口 業(yè)務(wù)層 后臺(tái)數(shù)據(jù)庫(B)執(zhí)行者角色 用戶接口 控制類 業(yè)務(wù)層 后臺(tái)數(shù)據(jù)庫(C)執(zhí)行者角色 控制類 用戶接口 后臺(tái)數(shù)據(jù)庫 業(yè)務(wù)層(D)執(zhí)行者角色 用戶接口 業(yè)務(wù)層 控制類 后臺(tái)數(shù)據(jù)庫三、填空題1、順序圖強(qiáng)調(diào)的是交互的時(shí)間順序,協(xié)作圖強(qiáng)調(diào)的是交互的關(guān)空間系和參與交互的對象的上下文環(huán)境。2、順序圖中,消息用水平箭頭線表示;時(shí)間用垂直虛線表示。3、當(dāng)邏輯發(fā)生分支時(shí),在順序圖中用生命線發(fā)生的分支表示,在協(xié)作圖中用嵌套的序號(hào)表示4、順序圖是由對象、生命線、控制焦點(diǎn)和消息等構(gòu)成的5、在UML的表示中順序圖將交互關(guān)系表示為一張二維圖,其中縱向是時(shí)間軸,時(shí)間沿豎線向下延伸。橫向代表了在協(xié)作中各獨(dú)立對象的角色。四、簡答題1、順序圖和協(xié)作圖中,消息有哪三種?各自的意義和表示什么?消息可以是簡單的、同步的或異步的。簡單消息是從一個(gè)對象到另一個(gè)對象的控制流的轉(zhuǎn)移。如果一個(gè)對象發(fā)送了一個(gè)同步消息,那么它要等待對方對消息的應(yīng)答,收到應(yīng)答后才能繼續(xù)自己的操作。而發(fā)送異步消息的對象不需要等待對方的應(yīng)答便可以繼續(xù)自己的操作。在順序圖中,簡單消息是一個(gè)簡單箭頭,同步消息是實(shí)心箭頭,異步消息是一個(gè)半邊箭頭。2、簡述時(shí)序圖的建模步驟。建模步驟:1)設(shè)置交互語境;2)確定對象;3)分析消息和條件;4)分析附加約束;5)對建模結(jié)果精化和細(xì)化。第8章協(xié)作圖一、主要內(nèi)容1、協(xié)作圖的定義和作用定義:協(xié)作圖描述對象之間的關(guān)聯(lián)及其它們彼此之間的消息通信。要想使由類構(gòu)成的系統(tǒng)具有功能,這些類的實(shí)例(對象)需要彼此通信和交互。協(xié)作圖除了展示出對象之間的關(guān)聯(lián),還顯示出對象之間的消息傳遞。作用:1、通過描繪對象之間消息的傳遞情況來反映具體的使用語境的邏輯表達(dá)。2、顯示對象及其交互關(guān)系的空間結(jié)構(gòu)3、表示一個(gè)類操作的實(shí)現(xiàn)2、協(xié)作圖的組成及表示組成:協(xié)作圖中包括的建模元素有對象(包括參與者實(shí)例、多對象、主動(dòng)對象等)、消息、鏈等。注:消息的編號(hào)有兩種,一種是無層次編號(hào)(按順序編號(hào)),它簡單直觀;另一種是嵌套的編號(hào),它更易于表示消息的包含關(guān)系.其標(biāo)記如下圖所示:對象對象消息鏈3、協(xié)作圖和順序圖的區(qū)別順序圖和協(xié)作圖都可以表示對象間的交互關(guān)系,但它們的側(cè)重點(diǎn)不同。順序圖強(qiáng)調(diào)的是交互的時(shí)間順序,協(xié)作圖強(qiáng)調(diào)的是交互的語境和參與交互的對象的整體組織。還可以從另一個(gè)角度來看兩種圖的定義:順序圖按照時(shí)間順序布圖,而協(xié)作圖按照空間組織布圖。4、協(xié)作圖的建模有3個(gè)基本的步驟:1)確定屬于協(xié)作圖的元素:首先,確定協(xié)作圖中將會(huì)包含的元素或者類。2)建模這些元素之間的結(jié)構(gòu)關(guān)系:確定這些類之間的關(guān)系。在這一步中,著手建模早期階段的協(xié)作圖,在類角色之間添加鏈接和關(guān)聯(lián)角色。3)建模實(shí)例層的協(xié)作圖:實(shí)例層建模協(xié)作圖。這意味著需要把類角色修改為對象實(shí)例,并且指定執(zhí)行用例的消息序列。這一步需要用到描述對象之間鏈接的消息標(biāo)記符,包括控制點(diǎn)、迭代、創(chuàng)建實(shí)例,以及特定消息類型的規(guī)范。二、選擇題1、協(xié)作圖中,對象之間發(fā)送消息的前提是對象之間存在(C)A關(guān)聯(lián)B引用C鏈D轉(zhuǎn)換2、關(guān)于協(xié)作圖的描述,下列哪個(gè)不正確(B)A.協(xié)作圖作為一種交互圖,強(qiáng)調(diào)的是參加交互的對象的組織;B.協(xié)作圖是順序圖的一種特例C.協(xié)作圖中有消息流的順序號(hào);D.在ROSE工具中,協(xié)作圖可在順序圖的基礎(chǔ)上按“F5”3、多對象是UML中哪個(gè)視圖的概念(C)A類圖B狀態(tài)圖C協(xié)作圖D組件圖4、在UML中,協(xié)作圖的組成不包括(C)A對象B消息C發(fā)送者D鏈5、下列關(guān)于協(xié)作圖中的鏈,說法不正確的是(C)A在協(xié)作圖中的鏈?zhǔn)莾蓚€(gè)或多個(gè)對象之間的獨(dú)立連接B在協(xié)作圖中的鏈?zhǔn)顷P(guān)聯(lián)的實(shí)例C在協(xié)作圖中,需要關(guān)于某個(gè)類的所有對象都出現(xiàn),同一個(gè)類的對象在一個(gè)協(xié)作圖中也不可以充當(dāng)多個(gè)角色。D在協(xié)作圖中,鏈的表示形式為一個(gè)或多個(gè)相連的線或弧。6、在UML協(xié)作圖中,有多少種關(guān)聯(lián)角色的構(gòu)造型(C)(A)1(B)3(C)5(D)7三、填空題1、面向?qū)ο蠼9ぞ逺ationalRose支持時(shí)序圖和協(xié)作圖之間的相互轉(zhuǎn)化,Rose進(jìn)行轉(zhuǎn)化操作的快捷鍵是F5。2、協(xié)作圖是對在一次交互過程中有意義對象和對象間的鏈建模,顯示了對象之間如何經(jīng)行交互以執(zhí)行特定用例和用例中的特定部分的行為。3、在協(xié)作圖中,類元角色描述了特定對象,關(guān)聯(lián)角色描述了協(xié)作關(guān)系中的鏈,并通過幾何排列表現(xiàn)交互作用中的各個(gè)角色。4、協(xié)作圖是由對象、消息和鏈等構(gòu)成的。5、協(xié)作圖通過各個(gè)對象之間的組織交互關(guān)系以及對象彼此之間的連接,表達(dá)對象之間的交互。6、在協(xié)作圖中的鏈?zhǔn)莾蓚€(gè)或多個(gè)對象之間的獨(dú)立連接,是關(guān)聯(lián)的實(shí)例。7、.在協(xié)作圖中通過消息編號(hào)表示出消息的時(shí)間順序四、簡答題1、UML中的交互圖有兩種,分別是順序圖和協(xié)作圖,請分析一下兩者之間的主要差別和各自的優(yōu)缺點(diǎn)。答:協(xié)作圖可視化地表示了對象之間隨時(shí)間發(fā)生的交互,它除了展示對象之間的關(guān)聯(lián),還顯示出對象之間的消息傳遞。與順序圖一樣,協(xié)作圖也展示對象之間的交互關(guān)系。順序圖強(qiáng)調(diào)的是交互的時(shí)間順序,而協(xié)作圖強(qiáng)調(diào)的是交互的語境和參與交互的對象的整體組織。順序圖按照時(shí)間順序布圖,而協(xié)作圖按照空間組織布圖。順序圖可以清晰地表示消息之間的順序和時(shí)間關(guān)系,但需要較多的水平方向的空間。協(xié)作圖在增加對象時(shí)比較容易,而且分支也比較少,但如果消息比較多時(shí)難以表示消息之間的順序。五、學(xué)會(huì)畫協(xié)作圖以免出現(xiàn)作圖題第9章狀態(tài)圖一、主要內(nèi)容1、狀態(tài)圖的定義 狀態(tài)機(jī)描述對象在整個(gè)生命周期內(nèi),在外部事件的作用下,從一種狀態(tài)轉(zhuǎn)換到另一種狀態(tài)的關(guān)系圖。這種圖的節(jié)點(diǎn)是狀態(tài)(包括初始狀態(tài)和終止?fàn)顟B(tài)),關(guān)系是轉(zhuǎn)換。簡記:狀態(tài)圖是展示狀態(tài)與狀態(tài)轉(zhuǎn)換的圖。2、狀態(tài)圖的主要元素狀態(tài)、轉(zhuǎn)換、初始狀態(tài)、終止?fàn)顟B(tài)、判定3、狀態(tài)圖的作用 *狀態(tài)圖清晰地描述了狀態(tài)之間的轉(zhuǎn)換順序,通過狀態(tài)的轉(zhuǎn)換順序可以清晰看出時(shí)間的執(zhí)行順序 *清晰的時(shí)間順序有利于程序員在開發(fā)程序時(shí)避免出現(xiàn)事件錯(cuò)序的情況 *狀態(tài)圖清晰地描述了狀態(tài)轉(zhuǎn)換時(shí)所必須觸發(fā)的事件、監(jiān)護(hù)條件和動(dòng)作等影響轉(zhuǎn)換的因素,有利于程序員避免程序中非法事件的進(jìn)入。 *狀態(tài)圖通過判定可以更好的描述工作流因?yàn)椴煌臈l件發(fā)生的分支4、狀態(tài)圖的組成 》狀態(tài) *描述了一個(gè)類對象生命周期中的一個(gè)時(shí)間段。 *狀態(tài)可分為簡單狀態(tài)和組成狀態(tài),簡單狀態(tài)指的是不包含其他狀態(tài)的狀態(tài),沒有子結(jié)構(gòu)。 *狀態(tài)還包括狀態(tài)名、內(nèi)部活動(dòng)、內(nèi)部轉(zhuǎn)換、入口和出口動(dòng)作、歷史狀態(tài) 》轉(zhuǎn)換注意:圖中用實(shí)線箭頭表示的轉(zhuǎn)換都是外部轉(zhuǎn)換。源狀態(tài):即受轉(zhuǎn)換影響的狀態(tài)。目標(biāo)狀態(tài):當(dāng)轉(zhuǎn)換完成后對象的狀態(tài)。觸發(fā)事件:用來為轉(zhuǎn)換定義一個(gè)事件,包括調(diào)用、改變、信號(hào)、時(shí)間四類事件。監(jiān)護(hù)條件:布爾表達(dá)式,決定是否激活轉(zhuǎn)換。動(dòng)作:轉(zhuǎn)換激活時(shí)的操作。 *轉(zhuǎn)換用于表示一個(gè)狀態(tài)機(jī)的兩種狀態(tài)之間的一種關(guān)系,即一個(gè)在某初始狀態(tài)的對象通過執(zhí)行指定的動(dòng)作并符合一定的條件下進(jìn)入第二種狀態(tài)。在這個(gè)狀態(tài)的變化中,轉(zhuǎn)換被稱為激發(fā)。 *外部轉(zhuǎn)換是改變狀態(tài)的轉(zhuǎn)換,是最常見的一種轉(zhuǎn)換。外部轉(zhuǎn)換用從源狀態(tài)到目標(biāo)狀態(tài)的箭頭表示。 *內(nèi)部轉(zhuǎn)換只有原狀態(tài),沒有目標(biāo)狀態(tài),不回家發(fā)入口和出口動(dòng)作,因此內(nèi)部轉(zhuǎn)換激發(fā)的結(jié)果不改變本來的狀態(tài) *完成轉(zhuǎn)換沒有明確標(biāo)明觸發(fā)事件的轉(zhuǎn)換是由狀態(tài)中中東的完成引起的。 *復(fù)合轉(zhuǎn)換由簡單轉(zhuǎn)換組成,這些簡單轉(zhuǎn)換通過分支和合并組合起來,因此復(fù)合轉(zhuǎn)換可以具有多個(gè)源狀態(tài)和多個(gè)目標(biāo)狀態(tài) *監(jiān)護(hù)條件轉(zhuǎn)換可能具有一個(gè)監(jiān)護(hù)條件,監(jiān)護(hù)條件時(shí)一個(gè)布爾表達(dá)式,它是觸發(fā)轉(zhuǎn)換必須滿足的條件。 *觸發(fā)器事件就是能夠引起狀態(tài)轉(zhuǎn)換的事件。 *動(dòng)作通常是一個(gè)尖端的計(jì)算處理過程或一組可執(zhí)行語句。動(dòng)作是原子型的,是不可中斷的。整個(gè)系統(tǒng)可以在同一時(shí)間執(zhí)行多個(gè)動(dòng)作,但是動(dòng)作的執(zhí)行應(yīng)該是獨(dú)立的。 》判定用來表示一個(gè)事件依據(jù)不同的監(jiān)護(hù)條件有不同的影響。 》同步是為了說明并發(fā)工作流的分支與匯合 》事件包括信號(hào)事件、調(diào)用事件、改變事件、時(shí)間事件5、組成狀態(tài) 》組成狀態(tài)是內(nèi)部嵌有子狀態(tài)的狀態(tài) 》順序組成狀態(tài):如果一個(gè)組成狀態(tài)的多個(gè)子狀態(tài)之間是互斥的、不能同時(shí)存在的,則這種組成狀態(tài)成為順序狀態(tài) 》并發(fā)組成狀態(tài):一個(gè)組成狀態(tài)中,可能有兩個(gè)或者多個(gè)并發(fā)的子狀態(tài)機(jī),成這樣的組成狀態(tài)為并發(fā)組成狀態(tài) 6、狀態(tài)圖的基本符號(hào)二、選擇題1UML提供了一系列的圖支持面向?qū)ο蟮姆治雠c設(shè)計(jì),其中____F__給出系統(tǒng)的靜態(tài)設(shè)計(jì)視圖;__B___對系統(tǒng)的行為進(jìn)行組織和建模是非常重要的;____C___和___E___都是描述系統(tǒng)動(dòng)態(tài)視圖的交互圖,其中__C__描述了以時(shí)間順序組織的對象之間的交互活動(dòng),___E____強(qiáng)調(diào)收發(fā)消息的對象的組織結(jié)構(gòu)。A、狀態(tài)圖B、用例圖C、序列圖D、部署圖E、協(xié)作圖F、類圖2.對反應(yīng)型對象建模一般使用(A)圖A、狀態(tài)圖B、順序圖C、活動(dòng)圖D、類圖3.下列關(guān)于狀態(tài)圖的說法中,正確的是(C)A.狀態(tài)圖是UML中對系統(tǒng)的靜態(tài)方面進(jìn)行建模的五種圖之一。B.狀態(tài)圖是活動(dòng)圖的一個(gè)特例,狀態(tài)圖中的多數(shù)狀態(tài)是活動(dòng)狀態(tài)C.活動(dòng)圖和狀態(tài)圖是對一個(gè)對象的生命周期進(jìn)行建模,描述對象隨時(shí)間變化的行為。D.狀態(tài)圖強(qiáng)調(diào)對有幾個(gè)對象參與的活動(dòng)過程建模,而活動(dòng)圖更強(qiáng)調(diào)對單個(gè)反應(yīng)型對象建模4.可用于描述用戶接口、設(shè)備控制器和其他具有反饋的子系統(tǒng)。它還可用于描述在生命期中跨越多個(gè)不同性質(zhì)階段的被動(dòng)對象的行為,在每一階段該對象都有自己特殊的行為(C)A、動(dòng)態(tài)視圖B靜態(tài)視圖C、狀態(tài)機(jī)視圖D、模型管理視圖5.(B)是一個(gè)類對象所可能經(jīng)歷的所有歷程的模型圖A、模型管理視圖B、狀態(tài)機(jī)視圖C、動(dòng)態(tài)視圖D、靜態(tài)視圖6.下面哪個(gè)UML視圖是描述一個(gè)對象的生命周期的(B)(A)類圖(B)狀態(tài)圖(C)協(xié)作圖(D)順序填空題部分這里不做整理,看課后習(xí)題。三、簡答題 1.什么是狀態(tài)機(jī)?什么事狀態(tài)圖? 答案:略 2.狀態(tài)圖的組成要素有哪些? 答案:略 3.簡述簡單狀態(tài)和組成狀態(tài)的區(qū)別。 答案:簡單狀態(tài)指的是不包含其他狀態(tài)的狀態(tài),簡單狀態(tài)沒有子結(jié)構(gòu),但是它可以具有內(nèi)部轉(zhuǎn)換、進(jìn)入動(dòng)作、退出動(dòng)作等。組成狀態(tài)是內(nèi)部潛逃有子狀態(tài)的狀態(tài)。一個(gè)組成狀態(tài)包括一系列子狀態(tài)。組成狀態(tài)可以使用“與”關(guān)系分解為并行子狀態(tài),或者通過“或”關(guān)系分解為互斥子狀態(tài)。因此,組成狀態(tài)可以使并發(fā)或者是順序的。四、學(xué)會(huì)畫狀態(tài)圖以免出現(xiàn)作圖題第10章活動(dòng)圖一、主要內(nèi)容1、活動(dòng)圖的定義:活動(dòng)圖是一種用于描述系統(tǒng)行為的模型視圖,它可用來描述動(dòng)作和動(dòng)作導(dǎo)致對象狀態(tài)改變的結(jié)果,而不用考慮引發(fā)狀態(tài)改變的事件。通常,活動(dòng)圖記錄單個(gè)操作或方法的邏輯、單個(gè)用例或商業(yè)過程的邏輯流程。2、活動(dòng)圖與狀態(tài)圖的區(qū)別:活動(dòng)圖的主要目的是描述動(dòng)作及對象的改變結(jié)果,而狀態(tài)圖則是以狀態(tài)的概念描述對象、子系統(tǒng)、系統(tǒng)在生命周期中的各種行為。活動(dòng)圖中的狀態(tài)轉(zhuǎn)換不需要任何觸發(fā)事件?;顒?dòng)圖中的動(dòng)作可以放在泳道中,而狀態(tài)圖則不可以。泳道可以將模型中的活動(dòng)按照職責(zé)組織起來。3、活動(dòng)圖與流程圖的區(qū)別:活動(dòng)圖是面向?qū)ο蟮?,而流程圖是面向過程的。活動(dòng)圖不僅能夠表達(dá)順序流程控制,還能夠表達(dá)并發(fā)流程控制。4、活動(dòng)圖的作用:描述一個(gè)操作執(zhí)行過程中所完成的工作,說明角色、工作流、組織和對象是如何工作的?;顒?dòng)圖對用例描述尤其有用,它可建模用例的工作流、顯示用例內(nèi)部和用例之間的路徑。它可以說明用例的實(shí)例是如何執(zhí)行動(dòng)作以及如何改變對象狀態(tài)的。顯示如何執(zhí)行一組相關(guān)的動(dòng)作,以及這些動(dòng)作如何影響它們周圍的對象。活動(dòng)圖對理解業(yè)務(wù)處理過程十分有用。活動(dòng)圖可以畫出工作流用以描述業(yè)務(wù),有利于與領(lǐng)域?qū)<疫M(jìn)行交流。通過活動(dòng)圖可以明確業(yè)務(wù)處理操作是如何進(jìn)行的,以及可能產(chǎn)生的變化。描述復(fù)雜過程的算法,在這種情況下使用的活動(dòng)圖和傳統(tǒng)的程序流程圖的功能是相似的。5、活動(dòng)圖的組成:活動(dòng)圖中包含的圖形元素有:動(dòng)作狀態(tài)、活動(dòng)狀態(tài)、組合活動(dòng)、分叉與結(jié)合、分支與合并、泳道、對象流。動(dòng)作狀態(tài):動(dòng)作狀態(tài)是原子性的動(dòng)作或操作的執(zhí)行狀態(tài),它不能被外部事件的轉(zhuǎn)換中斷。動(dòng)作狀態(tài)的原子性決定了動(dòng)作狀態(tài)要么不執(zhí)行,要么就完全執(zhí)行,不能中斷,它是構(gòu)造活動(dòng)圖的最小單位。動(dòng)作狀態(tài)沒有子結(jié)構(gòu)、內(nèi)部轉(zhuǎn)換或內(nèi)部活動(dòng),它不能包括事件觸發(fā)的轉(zhuǎn)換。動(dòng)作狀態(tài)可以有轉(zhuǎn)入,轉(zhuǎn)入可以是對象流或者動(dòng)作流。動(dòng)作狀態(tài)通常有一個(gè)輸出的完成轉(zhuǎn)換,如果有監(jiān)護(hù)條件也可以有多個(gè)輸出的完成轉(zhuǎn)換。不過動(dòng)作狀態(tài)和狀態(tài)圖中的狀態(tài)不同,它不能有入口動(dòng)作和出口動(dòng)作,也不能有內(nèi)部轉(zhuǎn)移?;顒?dòng)狀態(tài):活動(dòng)狀態(tài)是非原子性的,用來表示一個(gè)具有子結(jié)構(gòu)的純粹計(jì)算的執(zhí)行?;顒?dòng)狀態(tài)可以分解成其他子活動(dòng)或動(dòng)作狀態(tài),可以使轉(zhuǎn)換離開狀態(tài)的事件從外部中斷?;顒?dòng)狀態(tài)可以有內(nèi)部轉(zhuǎn)換、入口動(dòng)作和出口動(dòng)作。活動(dòng)狀態(tài)至少有一個(gè)輸出完成轉(zhuǎn)換,當(dāng)狀態(tài)中的活動(dòng)完成時(shí)該轉(zhuǎn)換激發(fā)。動(dòng)作狀態(tài)是一種特殊的活動(dòng)狀態(tài),動(dòng)作狀態(tài)與活動(dòng)狀態(tài)的區(qū)別:動(dòng)作狀態(tài)一般用于描述簡短的操作,而活動(dòng)狀態(tài)用于描述持續(xù)事件或復(fù)雜性的計(jì)算。活動(dòng)狀態(tài)可以在圖標(biāo)中給出入口動(dòng)作和出口動(dòng)作等信息。組合活動(dòng):組合活動(dòng)是一種內(nèi)嵌活動(dòng)圖的狀態(tài)。組合活動(dòng)不具備原子性,它可以在執(zhí)行的過程中被中斷。分叉與結(jié)合:分叉用于表示將一個(gè)控制流分成兩個(gè)或者多個(gè)并發(fā)運(yùn)行的分支。結(jié)合用來表示并行分支在此得到同步。分叉用粗黑線表示。分叉具有一個(gè)輸入轉(zhuǎn)換、兩個(gè)或者多個(gè)輸出轉(zhuǎn)換,每個(gè)轉(zhuǎn)換都可以是獨(dú)立的控制流。結(jié)合具有多個(gè)輸入轉(zhuǎn)換、一個(gè)輸出轉(zhuǎn)換。先完成的控制流需要在此等待,只有當(dāng)所有的控制流都到達(dá)此結(jié)合點(diǎn)時(shí),控制才能繼續(xù)向下進(jìn)行。分支與合并:分支是轉(zhuǎn)換的一部分,它將轉(zhuǎn)換路徑分成多個(gè)部分,每一部分都有單獨(dú)的監(jiān)護(hù)條件和不同的結(jié)果。合并指的是兩個(gè)或者多個(gè)控制路徑在此匯合的情況。合并表示從對應(yīng)分支開始的條件的行為的結(jié)束。合并與結(jié)合的區(qū)別:合并匯合了兩個(gè)以上的控制路徑,在任何執(zhí)行中每次只走一條,不同路徑之間是互斥的關(guān)系。而結(jié)合則匯合了兩條或兩條以上的并行控制路徑。在執(zhí)行過程中所有路徑都要走過,先到的控制流要等其他路徑的控制流到達(dá)后才能繼續(xù)運(yùn)行。泳道:為了對活動(dòng)的職責(zé)進(jìn)行組織而在活動(dòng)圖中將活動(dòng)狀態(tài)分為不同的組,稱為泳道。每個(gè)泳道代表特定含義的狀態(tài)職責(zé)部分。對象流:對象流是將對象流狀態(tài)作為輸入或輸出的控制流。對象流中的對象表示的不僅僅是對象自身,還表示了對象作為過程中的一個(gè)狀態(tài)存在。因此也可以將這種對象稱之為對象流狀態(tài)。一個(gè)對象流狀態(tài)必須與它所表示的參數(shù)和結(jié)果的類型匹配。二、選擇題在UML的需求分析建模中,對用例模型中的用例進(jìn)行細(xì)化說明應(yīng)使用(A)A、活動(dòng)圖B、狀態(tài)圖C、配置圖D、構(gòu)件圖2、在UML活動(dòng)圖中,(C)表示活動(dòng)需要輸入的對象或者作為活動(dòng)的處理結(jié)果輸出的對象A、并發(fā)控制B、決策點(diǎn)C、對象D、活動(dòng)3、在UML活動(dòng)圖中,(B)表示操作之間的信息交換A、控制流B、信息流C、初始活動(dòng)D、活動(dòng)4、(A)技術(shù)是將一個(gè)活動(dòng)圖中的活動(dòng)狀態(tài)進(jìn)行分組,每一組表示一個(gè)特定的類、人或部門,他們負(fù)責(zé)完成組內(nèi)的活動(dòng)。A、泳道B、分叉匯合C、分支D、轉(zhuǎn)移5、下列關(guān)于狀態(tài)圖的說法中,正確的是(C)A.狀態(tài)圖是UML中對系統(tǒng)的靜態(tài)方面進(jìn)行建模的五種圖之一。B.狀態(tài)圖是活動(dòng)圖的一個(gè)特例,狀態(tài)圖中的多數(shù)狀態(tài)是活動(dòng)狀態(tài)C.活動(dòng)圖和狀態(tài)圖是對一個(gè)對象的生命周期進(jìn)行建模,描述對象隨時(shí)間變化的行為。D.狀態(tài)圖強(qiáng)調(diào)對有幾個(gè)對象參與的活動(dòng)過程建模,而活動(dòng)圖更強(qiáng)調(diào)對單個(gè)反應(yīng)型對象建模6、下面哪些圖形可以清楚地表達(dá)并發(fā)行為(CD)(A)類圖 (B)狀態(tài)體 (C)活動(dòng)圖 (D)順序圖 (E)實(shí)現(xiàn)圖三、填空題1、一個(gè)對象流狀態(tài)必須與它所表示的參數(shù)和結(jié)果的類型匹配。2、分叉可以用來描述并發(fā)線程,每個(gè)分叉可以有一個(gè)輸入轉(zhuǎn)換和兩個(gè)或多個(gè)輸出轉(zhuǎn)換。四、簡答題:請簡述,狀態(tài)圖與活動(dòng)圖的比較描述對象不同:狀態(tài)圖是描述對象的狀態(tài)以及狀態(tài)之間的轉(zhuǎn)移活動(dòng)圖是描述從活動(dòng)到活動(dòng)的控制流描述場合不同:狀態(tài)圖是描述對象在其生命過程期中的行為狀態(tài)變化活動(dòng)圖是描述過程的流程變化請簡述,合并與結(jié)合的區(qū)別合并匯合了兩個(gè)以上的控制路徑,在任何執(zhí)行中每次只走一條,不同路徑之間是互斥的關(guān)系。結(jié)合則匯合了兩條或兩條以上的并行控制路徑。在執(zhí)行過程中所有路徑都要走過,先到的控制流要等其他路徑的控制流到達(dá)后才能繼續(xù)運(yùn)行。五、學(xué)會(huì)畫活動(dòng)圖以免出現(xiàn)作圖題第11章包圖一、主要內(nèi)容1、包圖的定義與作用定義:包圖是一種維護(hù)和描述系統(tǒng)總體結(jié)構(gòu)的模型的重要建模工具,通過對圖中各個(gè)包以及包之間關(guān)系的描述,展現(xiàn)出系統(tǒng)的模塊與模塊之間的依賴關(guān)系。作用:通過包圖可以描述需求的高階概況、描述設(shè)計(jì)的高階概況、在邏輯上把一個(gè)復(fù)雜的系統(tǒng)模塊化、組織源代碼。2、包的名稱每個(gè)包都必須有一個(gè)與其他包區(qū)別的名稱。包的名稱是一個(gè)字符串,它有兩種表現(xiàn)形式:1)簡單名:僅包含一個(gè)名稱字符串2)路徑名:以包處于的外圍包的名字最為前綴并加上名稱字符串。注:包本身為其所擁有的模型元素構(gòu)成類的一個(gè)名字空間(namespace),這意味著同屬于一個(gè)包的各個(gè)同類建模元素不得具有相同的名字,而分屬于不同包的建模元素可以具有相同的名字,而且它們代表了不同的建模元素。3、包中可以擁有的元素類、接口、構(gòu)件、節(jié)點(diǎn)、用例、圖以及其他包等4、元素的可見性使用關(guān)鍵字public、protected、private表示public定義的公共元素對所有引入的包以及它們的后代都可見。用加號(hào)(+)表示此內(nèi)含元素為公有元素。protected定義的被保護(hù)的元素只對那些與包含這些元素的包有泛化關(guān)系的包可見。用井號(hào)(#)表示此內(nèi)含元素是保護(hù)元素。private定義的私有元素對包外部元素完全不可見。用減號(hào)(-)表示此內(nèi)含元素為私有元素。5、包圖中的關(guān)系1)《use》關(guān)系:是一種默認(rèn)的依賴關(guān)系,說明客戶包(箭尾端的包)中的元素以某種方式使用提供者包(箭頭端的包)的公共元素,也就是說客戶包依賴于提供者包。如果沒有指明依賴類型,則默認(rèn)為《USE》關(guān)系。2)《import》關(guān)系:最普遍的包依賴類型,說明提供者包的命名空間將被添加到客戶包的命名空間中,客戶包中的元素也能夠訪問提供者包的所有公共元素?!禷ccess》關(guān)系:如果只想使用提供者包中的元素,而不想將兩個(gè)包合并,則應(yīng)使用該關(guān)系。在客戶包中必須使用路徑名,才能訪問提供者包中的所有公共元素?!秚race》關(guān)系:想表示一個(gè)包到另一個(gè)包的歷史發(fā)展,則需要使用《trace》關(guān)系來表示包的泛化關(guān)系注:《access》包關(guān)系與《import》包關(guān)系沒有傳遞性二、選擇題1、(A)是用于把元素組織成組的通用機(jī)制。A、包B、類C、接口D、組件2、(C)是一組用于描述類或組件的一個(gè)服務(wù)的操作A、包B、節(jié)點(diǎn)C、接口D、組件3、關(guān)于包的描述,不正確的是(B)。A、和其他建模元素一樣,每個(gè)包必須有一個(gè)區(qū)別于其他包的名字B、export使一個(gè)包中的元素可以單向訪問另一個(gè)包中的元素C、包的可見性分為public、protected、privateD、包中可以包含其他元素,比如類、接口、組件、用例等等4、下列關(guān)于包的用途,說法不正確的是(C)A、描述需求和設(shè)計(jì)的高階概況B、組織源代碼C、細(xì)化用例的表達(dá)D、在邏輯上把一個(gè)復(fù)雜的系統(tǒng)模塊化5、包圖的組成不包括(C)A、包B、依賴關(guān)系C、發(fā)送者D、子系統(tǒng)6、下列關(guān)于創(chuàng)建包的說法不正確的是(A)A、在序列圖和協(xié)作圖中可以創(chuàng)建包B、在類圖中可以創(chuàng)建包C、如果將包永久刪除,包及其包中的內(nèi)容都將被刪除D、在創(chuàng)建包的依賴關(guān)系時(shí),盡量避免循環(huán)依賴7、下列代表包圖的是(A)8、下面哪一項(xiàng)不是包圖中的關(guān)系(D)(A)<<use>>(B)<<access>> (C)<<trace>> (D)<<stub>>三、填空題1、在UML的建模及之中,模型的組織是通過包來實(shí)現(xiàn)的。2、將系統(tǒng)分層很常用的一種方式是將系統(tǒng)分為三層的結(jié)構(gòu),分別是用戶界面層、業(yè)務(wù)邏輯層和數(shù)據(jù)訪問層。3、包圖是一種維護(hù)和描述系統(tǒng)總體結(jié)構(gòu)的模型的重要建模工具,通常對圖中各個(gè)包以及包之間的關(guān)系的描述,展現(xiàn)出系統(tǒng)的模塊與模塊之間的依賴關(guān)系4、包的組成包括名稱、包中擁有的元素和這些元素的可見性、包的構(gòu)造性以及包與包之間的關(guān)系。四、問答題1、什么是包圖?它有哪些作用?答案見上面重要內(nèi)容2、包圖有哪些組成部分?包的組成包括名稱、包中擁有的元素和這些元素的可見性、包的構(gòu)造性以及包與包之間的關(guān)系。3、什么是模型的組織結(jié)構(gòu)?為什么模型需要有自己的內(nèi)部組織結(jié)構(gòu)?答:計(jì)算機(jī)系統(tǒng)的模型被應(yīng)用在一個(gè)給出了模型含義的大型語境中,包括模型的內(nèi)部組織、整個(gè)開發(fā)過程中每個(gè)模型的注釋說明、一個(gè)默認(rèn)值集合、創(chuàng)建和操縱模型的假定條件以及

溫馨提示

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

評(píng)論

0/150

提交評(píng)論