freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

軟件工程(2nd)教材習(xí)題答案(編輯修改稿)

2025-07-22 01:58 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 9. 類的設(shè)計(jì)過程包括:確定類,確定關(guān)聯(lián)類,確定屬性,識(shí)別繼承關(guān)系。(√)10. 復(fù)用也叫重用或再用,面向?qū)ο蠹夹g(shù)中的“類”是比較理想的可重用軟構(gòu)件,它有三種重用方式:實(shí)例重用、繼承重用、多態(tài)重用。(√)11. 主題是一種關(guān)于模型的抽象機(jī)制,它是面向?qū)ο竽P偷母琶玻彩顷P(guān)于某個(gè)模型要同時(shí)考慮和理解的內(nèi)容,主題起一種控制作用。(√)12. 面向?qū)ο蟮姆治鲇蓪?duì)象、結(jié)構(gòu)、繼承性和基于消息的通信構(gòu)成。()13. 支持繼承性是面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言和傳統(tǒng)程序設(shè)計(jì)語(yǔ)言在語(yǔ)言機(jī)制方面的根本區(qū)別。(√)14. 面向?qū)ο蟮姆治鲞^程主要包括三項(xiàng)內(nèi)容:理解、表達(dá)和驗(yàn)證。(√)三、 簡(jiǎn)答題,有何本質(zhì)區(qū)別?答:(1) 消息傳遞必須給出信道的信息,通常要指出明確的接收方。 (2) 由于接收方是一通信實(shí)體,具有保持狀態(tài)的能力,所以同一發(fā)送方在不同時(shí)刻向同一接收方發(fā)送同樣的信息,可因接收方的當(dāng)前狀態(tài)不同而得到不同的結(jié)果。 (3) 消息傳遞可以是異步的,發(fā)送方可以不必等待接收方返回信息就可以繼續(xù)執(zhí)行后面的操作,因而支持程序的并發(fā)和分布執(zhí)行,而過程調(diào)用只能是同步的,本質(zhì)上是串行的。2.比較面向?qū)ο蠓椒ㄅc結(jié)構(gòu)化方法的特點(diǎn),說明為什么面向?qū)ο蠓椒ū冉Y(jié)構(gòu)化方法更加優(yōu)越。答:結(jié)構(gòu)化方法是以數(shù)據(jù)流和數(shù)據(jù)封閉性為基礎(chǔ)的,由SA、SD和 SP三部分構(gòu)成。該方法:①無(wú)法實(shí)現(xiàn)從問題空間到解空間的直接映射。開發(fā)方法求解過程是先對(duì)應(yīng)用領(lǐng)域(問題空間)進(jìn)行分析,建立起問題空間的邏輯模型,再通過一系列復(fù)雜的轉(zhuǎn)換和算法,構(gòu)造計(jì)算機(jī)系統(tǒng),獲得解空間。②無(wú)法實(shí)現(xiàn)高效的軟件復(fù)用。結(jié)構(gòu)化方法是面向過程的,將數(shù)據(jù)和處理過程(操作)分離,不僅增加了軟件開發(fā)的難度,也難于支持軟件復(fù)用。③開發(fā)方法難以實(shí)現(xiàn)從分析到設(shè)計(jì)的直接過渡,從SA到SD要經(jīng)過一系列復(fù)雜的變換。而面向?qū)ο蟮姆椒ㄒ詫?duì)象為核心,強(qiáng)調(diào)模擬現(xiàn)實(shí)世界中的概念而不是算法,盡量用符合人類認(rèn)識(shí)世界的思維方式來(lái)漸進(jìn)地分析、解決問題。①使問題空間與解空間具有一致性,便于對(duì)軟件開發(fā)過程所有階段進(jìn)行綜合考慮,能有效地降低軟件開發(fā)的復(fù)雜度,提高軟件質(zhì)量。②軟件開發(fā)各個(gè)階段有機(jī)集成,有利于系統(tǒng)的穩(wěn)定性。③具有良好的重用性。面向?qū)ο蟮募夹g(shù)在利用可重用的軟件成分構(gòu)造新軟件系統(tǒng)上具有很大的靈活性,由于對(duì)象所具有的封裝性和信息隱蔽,使得對(duì)象的內(nèi)部實(shí)現(xiàn)與外界隔離,具有較強(qiáng)的獨(dú)立性。繼承性本身就是一種重用機(jī)制。綜上,顯然面向?qū)ο蠓椒ū冉Y(jié)構(gòu)化方法更加優(yōu)越。3. Coad/Yourdon方法主要有面向?qū)ο蠓治觯∣OA)和面向?qū)ο笤O(shè)計(jì)(OOD)。OOA概念模型由5個(gè)層次組成,請(qǐng)簡(jiǎn)述這5個(gè)層次。答:OOA概念模型的5個(gè)層次分別是:(1) 發(fā)現(xiàn)類及對(duì)象。描述如何發(fā)現(xiàn)類及對(duì)象。從應(yīng)用領(lǐng)域開始識(shí)別類及對(duì)象,形成整 個(gè)應(yīng)用的基礎(chǔ),然后,據(jù)此分析系統(tǒng)的責(zé)任。(2) 識(shí)別結(jié)構(gòu)。該階段分為兩個(gè)步驟。第一,識(shí)別“一般-特殊”結(jié)構(gòu),該結(jié)構(gòu)捕獲了識(shí)別出的類的層次結(jié)構(gòu);第二,識(shí)別“整體-部分”結(jié)構(gòu),該結(jié)構(gòu)用來(lái)表示一個(gè)對(duì)象如何成為另一個(gè)對(duì)象的一部分,以及多個(gè)對(duì)象如何組裝成更大的對(duì)象。(3) 定義屬性。其中包括定義類的實(shí)例(對(duì)象)之間的實(shí)例連接。(4) 定義服務(wù)。其中包括定義對(duì)象之間的消息連接。(5) 定義主題。主題由一組類及對(duì)象組成,用于將類及對(duì)象模型劃分為更大的單位,以便于理解。4.面向?qū)ο蟮姆治霭男┲饕顒?dòng)?所建立的分析模型包括哪些類型的模型?答:面向?qū)ο蟮姆治鲞^程分為論域分析和應(yīng)用分析。論域分析過程是抽取和整理用戶需求并建立問題域精確模型的過程。應(yīng)用分析是將論域分析建立起來(lái)的問題論域模型,用某種基于計(jì)算機(jī)系統(tǒng)的語(yǔ)言來(lái)描述。面向?qū)ο蟮姆治鼍唧w包括以下活動(dòng):①獲取用戶基本需求。通常使用用例(User Case)來(lái)收集和描述。②標(biāo)識(shí)類和對(duì)象。包括標(biāo)識(shí)類及對(duì)象的屬性和操作。③定義類的結(jié)構(gòu)和層次。通常有一般與特殊 ( Generalization—Specialization)結(jié)構(gòu),整體與部分(Whole—Part)結(jié)構(gòu)。④ 建立類(對(duì)象)之間的關(guān)系,用“對(duì)象關(guān)系模型”描述系統(tǒng)的靜態(tài)結(jié)構(gòu)。⑤ 建立對(duì)象—行為模型,描述系統(tǒng)的動(dòng)態(tài)行為。所建立的分析模型包括:①基本模型。是一個(gè)類圖(class diagram),是以直觀的方式表達(dá)系統(tǒng)最重要的信息。OOA基本模型的三個(gè)層次分別描述了:系統(tǒng)中應(yīng)設(shè)哪幾類對(duì)象,每類對(duì)象的內(nèi)部構(gòu)成,對(duì)象與外部的關(guān)系。②主題圖(subject)。又稱為子系統(tǒng)(subsystem),是將一些聯(lián)系密切的類組織在一起的類的集合。按照粒度控制原則,將系統(tǒng)組成幾個(gè)主題,便于理解。③交互圖(interaction diagram) 是用例與系統(tǒng)成分之間的對(duì)照?qǐng)D。主題圖和交互圖又稱為補(bǔ)充模型。5.面向?qū)ο笤O(shè)計(jì)的主要任務(wù)是什么?答:面向?qū)ο蟮脑O(shè)計(jì)(ObjectOriented Design,OOD)是面向?qū)ο箝_發(fā)方法(OOSD)的核心階段。是在OOA的基礎(chǔ)上解決系統(tǒng)“如何做”的問題。主要任務(wù)包括:⑴系統(tǒng)設(shè)計(jì) 系統(tǒng)設(shè)計(jì)的任務(wù)包括:將分析模型中緊密相關(guān)的類劃分為若干子系統(tǒng)(也稱為主題),子系統(tǒng)應(yīng)該具有良好的接口,子系統(tǒng)中的類相互協(xié)作;標(biāo)識(shí)問題本身的并發(fā)性,將各子系統(tǒng)分配給處理器,建立子系統(tǒng)之間的通信。⑵對(duì)象設(shè)計(jì)通過對(duì)象的認(rèn)定和對(duì)象層次結(jié)構(gòu)的組織,確定解空間中應(yīng)存在的對(duì)象和對(duì)象層次結(jié)構(gòu),并確定外部接口和主要的數(shù)據(jù)結(jié)構(gòu)。⑶設(shè)計(jì)優(yōu)化對(duì)設(shè)計(jì)進(jìn)行優(yōu)化,主要涉及提高效率的技術(shù)和建立良好的繼承結(jié)構(gòu)的方法。6.為什么面向?qū)ο蟮姆椒軌蛴行У亟鉀Q軟件需求中存在的問題?需求過程中存在兩大難題,一是需求的確定是困難的,二是需求是不斷變動(dòng)的。尤其是對(duì)于一些大型軟件系統(tǒng),開發(fā)周期長(zhǎng),系統(tǒng)規(guī)模大,復(fù)雜性高。面向?qū)ο蟮姆椒ㄖ?,由于?duì)象所具有的封裝性和信息隱蔽,使得對(duì)象的內(nèi)部實(shí)現(xiàn)與外界隔離,具有較強(qiáng)的獨(dú)立性。而且面向?qū)ο蟮姆椒ㄊ且詫?duì)象為中心構(gòu)造軟件系統(tǒng),而不是基于對(duì)系統(tǒng)功能進(jìn)行分解來(lái)構(gòu)造系統(tǒng),當(dāng)系統(tǒng)功能需求改變時(shí)不會(huì)引起系統(tǒng)結(jié)構(gòu)的變化,使軟件系統(tǒng)具有良好的穩(wěn)定性和可適應(yīng)性。軟件生存期各階段所使用的方法、技術(shù)具有高度的連續(xù)性,對(duì)軟件開發(fā)過程所有階段進(jìn)行綜合考慮,能有效地降低軟件開發(fā)的復(fù)雜度,提高軟件質(zhì)量,也便于需求的確定。7. OMT方法明確提出了建模的概念,為什么在軟件開發(fā)過程中需要進(jìn)行建模?答:OMT方法從不同而又相關(guān)的角度建立三類模型:對(duì)象模型、動(dòng)態(tài)模型和函數(shù)模型,并為每一類模型提供了圖形表示。軟件模型一般包括數(shù)學(xué)模型、描述模型和圖形模型。在軟件開發(fā)過程中進(jìn)行建模,一是由于軟件系統(tǒng)的復(fù)雜性和規(guī)模的不斷增大,需要建立不同的模型對(duì)系統(tǒng)的各個(gè)層次更好地進(jìn)行描述。模型具有的直觀性及豐富的信息描述,便于開發(fā)人員與用戶的交流。建立的模型為以后的系統(tǒng)維護(hù)和升級(jí)提供了文檔。鑒于上述原因,在軟件開發(fā)過程中建模,能夠提高軟件開發(fā)的效率和質(zhì)量。8.為什么說面向?qū)ο蟮姆椒檐浖?fù)用提供了良好的環(huán)境?答:軟件復(fù)用是將已有的軟件成分用于構(gòu)造新的軟件系統(tǒng),以達(dá)到提高軟件系統(tǒng)的開發(fā)質(zhì)量與效率,降低開發(fā)成本的目的。復(fù)用的軟件成分也稱為可復(fù)用構(gòu)件(Reusable Component)。對(duì)可復(fù)用組件一般有以下的要求:具有功能上的獨(dú)立性與完整性。具有較高的通用性。具有較高的靈活性。具有嚴(yán)格的質(zhì)量保證。具有較高的標(biāo)準(zhǔn)化程度。面向?qū)ο蟮姆椒▽?duì)復(fù)用的支持主要反映在:⑴面向?qū)ο蠓椒梢员Wo(hù)在整個(gè)軟件生存周期概念、原則、術(shù)語(yǔ)及表示法達(dá)到高度一致。這使面向?qū)ο蠓椒ú坏茉诟鱾€(gè)級(jí)別支持軟件復(fù)用,而且能對(duì)各個(gè)級(jí)別的復(fù)用形成統(tǒng)一、高效的支持,達(dá)到良好的全局效果。⑵OOA基本模型體現(xiàn)了更高的抽象,更容易成為一個(gè)可復(fù)用的系統(tǒng)構(gòu)架。⑶所有的對(duì)象都用類作為其抽象描述。類作為一種可復(fù)用構(gòu)件,在運(yùn)用于不同系統(tǒng)時(shí),不會(huì)出現(xiàn)因該類對(duì)象實(shí)例不同而使系統(tǒng)模型有所不同的情況。所以面向?qū)ο蠓椒ǖ闹饕拍罴霸瓌t與軟件復(fù)用的要求十分吻合。OO方法中的對(duì)象和類是系統(tǒng)的基本構(gòu)成單位,它符合可復(fù)用構(gòu)件所應(yīng)具備的那些特性,如完整性、獨(dú)立性、可標(biāo)識(shí)性、一般性、抽象、封裝等。尤其是面向?qū)ο蠓椒ǖ膶?duì)象封裝性,為軟件復(fù)用技術(shù)提供了良好的條件。而繼承機(jī)制本質(zhì)上就是一種復(fù)用機(jī)制,因此面向?qū)ο蠓椒檐浖?fù)用提供了一個(gè)良好的環(huán)境。習(xí)題五答案一、選擇題1. 下列不是模型元素的是(D)。A) 關(guān)聯(lián) B) 聚合 C) 依賴 D) 筆記2. UML具有擴(kuò)展性,常見的擴(kuò)展機(jī)制有(BCD)。A) 修飾 B) 版類 C) 加標(biāo)簽值 D) 約束3. UML語(yǔ)言支持的建模方式有(ABD)。A) 靜態(tài)建模 B) 動(dòng)態(tài)建模 C) 模塊化建模 D) 功能建模4. 下列各種圖可用于動(dòng)態(tài)建模的有(ACD)。A) 狀態(tài)圖 B) 類圖 C) 序列圖 D) 活動(dòng)圖5. 下列屬于狀態(tài)的組成部分的有(AB)。A) 名稱 B) 活動(dòng) C) 條件 D) 事件6. UML中包括的事件有(ABCD)。A) 條件為真 B) 收到另一對(duì)象的信號(hào)C) 收到操作調(diào)用 D) 時(shí)間表達(dá)式7. 屬性的可見性有(ABD)。A) 公有的 B) 私有的 C) 私有保護(hù)的 D) 保護(hù)的8. 用例之間的關(guān)系有(BCD)。A) 友元 B) 擴(kuò)展 C) 使用 D) 組合9. 應(yīng)用于通用化約束的方式有(ABCD)。A) 完整 B) 不相交 C) 不完整 D) 覆蓋10. 消息的類型有(ABC)A) 同步 B) 異步 C) 簡(jiǎn)單 D) 復(fù)雜二、 判斷題1. UML建模語(yǔ)言是由視圖、圖、模型元素和通用機(jī)制構(gòu)成的層次關(guān)系來(lái)描述的。 (√)2. UML是一種建模語(yǔ)言,是一種標(biāo)準(zhǔn)的表示,是一種方法。 ()3. 泳道是一種分組機(jī)制,它描述了狀態(tài)圖中對(duì)象所執(zhí)行的活動(dòng)。 ()4. 同步消息和異步消息的主要區(qū)別是:同步消息的發(fā)送對(duì)象在消息發(fā)送后,不必等待消息處理,可立即繼續(xù)執(zhí)行,而異步消息則發(fā)送對(duì)象必須等待接收對(duì)象完成消息處理后,才能繼續(xù)執(zhí)行。() 5. 類圖中的角色是用于描述該類在關(guān)聯(lián)中所扮演的角色和職責(zé)的。 (√) 6. 類圖用來(lái)表示系統(tǒng)中類和類與類之間的關(guān)系,它是對(duì)系統(tǒng)動(dòng)態(tài)結(jié)構(gòu)的描述。 () 7. 用例模型的基本組成部件是用例、角色和用例之間的聯(lián)系。 (√)8. 用例之間有擴(kuò)展、使用、組合等幾種關(guān)系。 (√)9. 順序圖描述對(duì)象之間的交互關(guān)系,重點(diǎn)描述對(duì)象間消息傳遞的時(shí)間順序。 (√)10. 活動(dòng)圖顯示動(dòng)作及其結(jié)果,著重描述操作實(shí)現(xiàn)中所完成的工作以及用例實(shí)例或類中的活動(dòng)。()三、 簡(jiǎn)答題1. 以圖1(一個(gè)在學(xué)校首次報(bào)名的 UML 活動(dòng)圖)為例,說明如何繪制活動(dòng)圖。圖1 學(xué)校首次報(bào)名的UML活動(dòng)圖答:要?jiǎng)?chuàng)建一個(gè)UML活動(dòng)圖,需要反復(fù)執(zhí)行下列步驟。(1) 定義活動(dòng)圖的范圍。首先應(yīng)該確定建模的范圍,是對(duì)整個(gè)系統(tǒng)建模,還是一個(gè)子系統(tǒng)。一旦定義了作圖的范圍,應(yīng)該在其頂部,用一個(gè)注釋指明該圖的標(biāo)題和惟一的標(biāo)識(shí)符,還可標(biāo)注該圖的時(shí)間及作者姓名。本題的建模范圍是一個(gè)學(xué)校管理系統(tǒng)中的“報(bào)名”部分。(2) 添加活動(dòng)。活動(dòng)是活動(dòng)圖的核心,活動(dòng)是完成系統(tǒng)任務(wù)所必須執(zhí)行的處理步驟??蓮挠美P统霭l(fā),對(duì)每個(gè)角色(actor)所驅(qū)動(dòng)的主要用例引入一個(gè)活動(dòng),如果是對(duì)整個(gè)系統(tǒng)建模,應(yīng)對(duì)每個(gè)主要流程引入一個(gè)活動(dòng)。在“報(bào)名”的活動(dòng)圖中確定了“Fill out enrollment ”(填寫報(bào)名表)、“Enroll in university”(登記入學(xué))、“Obtain help to fill out forms”(幫助填寫報(bào)名表)、“Attend university overview presentation”(參加介紹學(xué)校會(huì)議)等6個(gè)活動(dòng)。(3) 添加起點(diǎn)和結(jié)束點(diǎn)。每個(gè)活動(dòng)圖只能有一個(gè)起始點(diǎn)和多個(gè)結(jié)束點(diǎn),結(jié)束點(diǎn)可以是所有活動(dòng)的結(jié)束,也可以是對(duì)執(zhí)行過程的終止。(4) 添加活動(dòng)間的轉(zhuǎn)變。當(dāng)一個(gè)活動(dòng)結(jié)束時(shí)將進(jìn)入下一個(gè)活動(dòng),稱為活動(dòng)轉(zhuǎn)移??蓸?biāo)明活動(dòng)轉(zhuǎn)移的條件、引起活動(dòng)轉(zhuǎn)移的事件。如活動(dòng)“填寫報(bào)名表”有兩個(gè)活動(dòng)轉(zhuǎn)移,當(dāng)填寫報(bào)名表不正確時(shí),則轉(zhuǎn)移到活動(dòng)“幫助填寫報(bào)名表”;當(dāng)填寫正確時(shí),則轉(zhuǎn)移到活動(dòng)“登記入學(xué) ”。(5) 添加判斷點(diǎn)。當(dāng)對(duì)建模的邏輯需要做出一個(gè)判斷時(shí),需要添加判斷點(diǎn)。例如,在圖1中 ,在“Enroll in university”活動(dòng)之后,還必須按照入學(xué)條件進(jìn)行判斷,滿足條件的繼續(xù)執(zhí)行入學(xué)報(bào)到的活動(dòng),而不滿足入學(xué)條件的則結(jié)束。(6) 找出并行活動(dòng)。若兩個(gè)活動(dòng)間沒有直接的聯(lián)系,而且它們都必須在第三個(gè)活動(dòng)開始前結(jié)束,則它們是可以并行運(yùn)行的。在圖1中,用同步線描述系統(tǒng)任務(wù)中的并發(fā)活動(dòng),活動(dòng)“Attend university overview presentation”(參加介紹學(xué)校會(huì)議)和“Enroll in seminars” (注冊(cè)研討班)及“Make initial tuition payment”(交付初始的學(xué)費(fèi))可并行執(zhí)行,使用同 步線表示它們都要在結(jié)束整個(gè)流程前完成。2. 簡(jiǎn)述擴(kuò)展、包含和細(xì)化三種UML依賴關(guān)系的異同。答:擴(kuò)展、包含和細(xì)化都是描述了元素之間的依賴關(guān)系,但具體含義不同。擴(kuò)展(extend)關(guān)系是對(duì)基本用例在對(duì)某些“擴(kuò)展點(diǎn)”的功能的增加。通過向被擴(kuò)展的用例添加動(dòng)作來(lái)擴(kuò)展用例。包含(include)關(guān)系表示一個(gè)元素為了實(shí)現(xiàn)或完成其全部的功能,需要用到已存在的另一個(gè)模型元素,本質(zhì)上是一種使用關(guān)系。細(xì)化關(guān)系是不同語(yǔ)義層(如分析和設(shè)計(jì))之間模型元素的依賴關(guān)系,表示一個(gè)元素對(duì)另一個(gè)因此細(xì)化關(guān)系可描述的語(yǔ)義范圍較廣,包括模型的逐步細(xì)化、優(yōu)化、變換、模板、模型合成、框架組成等。3. 軟件開發(fā)為什么要使用UML建模?它有何特點(diǎn)?答:軟件開發(fā)的過程猶如雕琢一件工藝品,由無(wú)形
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1