安徽工業(yè)大學(xué)《UML系統(tǒng)建模與分析設(shè)計》復(fù)習(xí)資料_第1頁
安徽工業(yè)大學(xué)《UML系統(tǒng)建模與分析設(shè)計》復(fù)習(xí)資料_第2頁
安徽工業(yè)大學(xué)《UML系統(tǒng)建模與分析設(shè)計》復(fù)習(xí)資料_第3頁
安徽工業(yè)大學(xué)《UML系統(tǒng)建模與分析設(shè)計》復(fù)習(xí)資料_第4頁
安徽工業(yè)大學(xué)《UML系統(tǒng)建模與分析設(shè)計》復(fù)習(xí)資料_第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、【精品文檔】如有侵權(quán),請聯(lián)系網(wǎng)站刪除,僅供學(xué)習(xí)與交流安徽工業(yè)大學(xué)UML系統(tǒng)建模與分析設(shè)計復(fù)習(xí)資料.精品文檔.論述基于 UML 的軟件開發(fā)的 一般過程 答:UML 是按 OO 思想進行系統(tǒng)建模時使用的一組表示法,它并不對采用何種 OO 分析、設(shè)計以及開發(fā)過程模型構(gòu)成限制?;?UML 的軟件開發(fā)通常是以體系結(jié)構(gòu)為中心,用例驅(qū)動的迭代和增量式開發(fā),并結(jié)合職責(zé)分配模式進行具體設(shè)計。開發(fā)過程可以包括計劃和細化、迭代的構(gòu)造和實施 3 大階段。在經(jīng)過一個初步的計劃和細化階段后,進入若干 迭代構(gòu)造開發(fā)周期,每個周期都包含分析、設(shè)計、構(gòu)造和測試步驟。 (1)計劃和細化:通過各種傳統(tǒng)的需求獲取手段(調(diào)查、訪談、

2、原型等)得出 系統(tǒng)目標(biāo)、系統(tǒng)功能和系統(tǒng)屬性,撰寫系統(tǒng)規(guī)格說明?;趨⑴c者和外部事件(動賓詞組)構(gòu)建用例,以增 進對領(lǐng)域過程和功能需求的 理解做什么。按照風(fēng)險 、業(yè)務(wù)主線及對體系結(jié)構(gòu)的影響程度(系統(tǒng)屬性)劃分用例的優(yōu)先級,并據(jù)此決定用例的時間調(diào)度。對高優(yōu)先 用例采用擴展格式細化。同時建立概念模型草案、系統(tǒng)體系結(jié)構(gòu)草案。 (2)分析階段:根據(jù)當(dāng)前周期的用例描述,采用概念目錄列表、非正式分析或 事務(wù)模式,識別出相關(guān)概念,建立初始概念模型,根據(jù)通用關(guān)聯(lián)列表和信息存儲的需要,為概念模型添加關(guān)聯(lián)和屬性。將用例分解為系統(tǒng)事件,并對應(yīng)系統(tǒng)操作,建立系統(tǒng)順序圖;分析系統(tǒng)操作被調(diào)用后系統(tǒng)狀態(tài)(概念)的變化,為系統(tǒng)

3、操作建立契約,進一步理解系統(tǒng)行為做的效果。 (3 )設(shè)計階段:設(shè)計一個合理的體系結(jié)構(gòu),建立真實用例 。針對每個系統(tǒng)操作,使用操作契約和契約的后置條件以及用例描述文檔作為起點,按照職責(zé)分配模式或 BCE 模式為對象 (來自概念模型)分配職責(zé) ,通過協(xié)作圖體現(xiàn)對象間的 交互怎么做。同時參照概念模型和協(xié)作圖中的消息,建立設(shè)計類圖,并根據(jù)可見性要求設(shè)計關(guān)聯(lián) (4)構(gòu)造和測試階段:從設(shè)計類圖創(chuàng)建類的定義(屬性和方法原型),根據(jù)協(xié)作 圖創(chuàng)建方法實現(xiàn)。用 OOPL 實現(xiàn)設(shè)計制品到代碼的映射,對系統(tǒng)進行相關(guān)的測試。 進入下一個迭代周期,在制品同步以后,識別更多的需求,選取所需開發(fā)的用例,更新用例圖,擴展概念模

4、型,并運用泛化、包和聚合等技術(shù)概括日益增多新概念,拓展系統(tǒng)順序圖和系統(tǒng)操作契約;運用更多的職責(zé)分配模式進行設(shè)計(并根據(jù)需要設(shè)計與外部系統(tǒng)、其他子系統(tǒng)、持久化設(shè)施的交互機制);進一步構(gòu)造并測試。論述: 請談一談對 OOD 中“一個中心”:開閉原則(OCP),“兩個基本點”:高內(nèi)聚,低耦 合,“四項基本原則”:Liskov 替換原則(L SP),依賴倒置原則(DIP),接口分離 原則(ISP),單一職責(zé)原則(SRP)的理解 開閉原則(OCP) OO 中最重要的設(shè)計原則,指一個模塊在擴展性方面應(yīng)該是開放的,而在更改性方面應(yīng)該是封閉的 低耦合度:是在設(shè)計過程要記住的一個原則,它是一個時刻需要注意的隱含

5、設(shè)計目標(biāo)。是一個檢驗標(biāo)準(zhǔn)。 高聚合度:確保將復(fù)雜性保持在可控制的范圍內(nèi),也是一個檢驗標(biāo)準(zhǔn)。 Liskov 替換原則 子類可以替換父類出現(xiàn)在父類能出現(xiàn)的任何地方. 軟件實體如果使用的是一個基類,那么一定適用于其子類,而且它根本不能察覺出基類對象和子類對象的區(qū)別。 依賴倒置原則依賴關(guān)系應(yīng)該是盡量依賴接口(或抽象)類,而不是依賴于具體類. 即針對接口編程,不要針對實現(xiàn)編程。 接口分離原則 一個類對另外一個類的依賴是建立在最小的接口上。設(shè)計時采用多個與特定客戶類(Client)有關(guān)的接口比采用一個通用接口更好. 單一職責(zé)原則:就一個類而言,應(yīng)該有且僅有一個引起它變化的原因。 論述前 5 個常用 GRA

6、S P 職責(zé)分配模式的名稱、要點或意圖 專 家(expert):將職責(zé) 分配給信息專 家掌握為 了履行職責(zé)所 必需的信息的 類(誰懂的 多就讓 誰干) 創(chuàng)建者(creator):大的對 象有責(zé)任創(chuàng)建小的對象,這是 OOD/P 中最常見的任務(wù)。 高聚合度或高內(nèi)聚(high cohesion):是一個檢驗標(biāo)準(zhǔn),用于判斷一個類中的各個職責(zé)之間相關(guān)程度 和集中程度(可重用性的內(nèi)因)。 低 耦合度或低耦 合(low coupling):是一 個檢驗標(biāo)準(zhǔn), 用于判斷類 間依賴程度 是否較小(可重用性的外在表現(xiàn))。 控制者(controller):誰來統(tǒng)一協(xié)調(diào) 處理一個用例的各個系統(tǒng)事件,以使?fàn)顟B(tài)信息保持一

7、致? 論述后 4 個常用 GRAS P 職責(zé)分配模式的名稱、要點或意圖 多態(tài):當(dāng)相關(guān)的可選擇的方法或行為隨著類型變化時,將行為的職責(zé)使用多態(tài)(Polymorphism)的操作分配給那些行為變化的類型 純虛構(gòu):給一個人造類分配一組高度內(nèi)聚的職責(zé)。人造類不代表問題領(lǐng)域的任何事物它只是純虛構(gòu)的,為了支持高度的內(nèi)聚性、低耦合和重用。這個虛構(gòu)物的設(shè)計是非常干凈的或純的因此這是一個純虛構(gòu)。如持久存儲代理。 中介者:將職責(zé)分配給一個中間對象以便在其他構(gòu)件或服務(wù)之間進行仲裁,這樣這些構(gòu)件或服務(wù)沒有被直接耦合。這個中間對象(intermediary) 在其他構(gòu)件或服務(wù)間創(chuàng)建一個中介者(Indirection)。

8、如適配器、觀察者模式。 “不要和陌生人講話”: 分配職責(zé)給一個客戶端的直接對象以使它與一個間接對象進行協(xié)作,這樣客戶端就無需知道這個間接對象。目的是為了避免將一個客戶端同間接對象發(fā)生信息耦合和避免直接對象的內(nèi)部描述。 第 1 章 系統(tǒng)建模與分析設(shè)計技術(shù)的演變* 一、選擇題 ACDB 1封裝是指把對象的( A )結(jié)合在一起,組成一個獨立的對象。 A 屬性和操作 B信息流 C消息和事件 D數(shù)據(jù)的集合 2封裝是一種( C )技術(shù),目的是使對象的生產(chǎn)者和使用者分離,使對象的定義和實現(xiàn)分開。 A工程化 B系統(tǒng)維護 C信息隱蔽 D產(chǎn)生對象 3面向?qū)ο蠓椒ㄖ械? D )機制使子類可以自動地擁有(復(fù)制)父類全

9、部屬性和操作。 A約束 B對象映射 C信息隱蔽 D繼承 4使得在多個類中能夠定義同一個操作或?qū)傩悦?,并在每一個類中有不同的實現(xiàn)的一種方法是( B )。 A繼承 B. 多態(tài)性 C. 約束 D. 接口 二、填空題 6軟件生存周期由(軟件定義)、(軟件開發(fā))和(軟件使用與維護)三部分組成。 8面向?qū)ο蠹夹g(shù)采用以類為中心的(封裝)、(繼承)、(多態(tài))等不僅支持軟件復(fù)用,而且使軟件維護工作可靠有效,可實現(xiàn)軟件系統(tǒng)的柔性制造。簡答軟件過程模型的含義 軟件過程(Software Engineering Process)是為了獲得高質(zhì)量軟件所需要完成的一系列任務(wù)的框架,它規(guī)定了完成各項任務(wù)的工作步驟。套路 通

10、常使用生命周期模型簡潔地描述軟件過程。生命周期模型規(guī)定了把生命周期劃分成哪些階段及各個階段的執(zhí)行順序,因此,也稱為過程模型。 請指出三種以上現(xiàn)實生活中的常用模型,并說明它們分別在各自的領(lǐng)域中發(fā)揮了什么樣的作用。 1)電路圖:電子產(chǎn)品設(shè)計、生產(chǎn)、維修 2)園區(qū)沙盤:直觀、立體化地展示園區(qū)的景觀、布局 3)地圖:導(dǎo)航、指路等 請簡要說明建模的意義和建模的原則。 建議能夠幫助我們按照實際情況或按我們需要的樣式對系統(tǒng)進行可視化;提供一種詳細說明系統(tǒng)的結(jié)構(gòu)或行為的方法;給出一個指導(dǎo)系統(tǒng)構(gòu)造的模板;對我們所做出的決策進行文檔化 在建模時應(yīng)遵循以下原則:選擇要創(chuàng)建什么模型對如何動手解決問題和如何形成解決方案

11、有著意義深遠的影響;每一種模型可以在不同的精度級別上表示;最好的模型是與現(xiàn)實相聯(lián)系的;單個模型是不充分的。對每個重要的系統(tǒng)最好用一組幾乎獨立的模型去處理 第 2 章 統(tǒng)一建模語言 UML * 一、選擇題 ABCDB 1UML 的軟件以( A )為中心,以系統(tǒng)體系結(jié)構(gòu)為主線,采用循環(huán)、迭代、漸增的方式進行開發(fā)。 A用例 B對象 C類 D程序2UML 的( B )模型圖由類圖、對象圖、包圖、構(gòu)件圖和配置圖組成。 A用例 B靜態(tài) C動態(tài) D系統(tǒng) 3UML 的( C )模型圖由活動圖、順序圖、狀態(tài)圖和合作圖組成。 A用例 B靜態(tài) C動態(tài) D系統(tǒng) 4UML 的最終產(chǎn)物就是最后提交的可執(zhí)行的軟件系統(tǒng)和(

12、D )。 A用戶手冊 B類圖 C動態(tài)圖 D相應(yīng)的軟件文檔資料 5在 UML 的需求分析建模中,( B )模型圖必須與用戶反復(fù)交流并加以確認。 A配置 B用例 C包 D動態(tài) 二、填空題6UML 分析和設(shè)計模型由三類模型圖表示。三類模型圖是:(用例)模型圖、(靜態(tài))模型圖和(動態(tài))模型圖。 8UML 開發(fā)過程是一種二維結(jié)構(gòu)軟件開發(fā)過程,軟件項目開發(fā)過程流包括的核心工作內(nèi)容是:(分析)、(設(shè)計)、(實現(xiàn))、(測試)和(配置)。 9UML 中的五個不同的視圖可以完整地描述出所建造的系統(tǒng),這五種視圖是(用例)視圖、(邏輯)視圖、(構(gòu)件)視圖、(進程)視圖和(配置)視圖 10UML 中有 10 種基本圖可

13、以完整地描述出所建造的系統(tǒng),這 10 種圖是 (用例圖;類圖、對象圖、包圖、構(gòu)件圖、配置圖;活動圖、順序圖、狀態(tài)圖,合作圖) 四、綜合 (22、24、33) 簡答22UML 軟件開發(fā)過程的特征是什么? UML 軟件開發(fā)的基本特征是:以用例驅(qū)動開發(fā)過程,以系統(tǒng)體系結(jié)構(gòu)為中心,以質(zhì)量控制和風(fēng)險管理為目標(biāo),采用反復(fù)(迭代、循環(huán))、漸增式的螺旋上升式開發(fā)過程。 簡答24UML 中的類圖建模的目的與意義是什么? 名正言順事物是普遍聯(lián)系的 類圖是用類和它們之間的關(guān)系描述系統(tǒng)的一種圖示,展示了系統(tǒng)中類的靜態(tài)結(jié)構(gòu)和類與類之間的相互聯(lián)系,表示一個系統(tǒng)的邏輯結(jié)構(gòu)。類圖是構(gòu)件其他圖的基礎(chǔ),沒有類圖,也就沒有狀態(tài)圖、

14、合作圖等其他圖,也就無法表示系統(tǒng)的其他各個方面。 簡答33UML 中的順序圖建模目的與意義是什么? 順序圖用來描述對象之間動態(tài)的交互關(guān)系,著重體現(xiàn)對象間消息傳遞的時間順序。作為動態(tài)模型制品之一,順序圖可以描述系統(tǒng)的動態(tài)行為和控制結(jié)構(gòu)。通過描述對象間動態(tài)合作關(guān)系,顯示對象之間的交互過程以及交互順序,同時描述了為滿足用例要求所進行的活動以及活動間的約束關(guān)系。 簡答請說明藍圖和草圖的區(qū)別,并簡單描述其適用的場景。 藍圖一般是指采用 CASE 工具繪制的、正式的、規(guī)范的 UML 模型;而草圖則通常是指手工繪制的、規(guī)范度較低的在紙張的 UML 模型。 對于局部的、重要性不高的、共享范圍較小的 UML 模

15、型,直接將草圖掃描到電腦存檔即可;對于全局的、重要性高的、高度共享的,在草圖的基礎(chǔ)上用 CASE 工具繪制成為正式的藍圖,并將其納入統(tǒng)一的模型管理中 第 3 章 需求分析與用例建模 * 一、選擇 BACDDAA 1可行性研究分析包括經(jīng)濟可行性分析、技術(shù)可行性分析和( B )。 A風(fēng)險可行性分析 B法律可行性分析 C資源可行性分析 D效益可行性分析 2UML 的客戶需求分析模型包括( A )模型、類圖、對象圖和活動圖組成。 A用例 B靜態(tài) C動態(tài) D系統(tǒng) 3UML 客戶需求分析使用的 CRC 卡上“責(zé)任”一欄的內(nèi)容主要描述類的( C )和操作。 A對象成員 B關(guān)聯(lián)對象 C屬性 D私有成員 4UM

16、L 客戶需求分析產(chǎn)生的用例模型描述了系統(tǒng)的( D )。 A狀態(tài) B體系結(jié)構(gòu) C靜態(tài)模型 D. 功能要求 5在 UML 的需求分析建模中,用例模型必須與( D )反復(fù)交流并加以確認。 A軟件生產(chǎn)商 B用戶 C軟件開發(fā)人員 D問題領(lǐng)域?qū)<?6在 UML 的需求分析建模中,對用例模型中的用例進行細化說明應(yīng)使用( A )。圖-文字圖 A活動圖 B狀態(tài)圖 C配置圖 D. 構(gòu)件圖 7活動圖中的分劈和同步接合圖符是用來描述 ( A )。A多進程的并發(fā)處理行為 B. 對象的時序 C類的關(guān)系 D系統(tǒng)體系結(jié)構(gòu)框架 二、填空題10軟件項目的可行性研究分析中,技術(shù)可行性研究包括(風(fēng)險分析)、(資源分析)、(技術(shù)分析)

17、3 部分組成。 11在 UML 軟件開發(fā)過程的需求分析階段,建立用例模型的步驟分為(確定系統(tǒng)范圍、參與者和用例)、(描述用例)、(用例分類、確定用例之間的關(guān)聯(lián))、(建立用例圖)和(定義用例圖的層次結(jié)構(gòu))及審核用例模型。 12用例圖中以實線方框表示系統(tǒng)的范圍和邊界,在系統(tǒng)邊界內(nèi)描述的是(用例或系統(tǒng)內(nèi)部元素),在邊 界外描述的是(參與者)。 13用例模型中的執(zhí)行者可以是(人)也可以是(外部系統(tǒng))。 14用例模型中的用例之間的關(guān)聯(lián)有(繼承)關(guān)聯(lián)、(擴展)關(guān)聯(lián)、(包含)關(guān)聯(lián)和(使用)關(guān)聯(lián)。 在 RUP 的“4+1”視圖中,這個 1 表示的是什么,它有什么作用。 這個 1 是用例視圖。它是最基本的需求分

18、析模型,是可被最終用戶看到的系統(tǒng)行為的用例組成。常用的模型包括用例圖、交互圖、狀態(tài)圖、活動圖等 簡答用例、用例模型 用例:是一個敘述型文檔,用來描述一個參與者(一個外部的主動者)使用系統(tǒng)完成某個過程時的事件發(fā)生順序。 (用例是對領(lǐng)域過程的描述,盡管它不是真正面向?qū)ο蟮?,但采用用例可以增進對需求的理解,因此仍然 OO 方法學(xué)中非常重要和廣泛采用的需求分析制品。) 用例模型:是一種使用用例來描述系統(tǒng)功能需求的模型,包括高層用例、基本用例、(擴展用例、真實用例)以及描述用例、參與者之間關(guān)系的用例圖。 簡答何為契約?通常從哪幾方面描述后置條件 契約(contract)是一個描述某操作應(yīng)該得到什么結(jié)果的

19、文檔。 它經(jīng)常采用敘述體,強調(diào)發(fā)生了什么而不是如何發(fā)生。 通常契約是用前置和后置條件中描述的狀態(tài)變化來表達。 實例創(chuàng)建,形成關(guān)聯(lián),屬性修改 分析根據(jù)要求畫用例圖。(10 分) 在圖書管理系統(tǒng)中,讀者可以通過管理員進行借書、還書、預(yù)約借書和取消預(yù)約等操作。其中借書必須先進行圖書查詢工作;還書時,如果讀者所借書籍超期,還要進行超期罰款。 (1)請畫出描述該業(yè)務(wù)的用例圖(5 分) (2)說明用例“借書”與“圖書查詢”之間,“還書”與“超期罰款”之間關(guān)系的含義。 (1) 圖書查詢借書 讀者查詢管理員 還書超期罰款預(yù)約書籍讀者取消預(yù)約(2)include 意味著 must,表示大用例的流程必須包含小用例

20、的流程;extend 意味著 option,表示大用例的流程可選地被小用例的流程擴展。 分析。 一個人事管理信息系統(tǒng)的需求如下:所有用戶需登錄系統(tǒng);一般用戶可以查看一般報表,導(dǎo)出一般報表和打印一般報表;錄入員可以新增數(shù)據(jù)、查看數(shù)據(jù)和修改數(shù)據(jù);領(lǐng)導(dǎo)可以查看高級報表。(1)請使用用例間的關(guān)系精化用例圖,使系統(tǒng)具有最好的用戶體驗。(2)說明所用用例之間關(guān)系的含義。 (1) (2)include 意味著 must,表示大用例的流程必須包含小用例的流程;extend 意味著 option,表示大用例的流程可選地被小用例的流程擴展。 分析根據(jù)要求畫用例圖 在電子商城系統(tǒng)的“購物用戶管理”模塊中,“購物用戶

21、”(參與者)可以“注冊帳號”、“登錄系統(tǒng)”、“關(guān)閉帳號”和“查看個人資料”(有可能進一步“查看歷史訂單”和“查看當(dāng)前訂單”)。“系統(tǒng)管理員”(參與者)可以“刪除購物用戶”(提示:必須先“關(guān)閉帳號”) (1)請畫出描述該業(yè)務(wù)的用例圖 (2)說明用例“刪除購物用戶”與“關(guān)閉帳號”之間;“查看歷史訂單”與“查看個人資料”之間關(guān)系的含義。 分析某銀行計劃開發(fā)一個自動存提款機模擬系統(tǒng)(ATM System)。系統(tǒng)通過讀卡器(CardReader)讀取 ATM 卡;系統(tǒng)與 客 戶 (Customer) 的 交 互 由 客 戶 控 制 臺 (CustomerConsole) 實 現(xiàn) ; 銀 行 操 作 員

22、(Operator) 可 控 制 系 統(tǒng) 的 啟 動(SystemStartup)和停止(SystemShutdown);系統(tǒng)通過網(wǎng)絡(luò)和銀行系統(tǒng)(Bank)實現(xiàn)通信。 當(dāng)讀卡器判斷用戶己將 ATM 卡插入后,創(chuàng)建會話(Session)。會話開始后,讀卡器進行讀卡,并要求客戶輸入個人驗證碼(PIN)。系 統(tǒng)將卡號和個人驗 證碼信息送到銀 行系統(tǒng)進行驗證。 驗證通過后???戶可從菜單選擇如 下事務(wù)(Transaction):從 ATM 卡賬戶取款(Withdraw);向 ATM 卡賬戶存款(Deposit);進行轉(zhuǎn)賬(Transfer);查詢(Inquire)ATM卡賬戶信息。 一次會話可以包含多

23、個事務(wù),每個事務(wù)處理也會將卡號和個人驗證碼信息送到銀行系統(tǒng)進行驗證。若個人驗證碼錯誤,則轉(zhuǎn)個人驗證碼錯誤處理(Invalid PIN Process)。每個事務(wù)完成后,客戶可選擇繼續(xù)上述事務(wù)或退卡。選擇退卡時系統(tǒng)彈出 ATM 卡,會話結(jié)束。 (1)完善用例圖中的用例和關(guān)系。(5 分) (2)說明用例“Session”與“Transaction”之間,“Invalid PIN Process”與“Transaction”之間關(guān)系的含義。 (1) 對于一個電子商務(wù)網(wǎng)站而言,以下哪些不是合適的用例,指出并說明理由。 輸入支付信息 將商品放入購物車 結(jié)賬 預(yù)訂商品 用戶登錄 郵寄商品 查看商品詳情 輸

24、入支付信息:太小 郵寄商品:系統(tǒng)功能之外 查看商品詳情:太小 請指出下列用例不是有效用例的原因。 用例的執(zhí)行結(jié)果對參與者來說是可觀測的和有意義的。填寫取款單不是取款人的目的。因此不是用例。 用例總是由一個參與者發(fā)起的參與者的愿望是這個用例存在的原因。ATM 是沒有吐鈔的愿望的因此不能發(fā)起用例 用例必然是以動賓短語形式出現(xiàn)的。 用例間的包含關(guān)系不是象函數(shù)調(diào)用那樣為了得到返回值,用例必須與參與者有互動。 第 4 章 系統(tǒng)分析與對象類建模 即概念建模 * 一、選擇題 1UML 的系統(tǒng)分析進一步要確立的三個系統(tǒng)模型是( B )、對象動態(tài)模型和系統(tǒng)功能模型。 A數(shù)據(jù)模型 B對象靜態(tài)模型 C對象關(guān)系模型

25、D體系結(jié)構(gòu)模型 2UML 的客戶需求分析、系統(tǒng)分析和系統(tǒng)設(shè)計階段產(chǎn)生的模型,其描述圖符( A )。 A完全相同 B完全不同 C不可以通用 D稍有差異 3類和對象都有屬性,它們的差別是:類描述了屬性的類型,而對象的屬性必須有( C )。 A正負號 B動作 C具體值 D私有成員 4UML 系統(tǒng)分析階段產(chǎn)生的包圖描述了系統(tǒng)的( B )。 A狀態(tài) B系統(tǒng)體系層次結(jié)構(gòu) C靜態(tài)模型 D功能要求 5設(shè)計模式在面向?qū)ο笙到y(tǒng)設(shè)計中是( B )的一種形式。 A軟件調(diào)用 B設(shè)計方法 C子系統(tǒng) D軟件復(fù)用 6對象容器設(shè)計模式對有限的對象進行管理,它不能( C )。 A查找對象 B修改對象 C創(chuàng)建對象 D刪除對象 二、

26、填空題 7在 UML 軟件開發(fā)過程系統(tǒng)分析階段產(chǎn)生的對象模型有三種模型。它們是:對象的_模型、對象的_模型和對象的_模型。 8在 UML 的對象類圖中,類之間的關(guān)系有_關(guān)聯(lián)_、_聚集_、_繼承_、_依賴_和_細化_5 種。 9共享聚集的“部分”對象可以是任意“整體”對象的一部分,表示事物的整體部分關(guān)系較弱的情況,“整體”端的重數(shù)應(yīng)該是_非 1_ 。 10在 UML 軟件開發(fā)過程的需求分析和系統(tǒng)分析階段,建立對象類模型的步驟分為(尋找確定對象類)、(定義類的接口)、(定義類間關(guān)系)、(建立對象類圖)和(建立系統(tǒng)包圖)。 11組合聚集是指“整體”擁有它的“部分”,它具有強的物主身份,表示事物的整體

27、部分關(guān)系較強的情況。“部分”生存在“整體”中,不可分離,它們與“整體”一起存在或消亡?!罢w”的重數(shù)必須是_1_。 12系統(tǒng)分析是在客戶需求分析規(guī)格說明的基礎(chǔ)之上對其進行的(類和對象建模)_。 13類有實例,它的實例是一個對象。在 UML 中,包用來表示一個(子系統(tǒng)),包沒有實例。 三、解釋名詞 簡答概念模型 概念模型(conceptual model) :是問題域中概念的描述。它展示出問題域中有意義的概念,它是面向?qū)ο蠓治鲋凶钪匾闹破?。概念模型是真實世界中各個事物的代表,而不是軟件中各構(gòu)件的代表。通過將問題分解成多個單獨的概念或者對象,我們就可以識別出問題域中重要的概念、屬性和關(guān)聯(lián),進而得

28、出一組刻畫問題域的圖形。 簡答在繪制類圖時,第一步就是發(fā)現(xiàn)類,最常用的方法是什么?請簡要說明它的使用方法。 發(fā)現(xiàn)類的方法有很多種,其中最廣泛應(yīng)用的莫過于“名詞動詞法”,其主要規(guī)則是從名詞與名詞短語中提取對象與屬性;從動詞與動詞短語中提取操作與關(guān)聯(lián);而所有格短短語通常表明名詞應(yīng)該是屬性而不是對象。 分析在下圖中,是一個倉庫管理系統(tǒng)的類模型局部,其中 IncomeOrder 是指入庫單,OrderItem 是指入庫單中的每一項,Product 則是產(chǎn)品信息。請指出模型中的錯誤,說明原因并改正錯誤。 IncomeOrder11ProductOrderItem倉庫管理系統(tǒng)類模型局部 根據(jù)題意和模型不難

29、得知,一個入庫單(IncomeOrder)是由多個入庫單項(OrderItem)組成的,因此: (1)OrderItem 與 IncomeOrder 應(yīng)該是組合關(guān)系。 (2)一個入庫單不可能只涉及一個產(chǎn)品,合理的方式應(yīng)該是入每個入庫單項(OrderItem)與產(chǎn)品一對一關(guān)聯(lián)。 即應(yīng)該繪制為: 分析 請根據(jù)下列文字畫出概念模型,并說明文字與圖形各自的優(yōu)缺點:一輛車身是紅色金屬漆的小轎車,裝備四個普利斯通牌的輪胎,它是一輛四門車,車門是加厚的,并且前后門玻璃上貼黑色的膜。前后擋風(fēng)玻璃里都 裝有電熱絲,后視鏡是電動可調(diào)的。(注意:許多隱含信息被省略了,例如車身和輪胎是安裝在汽車上的,車門是安裝在車身

30、上的等等) 答: 文字有利于分析員與客戶間無障礙交流,因為無需經(jīng)過培訓(xùn),客戶就可以看懂文字描述。缺點是無歧義的文字往往冗長乏味。圖形更易于表達隱含的信息和文字中隱晦的含義,尤其是元素之間的關(guān)系一目了然 分析 如果打算給一個正規(guī)的大公司開發(fā)一個人事管理系統(tǒng),請改進以下局部概念模型,并說明理由。 (1) (2)組合:正規(guī)的大公司一般不允許員工受雇多家公司;應(yīng)設(shè)計關(guān)聯(lián)類存儲薪金、職位、合同期 分析請按 Peter Coad 的事務(wù)模式(人、地、物、事務(wù)、后續(xù)事務(wù)等)快速勾勒出“酒店聯(lián)合訂房系統(tǒng)”的概念模型。 第 5 章系統(tǒng)設(shè)計與對象動態(tài) 交互模型 * VS 動態(tài)狀態(tài)模型 一、選擇題2順序圖和合作圖主

31、要用于對用例圖中( B )的建模,用它們來描述用例圖的行為。 A數(shù)據(jù)流 B控制流 C消息流 D數(shù)據(jù)字典 3順序圖的模型元素有( A )、消息、鏈接等,這些模型元素表示某個用例中的若干個對象和對象之間所傳遞的消息,來對系統(tǒng)的行為建模。 A對象 B箭線 C活動 D狀態(tài) 4順序圖描述( D )對象之間消息的傳遞順序。 A某個 B單個 C一個類產(chǎn)生的 D一組 5順序圖和合作圖建立了 UML 面向?qū)ο箝_發(fā)過程中的對象動態(tài)( A )模型。 A交互 B狀態(tài) C體系結(jié)構(gòu) D軟件復(fù)用 二、填空題7(順序)圖和(合作)圖用來表達對象之間的交互,是描述一組對象如何合作完成某個行為的模型化工具。 9。線程是(進程內(nèi))

32、的一個動作流,能夠與其他線程并發(fā)執(zhí)行。 10(主動對象)是一個擁有進程或線程的對象,能初始化控制活動,可以獨立并發(fā)運行。 11(被動對象)是一個必須由其他對象發(fā)來的消息進行觸發(fā)才執(zhí)行動作的對象。 三、解釋名詞 已標(biāo)為論述5 個常用 GRASP 職責(zé)分配模式的名稱、要點或意圖 專家(expert):將職責(zé)分配給信息專家掌握為了履行職責(zé)所必需的信息的類(誰懂的多就讓誰干) 創(chuàng)建者(creator):大的對象有責(zé)任創(chuàng)建小的對象,這是 OOD/P 中最常見的任務(wù)。 高聚合度或高內(nèi)聚(high cohesion):是一個檢驗標(biāo)準(zhǔn),用于判斷一個類中的各個職責(zé)之間相關(guān)程度和集中程度(可重用性的內(nèi)因)。 低耦

33、合度或低耦合(low coupling):是一個檢驗標(biāo)準(zhǔn),用于判斷類間依賴程度是否較小(可重用性的外在表現(xiàn))。 控制者(controller):誰來統(tǒng)一協(xié)調(diào)處理一個用例的各個系統(tǒng)事件,以使?fàn)顟B(tài)信息保持一致? 四、綜合題 22系統(tǒng)動態(tài)建模包括哪些模型? 動態(tài)交互模型和動態(tài)狀態(tài)模型 23描述對象交互行為有哪幾種圖? 順序圖、合作圖、狀態(tài)圖、活動圖 簡答UML 中的交互圖有兩種,分別是順序圖和協(xié)作圖,請分析一下兩者之間的主要差別和各自的優(yōu)缺點。掌握利用兩種圖進行的設(shè)計的方法。 答:協(xié)作圖可視化地表示了對象之間隨時間發(fā)生的交互,它除了展示對象之間的關(guān)聯(lián),還顯示出對象之間的消息傳遞。與順序圖一樣,協(xié)作圖

34、也展示對象之間的交互關(guān)系。順序圖強調(diào)的是交互的時間順序,而協(xié)作圖強調(diào)的是交互的語境和參與交互的對象的整體組織。順序圖按照時間順序布圖,而協(xié)作圖按照空間組織布圖。 順序圖可以清晰地表示消息之間的順序和時間關(guān)系,但需要較多的水平方向的空間。 協(xié)作圖在增加對象時比較容易,而且分支也比較少,但如果消息比較多時難以表示消息之間的順序。 分析請根據(jù)以下用例描述,結(jié)合 Ivar Jacobson 的 BCE 模式,畫出順序圖。 分析將給出的協(xié)作圖轉(zhuǎn)化為等價的順序圖。(10 分)同時要求能將順序圖轉(zhuǎn)協(xié)作圖 第 6 章 系統(tǒng)動態(tài)建模狀態(tài)模型 * 一、選擇題 1.狀態(tài)圖可以表現(xiàn)( B )在生存期的行為、所經(jīng)歷的狀

35、態(tài)序列、引起狀態(tài)轉(zhuǎn)移的事件以及因狀態(tài)轉(zhuǎn)移而引起的動作。 A一組對象 B一個對象 C多個執(zhí)行者 D幾個子系統(tǒng) 2.狀態(tài)圖描述一個對象在不同( A )的驅(qū)動下發(fā)生的狀態(tài)遷移。 A事件 B對象 C執(zhí)行者 D數(shù)據(jù) 4.活動圖中動作狀態(tài)之間的遷移不是靠( B )觸發(fā)的,當(dāng)活動狀態(tài)中的活動完成時遷移就被觸發(fā)。 A對象 B事件 C執(zhí)行者 D系統(tǒng) 5.狀態(tài)圖和活動圖建立了 UML 面向?qū)ο箝_發(fā)過程中的對象動態(tài)( B )模型。 A交互 B狀態(tài) C體系結(jié)構(gòu) D軟件復(fù)用 二、填空題 6.順序狀態(tài)表明狀態(tài)之間的遷移是(串行的)的,即一個接一個順序遷移。 9.在活動圖中,(虛箭線)也稱為對象流,對象流表示動作狀態(tài)或活動

36、狀態(tài)與對象之間的關(guān)聯(lián)。 11活動圖中活動狀態(tài)的遷移(不是)由事件進行觸發(fā),一個活動執(zhí)行完畢(可以直接)進入下一個活動狀態(tài)。 第 7 章 系統(tǒng)體系結(jié)構(gòu)建模 * 一、選擇題 1.系統(tǒng)體系結(jié)構(gòu)是用來描述系統(tǒng)各部分的結(jié)構(gòu)、接口以及它們用于通信的( A )。 A一種機制 B形式 C原理 D結(jié)構(gòu) 2.UML 可以描述硬件之間的互聯(lián)關(guān)系,也能描述硬件單元上的( B )系統(tǒng)的分布。 A對象 B軟件 C系統(tǒng)體系結(jié)構(gòu) D數(shù)據(jù) 3.( B )是對系統(tǒng)的用例、類、對象、接口以及相互間的交互和協(xié)作進行描述。 A系統(tǒng)體系結(jié)構(gòu) B軟件(邏輯)體系結(jié)構(gòu) C硬件(物理)系統(tǒng)體系結(jié)構(gòu) D系統(tǒng)框架 4.( D )要對系統(tǒng)的構(gòu)件、結(jié)

37、點的配置進行描述。 A軟件(邏輯)系統(tǒng)體系結(jié)構(gòu) B系統(tǒng)體系結(jié)構(gòu) C系統(tǒng)架構(gòu) D硬件(物理)系統(tǒng)體系結(jié)構(gòu) 5.( A )是軟件(邏輯)系統(tǒng)體系結(jié)構(gòu)(類、對象、它們間的關(guān)系和協(xié)作)中定義的概念和功能在物理體系結(jié)構(gòu)中的實現(xiàn)。 A構(gòu)件 B結(jié)點 C軟件 D模塊 6.( C )由結(jié)點和結(jié)點之間的聯(lián)系組成,描述了處理器、設(shè)備和軟件構(gòu)件運行時的體系結(jié)構(gòu)。A構(gòu)件圖 B狀態(tài)圖 C配置圖 D 順序圖 7.( D )的基本元素有結(jié)點、構(gòu)件、對象、連接、依賴等。 A構(gòu)件圖 B狀態(tài)圖 C順序圖 D配置圖 二、填空題 8.系統(tǒng)體系結(jié)構(gòu)建??煞譃椋ㄜ浖w系結(jié)構(gòu))建模和(硬件體系結(jié)構(gòu))建模。 9.構(gòu)件是(軟件系統(tǒng)體系結(jié)構(gòu))(類

38、、對象、它們間的關(guān)系和協(xié)作)中定義的概念和功能在(物理體系結(jié)構(gòu))中的實現(xiàn)。 10.構(gòu)件圖主要用于建立系統(tǒng)的(軟件體系結(jié)構(gòu))模型。 第 8 章 設(shè)計模式及其應(yīng)用 * 一、選擇題 1設(shè)計模式( B )具體的編程語言。A依賴于 B獨立于 C依附于 D指定了 2設(shè)計模式是面向?qū)ο筌浖こ讨械囊粋€重要概念,是由軟件模式分支中衍生出來的一個解決( A )的重要方案之一。 A具體問題 B抽象問題 C需求分析 D數(shù)據(jù)流程 3445 節(jié)介紹的“對象集合管理器”模式就是本章介紹的( D )模式。 A工廠方法 B抽象工廠 C單例 D簡單工廠 4單例模式屬于對象創(chuàng)建型模式,它保證一個類僅有( C )。 A一個屬性 B

39、一個操作 C一個實例 D一個對象成員 5在面向?qū)ο笤O(shè)計中,設(shè)計模式是系統(tǒng)( B )的基礎(chǔ),正確地使用設(shè)計模式,有助于快速開發(fā)出可復(fù)用的系統(tǒng)。 A分析 B可復(fù)用 C設(shè)計 D實現(xiàn)(編程)6設(shè)計模式就是對( D )的描述或解決方案,往往直接對應(yīng)一段程序代碼。 A某個構(gòu)件 B成熟的設(shè)計 C一個用例 D特定問題 7簡單一點兒講,模式就是解決特定問題的經(jīng)驗,實質(zhì)上就是軟件的( C )。 A建模 B一個模塊 C復(fù)用 D一個構(gòu)件 二、填空題 9工廠模式有 3 種形態(tài):(簡單工廠)模式、(工廠方法)模式和(抽象方法)模式。 11設(shè)計模式按照模式的目的將其分為(創(chuàng)建型)、(結(jié)構(gòu)型)和(行為型)。這三種類型的設(shè)計模

40、式分別描述了對象在創(chuàng)建、組合以及相互作用的過程中如何降低它們之間的耦合性、提高復(fù)用性的種種成功方案。 三、解釋名詞 16設(shè)計模式: 簡答設(shè)計模式的概念 有經(jīng)驗的面向?qū)ο蟮拈_發(fā)人員建立了一套一般原則和常用解決方案的“指令集”,用來指導(dǎo)軟件設(shè)計。這些原則和慣用法如果用結(jié)構(gòu)化的格式編撰成文,文中描述了所要解決的問題和對應(yīng)的解決方案,并且被賦予名字,那么這些原則和慣用法就被稱為模式(pattern) 第 9 章 軟件復(fù)用與構(gòu)件接口技術(shù) * 一、選擇題 1軟件復(fù)用技術(shù)的目的是降低軟件( C )、提高軟件開發(fā)的效率和縮短軟件開發(fā)周期。 A技術(shù)難度 B資源浪費 C開發(fā)和維護的成本 D代價 2軟件復(fù)用是面向?qū)?/p>

41、象系統(tǒng)分析與設(shè)計的核心支持技術(shù)之一,軟件復(fù)用的核心是( D )。 A對象類 B模塊 C設(shè)計模式 D軟件構(gòu)件技術(shù) 3軟件構(gòu)件是已經(jīng)通過全面測試并在( A )中運行過的可復(fù)用、功能獨立、完整且具有通用性的程序模塊。 A實際系統(tǒng) B實驗室 C系統(tǒng)調(diào)試 D用戶測試 4CORBA 由( B )制定,是體系結(jié)構(gòu)最完整、最清晰、跨越平臺最多的分布式對象模型。 ASun 公司 B對象管理組織 CMicrosoft 公司 D國際標(biāo)準(zhǔn)化組織 5CORBA 是一套( A ),為應(yīng)用開發(fā)提供一個公共框架,推動構(gòu)件市場的發(fā)展。 A規(guī)約 B建模語言 C設(shè)計范本 D編程語言 6持久對象是( C )其構(gòu)造過程的對象。 A依賴

42、于 B區(qū)別于 C獨立于 D不是 二、填空題 10關(guān)系數(shù)據(jù)庫不能直接存?。ǔ志脤ο螅?,必須有一個轉(zhuǎn)換程序?qū)?yīng)用系統(tǒng)中的(暫時對象)映射為關(guān)系數(shù)據(jù)庫中的二維表格列對應(yīng)類中的(屬性),每一行對應(yīng)該類的一個(實例)。 補充題 將對象包起來,使外界只能看到對象的接口,而不能知道對象內(nèi)部的具體內(nèi)容,這是對對象進行( C )。 A、結(jié)合 B、隱藏 C、封裝 D、抽象 以下選項中,不屬于對象的特點是( C )。 A、獨立性 B、封閉性 C、聯(lián)合性 D、動態(tài)性 類之間共享屬性和操作的機制稱為( C )。A、靜態(tài)綁定 B、動態(tài)綁定 C、繼承 D、多態(tài)型 1、組成 UML 有三種基本的建筑塊是:(A),事物和圖A、

43、關(guān)系 B、類C、用例 D、實體2、UML 中的事物包括:結(jié)構(gòu)事物,分組事物,注釋事物和(D)A、實體事物 B、邊界事物C、控制事物 D、動作事物3、UML 中有四種關(guān)系是:依賴,泛化,關(guān)聯(lián)和(C ) A、繼承 B、合作C、實現(xiàn) D、抽象4、UML 中哪種圖(B)用來描述過程或操作的工作步驟A、狀態(tài)圖 B、活動圖C、用例圖 D、部署圖5、在 UML 中,(B)圖顯示了一組類、接口、協(xié)作以及它們之間的關(guān)系。A、狀態(tài)圖 B、類圖C、用例圖 D、部署圖6、UML 體系包括三個部分:UML 基本構(gòu)造塊,(A)和 UML 公共機制A、UML 規(guī)則 B、UML 命名C、UML 模型 D、UML 約束7、軟件

44、生存期包括計劃,需求分析和定義,(B),編碼,軟件測試和運行維護A、軟件開發(fā) B、軟件設(shè)計(詳細設(shè)計)C、軟件支持 D、軟件定義8、(A)模型的缺點是缺乏靈活性,特別是無法解決軟件需求不明確或不準(zhǔn)確的問題A、瀑布模型 B、原型模型C、增量模型 D、螺旋模型9、下圖是(B)A、類圖 B、用例圖C、活動圖 D、狀態(tài)圖10、下圖中的分叉和匯合是用 ROSE 中的(B)工具實現(xiàn)的。A、關(guān)系 B、同步條C、用例 D、實體11、(A)技術(shù)是將一個活動圖中的活動狀態(tài)進行分組,每一組表示一個特定的類、人或部門,他們負責(zé)完成組內(nèi)的活動。A、泳道 B、分叉匯合C、分支 D、轉(zhuǎn)移12、下面中(C)圖表示結(jié)束狀態(tài)。A

45、、B、 C、D、13、對反應(yīng)型對象建模一般使用(A)圖A、狀態(tài)圖 B、順序圖C、活動圖 D、類圖14、類圖應(yīng)該畫在 Rose 的哪種(B)視圖中A、Use Case View B、Logic View C、Component View D、Deployment View15、類通??梢苑譃閷嶓w類,(C)和邊界類A、父類 B、子類C、控制類 D、祖先類16、順序圖由類角色,生命線,激活期和(B)組成A、關(guān)系 B、消息C、用例 D、實體17、(D)是系統(tǒng)中遵從一組接口且提供實現(xiàn)的一個物理部件,通常指開發(fā)和運行時類的物理實現(xiàn)A、部署圖 B、類C、接口 D、組件18、(A)是通過到實現(xiàn)語言的映射而把模

46、型轉(zhuǎn)換為代碼的過程A、正向工程 B、匿向工程C、前向工程 D、后向工程19、軟件是計算機系統(tǒng)中與硬件相互依存的另一部分,它包括程序,數(shù)據(jù)及相關(guān)(A)的完整集合。A、文檔 B、代碼C、圖 D、描述20、一個對象和另一個對象之間,通過消息來進行通信。消息通信在面向?qū)ο蟮恼Z言中即(C)A、方法實現(xiàn) B、方法嵌套C、方法調(diào)用 D、方法定義21、(D)是可復(fù)用的,提供明確接口完成特定功能的程序代碼塊。A、模塊 B、函數(shù)C、用例 D、軟件構(gòu)件22、下圖中的空心箭頭連線表示(A)關(guān)系A(chǔ)、泛化 B、包含C、擴展 D、實現(xiàn)23、組件圖展現(xiàn)了一組組件之間的組件和依賴。它專注于系統(tǒng)的(B)實現(xiàn)圖A、動態(tài) B、靜態(tài)C

47、、基礎(chǔ) D、實體24、若將活動狀態(tài)比作方法,那么動作狀態(tài)即(C)A、方法名 B、方法返回值C、方法體中的每一條語句 D、方法的可見性25、事件可以分為內(nèi)部事件和外部事件。按下按鈕和打印機的中斷是(B)事件A、內(nèi)部事件 B、外部事件C、信號事件 D、調(diào)用事件26、(A)是用于把元素組織成組的通用機制A、包 B、類C、接口 D、組件27 類表示邏輯抽象,而(D)表示存在于計算機中的物理抽象A、包 B、節(jié)點C、接口 D、組件28、(C)是一組用于描述類或組件的一個服務(wù)的操作A、包 B、節(jié)點C、接口 D、組件29、沒有計算能力的節(jié)點稱為(B)A、處理器 B、設(shè)備C、組件 D、接口30、(B)是被節(jié)點執(zhí)行的事物A、包 B、組件 C、接口 D、節(jié)點 1、 什么不是面向?qū)ο蟪绦蛟O(shè)計的主要特征。(D) A封裝 C多態(tài) B繼承 D結(jié)構(gòu) 2、 下列描述中,哪個不是建模的基本原則(D) A.要仔細的選擇模型 B.每一種模型可

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論