國家開放大學(xué)2023-2024學(xué)年《軟件設(shè)計與體系結(jié)構(gòu)》模擬試卷及答案解析(2024年)_第1頁
國家開放大學(xué)2023-2024學(xué)年《軟件設(shè)計與體系結(jié)構(gòu)》模擬試卷及答案解析(2024年)_第2頁
國家開放大學(xué)2023-2024學(xué)年《軟件設(shè)計與體系結(jié)構(gòu)》模擬試卷及答案解析(2024年)_第3頁
國家開放大學(xué)2023-2024學(xué)年《軟件設(shè)計與體系結(jié)構(gòu)》模擬試卷及答案解析(2024年)_第4頁
國家開放大學(xué)2023-2024學(xué)年《軟件設(shè)計與體系結(jié)構(gòu)》模擬試卷及答案解析(2024年)_第5頁
已閱讀5頁,還剩49頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

2023-2024學(xué)年《軟件設(shè)計與體系結(jié)構(gòu)》模擬試卷及答案解《軟件設(shè)計與體系結(jié)構(gòu)》是“軟件工程”專業(yè)(本科)的一門統(tǒng)設(shè)必修課,并作為其他專業(yè)的選修課。本課程的主要任務(wù)是講授軟件設(shè)計和軟件結(jié)構(gòu)方面的基本思想、知識、原理和方法,包括軟件設(shè)計與軟件體系結(jié)構(gòu)在軟件工程中的地位與作用、軟件設(shè)計基本方法與原則、統(tǒng)一建模語言UML2.0、面向?qū)ο蟮能浖O(shè)計方法、軟件體系結(jié)構(gòu)風(fēng)格與設(shè)計模式、基于構(gòu)件的軟件體系結(jié)構(gòu)、軟件體系結(jié)構(gòu)評估、軟件設(shè)計的進(jìn)化等內(nèi)容。本課程的教學(xué)目的是使學(xué)生在軟件工程思想的基礎(chǔ)上,掌握軟件體系結(jié)構(gòu)相關(guān)知識、原理和各種類型設(shè)計模式的基本結(jié)構(gòu),對現(xiàn)有軟件體系結(jié)構(gòu)有比較深入的理解,能夠從系統(tǒng)結(jié)構(gòu)角度分析現(xiàn)有軟件系統(tǒng),能夠運(yùn)用具體的軟件設(shè)計方法解決實(shí)際的軟件工程問題,并能利用所學(xué)到的軟件系統(tǒng)結(jié)構(gòu)知識高效地設(shè)計軟件系統(tǒng),為從事大型復(fù)雜軟件開發(fā)打下良好的基礎(chǔ)。1.考核對象國家開放大學(xué)軟件工程專業(yè)(本科)學(xué)生。2.啟用時間2020年秋季學(xué)期。3.考核目標(biāo)通過考核使學(xué)生在軟件工程思想的基礎(chǔ)上,掌握軟件體系結(jié)構(gòu)相關(guān)知識、原理和各種類型設(shè)計模式的基本結(jié)構(gòu),對現(xiàn)有軟件體系結(jié)構(gòu)有比較深入的理解,能夠從系統(tǒng)結(jié)構(gòu)角度分析現(xiàn)有軟件系統(tǒng),能夠運(yùn)用具體的軟件設(shè)計方法解決實(shí)際的軟件工程問題,并能利用所學(xué)到的軟件系統(tǒng)結(jié)構(gòu)知識高效地設(shè)計軟件系統(tǒng),為從事大型復(fù)雜軟件開發(fā)打下良好的基礎(chǔ)。4.考核依據(jù)本課程考核說明是依據(jù)國家開放大學(xué)“軟件設(shè)計與體系結(jié)構(gòu)”課程教學(xué)大綱、文字教材《軟件設(shè)計與體系結(jié)構(gòu)》(高等教育出版社2017年12月第2版)制定的。本課程考核說明是課程考核命題的基本依據(jù)。5.考核方式及計分方法本課程考核采用形成性考核與終結(jié)性考核相結(jié)合的方式。形成性考核占課程綜合成績的30%,終結(jié)性考核占課程綜合成績的70%。課程考核成績統(tǒng)一采用百分制,即形成性考核、終結(jié)性考核、課程綜合成績均采用百分制。課程綜合成績達(dá)到60分及以上(及格),可獲得本課程相應(yīng)學(xué)分??己朔绞较嚓P(guān)信息以國家開放大學(xué)當(dāng)學(xué)期發(fā)布的考試安排文件為準(zhǔn)。6.終結(jié)性考核(1)考核目的終結(jié)性考核是在形成性考核的基礎(chǔ)上,對學(xué)生學(xué)習(xí)情況和學(xué)習(xí)效果進(jìn)行的一次全面檢測。(2)命題原則第一,本課程的考試命題嚴(yán)格控制在教學(xué)大綱規(guī)定的教學(xué)內(nèi)容和考核要求的第三,每份試卷所考的內(nèi)容,覆蓋本課程教材所學(xué)內(nèi)容的70%以上章節(jié)。比例大致為:容易占40%,適中占40%,較難占20%。(3)考核手段(4)考核方式(5)考核時限90分鐘(6)每套試卷的試題類型、數(shù)量及分值b)多項(xiàng)選擇題:10道題。d)應(yīng)用題:0(考題不包含應(yīng)用題)試卷試題數(shù)合計25道題;試卷總分?jǐn)?shù)100分。1.關(guān)于瀑布模型的描述,下面不正確的是()。2.關(guān)于快速原型模型,下面不正確的是()。3.以下哪項(xiàng)是螺旋模型的優(yōu)點(diǎn)()。4.關(guān)于增量模型,下面不正確的是()。5.以下哪項(xiàng)不屬于軟件工程的三要素()。6.關(guān)于軟件工程中結(jié)構(gòu)化方法的設(shè)計原則,以下描述錯誤的是()。7.以下哪項(xiàng)不是面向?qū)ο蠓椒ǖ闹饕卣?)。8.耦合是模塊之間依賴程度的度量。以下關(guān)于耦合的說法,錯誤的是()。耦合9.關(guān)于軟件體系結(jié)構(gòu)核心模型的組成元素,以下說法錯誤的是()。10.關(guān)于軟件體系結(jié)構(gòu)描述語言,以下說法錯誤的是()。誤的是()。用地分解,逐步確立過程細(xì)節(jié),直至該功能用程序語言描述的算法實(shí)現(xiàn)為止【D.】逐步求精的每一步是用更為簡單的描述代替上一層次的描述【答案】D14.信息隱藏是使模塊化開發(fā)活動更加簡單的重要因素。以下關(guān)于信息隱藏的說法錯誤的是()?!続.】為達(dá)到信息隱藏的目的,模塊所含信息對于那些不需要這些信息的模塊不可訪問【B.】為達(dá)到信息隱藏的目的,每個模塊只完成一個相對獨(dú)立的特定功能【C.】為達(dá)到信息隱藏的目的,每個模塊可與其他模塊共同完成特定功能【D.】為達(dá)到信息隱藏的目的,模塊之間僅僅交換那些為完成系統(tǒng)功能必須交換的信息【答案】C15.內(nèi)聚是一個模塊內(nèi)部各成分之間關(guān)聯(lián)程度的度量。以下哪項(xiàng)不屬于低等級【A.】偶然性內(nèi)聚【C.】時序內(nèi)聚【D.】過程性內(nèi)聚【答案】D16.耦合是模塊之間依賴程度的度量。以下關(guān)于耦合的說法,錯誤的是()。17.以下關(guān)于軟件結(jié)構(gòu)評價的說法,錯誤的是()。18.以下關(guān)于軟件結(jié)構(gòu)評價的說法,錯誤的是()。19.關(guān)于用戶界面分析和設(shè)計模型,以下說法錯誤的是()。21.在UML2.0建模機(jī)制中,()屬于結(jié)構(gòu)建模。22.在UML2.0建模機(jī)制中,()既屬于行為建模又可以歸屬為交互圖。23.在UML2.0類圖中,關(guān)于“關(guān)聯(lián)關(guān)系”描述錯誤的是()?!綝.】在關(guān)聯(lián)關(guān)系表示中,用星號“*”表示多個,用n表示n個實(shí)例,n.m表24.在UML2.0類圖中,下面哪個符號表示泛化(繼承)關(guān)系()。25.面向?qū)ο蟮脑O(shè)計任務(wù)不包括以下哪個內(nèi)容()。26.面向?qū)ο蟮脑O(shè)計任務(wù)不包括以下哪個內(nèi)容()。27.關(guān)于面向?qū)ο蟪绦蛟O(shè)計的特征,以下說法錯誤的是()。28.關(guān)于面向?qū)ο蟪绦蛟O(shè)計的基本概念,以下說法錯誤的是()?!綝.】對象是面向?qū)ο蟪绦虻奈┮粯?gòu)造單29.關(guān)于面向?qū)ο蟪绦蛟O(shè)計的基本概念,以下說法錯誤的是()。程30.在設(shè)計模式中,()的核心思想是:定義一個用于創(chuàng)建產(chǎn)品對象的工廠【C.】組合【答案】A31.在設(shè)計模式中,()的核心思想是,一個類必須自行創(chuàng)建一個實(shí)例且僅能有一個實(shí)例,并向系統(tǒng)提供該實(shí)例。完成上述行為的操作是將類的構(gòu)造方法聲明為私有類型,就可以防止用戶利用類的構(gòu)造方法創(chuàng)建出多個實(shí)例。【C.】組合【答案】B32.在設(shè)計模式中,()以樹形結(jié)構(gòu)將多個對象組合起來,用來表示“整體-部分”的層次結(jié)構(gòu),其核心思想是通過定義抽象構(gòu)件類,既可用來表示葉子,又可用來表示容器,用戶針對抽象構(gòu)件類進(jìn)行編程,能夠?qū)θ~子和容器進(jìn)行容易【A.】工廠方法【C.】組合【答案】C33.在設(shè)計模式中,()的核心思想是,引入一個新的代理對象,該對象在客戶端對象和目標(biāo)對象之間起到橋梁的作用,它隱藏客戶不能看到的內(nèi)容和服務(wù)或者為客戶添加需要的額外服務(wù)?!続.】工廠方法【D.】代理【答案】D34.在設(shè)計模式中,()將一個類的接口轉(zhuǎn)換為用戶希望的另一個接口,解決了一些類之間由于接口不兼容而無法一起工作的問題。【A.】適配器【D.】外觀【答案】A35.在設(shè)計模式中,()的核心思想是,通過將列表對象中對列表的訪問和遍歷從中抽離出來并放入到一個迭代器對象中,提供一種訪問聚合對象中所有元素的方法,而不暴露該對象的內(nèi)部表示?!続.】工廠方法36.在設(shè)計模式中,()的核心思想是,對象是對數(shù)據(jù)和函數(shù)的封裝,當(dāng)一個類包含了太多的函數(shù)(或稱操作)時,傾向于將其拆分為多個相互協(xié)作的類,37.在設(shè)計模式中,()的核心思想是,通過定義一些用來封裝不同算法的【答案】A38.在設(shè)計模式中,()的核心思想是,在不破壞封裝性的前提下,捕獲一個對象的內(nèi)部狀態(tài),并在該對象之外保存這個狀態(tài),便于日后將對象復(fù)原到先【答案】B39.在設(shè)計模式中,()表示一個作用于某個對象結(jié)構(gòu)中各元素的操作,它使我們能夠無須改變各元素的類而定義作用在這些元素的新操作,由兩部分組成:被訪問元素和訪問者?!続.】適配器【D.】訪問者【答案】D40.數(shù)據(jù)流圖就是用來刻畫數(shù)據(jù)流和轉(zhuǎn)換的信息系統(tǒng)建模技術(shù),它用簡單的圖形記號分別表示數(shù)據(jù)流、轉(zhuǎn)換、數(shù)據(jù)源以及外部實(shí)體,下面()是外部實(shí)體的 【答案】A41.數(shù)據(jù)流圖就是用來刻畫數(shù)據(jù)流和轉(zhuǎn)換的信息系統(tǒng)建模技術(shù),它用簡單的圖形記號分別表示數(shù)據(jù)流、轉(zhuǎn)換、數(shù)據(jù)源以及外部實(shí)體,下面()是轉(zhuǎn)換的圖形記號。 【答案】B42.數(shù)據(jù)流圖就是用來刻畫數(shù)據(jù)流和轉(zhuǎn)換的信息系統(tǒng)建模技術(shù),它用簡單的圖形記號分別表示數(shù)據(jù)流、轉(zhuǎn)換、數(shù)據(jù)源以及外部實(shí)體,下面()是數(shù)據(jù)流的【答案】C43.數(shù)據(jù)流圖就是用來刻畫數(shù)據(jù)流和轉(zhuǎn)換的信息系統(tǒng)建模技術(shù),它用簡單的圖形記號分別表示數(shù)據(jù)流、轉(zhuǎn)換、數(shù)據(jù)源以及外部實(shí)體,下面()是數(shù)據(jù)源的圖形記號。 44.在軟件進(jìn)化策略選擇方面,關(guān)于遺留系統(tǒng)的評價結(jié)果以下說法錯誤的是量【D.】融合【答案】D49.重構(gòu)就是在不改變軟件系統(tǒng)外部行為的前提下,改善它的內(nèi)部結(jié)構(gòu),提高其可理解性,降低其修改成本。其中,()的目標(biāo)是生成具有相同功能、但質(zhì)量比原來程序更高的代碼?!続.】文本重構(gòu)【B.】邏輯重構(gòu)【C.】代碼重構(gòu)【D.】數(shù)據(jù)重構(gòu)【答案】C50.重構(gòu)就是在不改變軟件系統(tǒng)外部行為的前提下,改善它的內(nèi)部結(jié)構(gòu),提高以實(shí)現(xiàn)空間數(shù)據(jù)在結(jié)構(gòu)、格式、類型上的統(tǒng)一,以及多源和異構(gòu)數(shù)據(jù)的聯(lián)接與融【A.】文本重構(gòu)【B.】邏輯重構(gòu)【C.】代碼重構(gòu)1.為了開發(fā)出低成本、高質(zhì)量的軟件產(chǎn)品,在軟件開發(fā)過程中必須遵循哪些軟件工程的原則()。【A.】采取固定的開發(fā)模型,不考慮易變需求【B.】采用適合的設(shè)計方法【C.】提供高質(zhì)量的工程支持【D.】重視開發(fā)過程的管理【答案】ABD2.軟件生命周期包括()等階段?!綝.】維護(hù)【答案】ABD3.瀑布模型的優(yōu)點(diǎn)主要包括()?!続.】方便為項(xiàng)目提供了按階段劃分的檢查點(diǎn)【B.】當(dāng)前一階段完成后,只需要去關(guān)注后續(xù)階段第27頁共54頁4.瀑布模型的缺點(diǎn)主要包括()。5.快速原型模型的優(yōu)點(diǎn)主要包括()。6.快速原型模型的缺點(diǎn)主要包括()。下7.從審視角度看,關(guān)于軟件體系結(jié)構(gòu)的定義,說法正確的是()。10.軟件體系結(jié)構(gòu)描述語言的三個基本元素是()。第29頁共54頁12.軟件體系結(jié)構(gòu)風(fēng)格是描述某一特定應(yīng)用領(lǐng)域中系統(tǒng)組織方式的慣用模式,響16.用戶交互實(shí)質(zhì)上就是用戶向計算機(jī)系統(tǒng)發(fā)出命令和相應(yīng)的數(shù)據(jù)來完成相應(yīng)出簡單的說明,供系統(tǒng)建模者理解與使用。其主要特點(diǎn)包括()。的優(yōu)勢包括()。20.在面向?qū)ο筌浖O(shè)計過程中,持久數(shù)據(jù)模型設(shè)計主要包括以下幾個步驟23.在實(shí)體關(guān)系圖進(jìn)行復(fù)雜數(shù)據(jù)建模過程中,為確保模型的一致性并消除數(shù)據(jù)冗余,分析人員要掌握()。24.數(shù)據(jù)流圖必須與描述并組織數(shù)據(jù)條目的數(shù)據(jù)字典配套使用。通常,數(shù)據(jù)字25.在面向?qū)ο蟮臄?shù)據(jù)模型設(shè)計中,持久數(shù)據(jù)模型設(shè)計主要包括以下幾個步驟28.以下哪項(xiàng)不屬于屬性和操作的作用范圍有哪幾種()。31.依照軟件設(shè)計的目的和范圍準(zhǔn)則,軟件設(shè)計模式包括()。34.為了評價軟件系統(tǒng)的業(yè)務(wù)價值,需要從以下哪幾個主要方面對系統(tǒng)進(jìn)行考35.軟件再工程是指通過對目標(biāo)系統(tǒng)的檢查和改造,將逆向工程、重構(gòu)和正向要素39.軟件再工程通過改造遺留系統(tǒng),使系統(tǒng)變得容易理解,進(jìn)而提高系統(tǒng)的可(2)設(shè)計約束。設(shè)計目標(biāo)的獲得通常要在某些約束的限制范圍內(nèi),這些約束定(3)設(shè)計原理。工程化的設(shè)計活動必須以一定的科學(xué)原理和技術(shù)手段為基礎(chǔ),(4)開發(fā)規(guī)劃。工程化的設(shè)計活動不僅需要讓人知道該設(shè)計能解決問題,還需(5)使用描述。產(chǎn)品經(jīng)常在某些特定條件下才能被可靠、高效地使用,并達(dá)到【答案】(1)構(gòu)件:計算或數(shù)據(jù)存儲單元。(2)連接件:用于構(gòu)件之間交互建模的體系結(jié)構(gòu)構(gòu)造塊及其支配這些交互的規(guī)(3)體系結(jié)構(gòu)配置:描述體系結(jié)構(gòu)的構(gòu)件與連接件的連接圖。(2)用例驅(qū)動的方法。用例驅(qū)動的體系結(jié)構(gòu)設(shè)計方法主要從用例導(dǎo)出體系結(jié)構(gòu)抽象。一個用例,是指系統(tǒng)進(jìn)行的一個活動系列,它為參與者提供一些結(jié)果值,參與者通過用例使用系統(tǒng)。參與者和用例共同構(gòu)成了用例模型。(3)模式驅(qū)動的方法。模式驅(qū)動的體系結(jié)構(gòu)設(shè)計方法從模式導(dǎo)出體系結(jié)構(gòu)抽象。該方法在處理范圍廣泛的體系結(jié)構(gòu)問題時,模式庫可能不夠充足,且對模式的選擇僅僅依靠通用知識和軟件工程師的經(jīng)驗(yàn)。(4)領(lǐng)域驅(qū)動的方法。在領(lǐng)域驅(qū)動的體系結(jié)構(gòu)設(shè)計方法中,體系結(jié)構(gòu)抽象是從領(lǐng)域模型導(dǎo)出來的。領(lǐng)域模型可以有很多種不同的表示方法,比如,類、實(shí)體關(guān)系圖、框架、語義網(wǎng)絡(luò)和規(guī)格等。4.請闡述軟件開發(fā)過程中的抽象原則和信息隱藏原則?!敬鸢浮?1)抽象是指抽取事物最基本的特征和行為,忽略非基本的細(xì)節(jié),采用分層次抽象的辦法,可以控制軟件開發(fā)過程的復(fù)雜性,有利于軟件的可理解性和開發(fā)過程的管理。(2)信息隱藏是將模塊中的軟件設(shè)計決策封裝起來的技術(shù),是使模塊化開發(fā)活動更加簡單的重要因素。在設(shè)計和確定模塊時信息隱藏使一個模塊的開發(fā)者不必看到其他模塊的內(nèi)部,只需知道其接口即可。這使得每個模塊的開發(fā)人員所要處理的復(fù)雜性顯著降低。5.請闡述軟件開發(fā)過程中模塊化設(shè)計原則的要點(diǎn)。【答案】(1)模塊是程序中邏輯上相對獨(dú)立的成分,它是一個獨(dú)立的編程單位,應(yīng)有良好的接口定義,模塊化有助于信息隱藏和抽象,有助于表示復(fù)雜軟件系統(tǒng)。(2)模塊的大小要適中,模塊過大會導(dǎo)致模塊內(nèi)部復(fù)雜的增加,不利于模塊的調(diào)試和重用,也不利于對模塊的理解和修改。(3)模塊太小會導(dǎo)致整個系統(tǒng)的表示過于復(fù)雜,不利于控制復(fù)雜性。6.請闡述軟件界面設(shè)計的基本原則?!敬鸢浮?1)用戶熟悉程度:界面應(yīng)該采用經(jīng)常使用系統(tǒng)用戶熟悉的術(shù)語和概念。(2)一致性:界面必須一致,在任何可能的情況下,相同的操作應(yīng)該以同樣的(3)使驚訝最小化:盡量避免使用戶對系統(tǒng)的行為感到驚訝。(4)可恢復(fù)性:界面應(yīng)該為用戶提供錯誤恢復(fù)機(jī)制。(5)用戶幫助:界面應(yīng)該在錯誤發(fā)生時提供有意義的反饋,并提供上下文敏感用戶幫助系統(tǒng)。(6)用戶多樣性:界面應(yīng)該為不同類型的用戶提供恰當(dāng)?shù)慕换シ绞健?.簡要描述基于UML的分析與設(shè)計過程?!敬鸢浮?1)用例分析與設(shè)計(2)概念模型與頂層架構(gòu)設(shè)計(3)用戶界面設(shè)計(4)數(shù)據(jù)模型設(shè)計(5)設(shè)計精化(6)類設(shè)計(7)部署模型設(shè)計8.在創(chuàng)建用戶需求的數(shù)據(jù)流模型的過程中,簡要描述分析人員應(yīng)遵循的原則?!敬鸢浮?1)首先建立頂級數(shù)據(jù)流圖,其中只含有一個代表目標(biāo)軟件系統(tǒng)整體處(2)對用戶需求的文字描述進(jìn)行語法分析,其中的名詞和名詞短語構(gòu)成潛在的(3)采用通常的功能分解方法,按照“強(qiáng)內(nèi)聚,松耦合”原則,逐個對處理功(4)在精化過程中,必須維持各級數(shù)據(jù)流圖的平衡。(5)精化過程應(yīng)適可而止,避免涉及軟件設(shè)計細(xì)節(jié)?!敬鸢浮?1)對類的屬性與操作進(jìn)行精化。(2)對類的對象實(shí)例在其生存周期中對外部消息的響應(yīng)和狀態(tài)變化過程進(jìn)行建(3)對類中重要操作的實(shí)現(xiàn)過程成算法進(jìn)行描述?!敬鸢浮?1)改造程序結(jié)構(gòu),減小耦合度,提高內(nèi)聚度。(3)改造程序結(jié)構(gòu),使任一模塊的作用域在其控制域之內(nèi)。(4)改造程序結(jié)構(gòu),減少接口的復(fù)雜性和和冗余程度,提高協(xié)調(diào)性。(5)模塊功能應(yīng)該可預(yù)言,避免對模塊施加過多限制。(6)改造程序結(jié)構(gòu),追求單入口單出口的模塊。(7)為滿足設(shè)計或可移植性的要求,把某些軟件用包的形式封裝起來。11.簡述軟件設(shè)計模式的應(yīng)用對軟件開發(fā)的重要作用。【答案】(1)代碼重用性。大部分模式都兼顧了系統(tǒng)的可重用性,這使得開發(fā)人員可以更好地重用一些已有的設(shè)計方案、功能模塊甚至一個完整的軟件系統(tǒng),提高最佳設(shè)計實(shí)踐的復(fù)用性。(2)節(jié)約設(shè)計實(shí)踐,提高設(shè)計效率。模式是眾多專家從諸多優(yōu)秀的軟件系統(tǒng)中總結(jié)出的設(shè)計方案,使用這些設(shè)計方案能為開發(fā)人員提供設(shè)計思路,有助于開發(fā)人員提高開發(fā)和設(shè)計效率,幫助設(shè)計新手快速系統(tǒng)地學(xué)習(xí)專家的成功設(shè)計經(jīng)驗(yàn)。(3)可讀性。模式為設(shè)計人員提供了一套統(tǒng)一的設(shè)計詞匯,包括設(shè)計、管理和組織方面,同時也為設(shè)計人員提供了一個規(guī)范和描述抽象事物的標(biāo)準(zhǔn),以便開發(fā)人員之間的溝通和交流。(4)可擴(kuò)展性。隨著軟件規(guī)模的日益增大,軟件壽命逐漸延長,軟件系統(tǒng)的可擴(kuò)展性也越來越重要,許多模式將有助于提高系統(tǒng)的靈活性和可擴(kuò)展性,讓開發(fā)人員在不修改或者在現(xiàn)有系統(tǒng)的基礎(chǔ)上根據(jù)實(shí)際情況增加、刪除或者替換相應(yīng)的12.軟件設(shè)計模式能夠幫助軟件設(shè)計者更快地完成面向?qū)ο蟮能浖O(shè)計。請簡述軟件設(shè)計模式選擇的具體步驟?!敬鸢浮咳藗冊谶x擇模式時可遵循以下步驟和原則。(1)理解問題需求。問題的需求是進(jìn)行模式選擇的基礎(chǔ),通過對需求的分析可以找到多個模式,并將其形成相應(yīng)的模式組。(2)研究組內(nèi)模式。需求分析得出的組內(nèi)模式存在一些共同特性,但是不同的模式都有其獨(dú)特的使用動機(jī)、意圖和使用條件等等,因此對組內(nèi)模式進(jìn)行研究,研究模式之間的相互關(guān)聯(lián)具有一定的實(shí)際意義。(3)考慮設(shè)計模式是如何解決設(shè)計問題的。在系統(tǒng)的設(shè)計過程中會產(chǎn)生許多變化因素。為了支持這種變化,應(yīng)明確設(shè)計模式在設(shè)計中支持哪些可變化因素,而這些可變因素是否會導(dǎo)致系統(tǒng)必須進(jìn)行重新設(shè)計,基于此可找到所需的設(shè)計模式以盡量避免引起重新設(shè)計。13.軟件設(shè)計模式能夠幫助軟件設(shè)計者更快地完成面向?qū)ο蟮能浖O(shè)計。請簡述軟件設(shè)計模式使用的方法與原則?!敬鸢浮?1)首先理解所選擇的模式。特別注意模式的適用條件和使用效果部分,確定該模式是否適合對此類問題的求解。(2)研究模式的結(jié)構(gòu)部分、參與者部分和協(xié)作部分。確保對這個模式的類、對象以及它們之間的關(guān)聯(lián)關(guān)系有一定的了解。(3)看代碼示例部分。研究該模式代碼形式的具體例子將有助于設(shè)計人員更好的理解和實(shí)現(xiàn)模式。(4)選擇模式參與者的名字,使它們在應(yīng)用上下文中有意義。(5)定義類。聲明它們之間的接口,建立它們的繼承關(guān)系,定義代表數(shù)據(jù)和對象引用的實(shí)例變量。(6)定義模式中專用于應(yīng)用的操作名稱。應(yīng)用中的類、變量和對象的名稱定義都會依賴于應(yīng)用所涉及到的實(shí)體,對模式名稱的定義也應(yīng)該和實(shí)際中的具體操作相關(guān)聯(lián),要盡量和實(shí)際中的名字一致。(7)實(shí)現(xiàn)執(zhí)行模式中責(zé)任和協(xié)作的操作。實(shí)現(xiàn)部分提供線索指導(dǎo)人們進(jìn)行實(shí)現(xiàn)。14.簡述軟件再工程的定義及突出特征?!敬鸢浮?1)軟件再工程是指通過對目標(biāo)系統(tǒng)的檢查和改造,其中包括設(shè)計恢復(fù)(庫存目錄分析)、再文檔、逆向工程、程序和數(shù)據(jù)重構(gòu)以及正向工程等一系列活動,旨在將逆向工程、重構(gòu)和正向工程組合起來,將現(xiàn)存系統(tǒng)重新構(gòu)造為新的形式,以開發(fā)出質(zhì)量更高、維護(hù)性更好的軟件。(2)軟件再工程有兩個突出特征:一是比一次軟件工程更迫切地需要計算機(jī)輔助支持,二是測試工作比例遠(yuǎn)大于一次軟件工程。前者在再工程方法學(xué)研究和軟件模式運(yùn)動推動下可以找到自動化解決方案,后者則須強(qiáng)化對測試方法學(xué)體系的研15.簡述軟件再工程的具體目標(biāo)?!敬鸢浮?1)為追加、增強(qiáng)功能做準(zhǔn)備。軟件再工程通過對原系統(tǒng)用新的設(shè)計思想加以重新實(shí)現(xiàn)。使今后能方便地對系統(tǒng)進(jìn)行功能的追加和增強(qiáng)。(2)提高可維護(hù)性。經(jīng)過不斷維護(hù)日趨復(fù)雜的系統(tǒng).經(jīng)過軟件的再工程和再設(shè)計,其模塊劃分會更合理,接口定義更清晰,文檔更齊全,從而更易維護(hù)。(3)軟件的移植。軟件再工程將一些優(yōu)秀軟件移植到新硬件平臺、操作系統(tǒng)或(4)提高可靠性。軟件的維護(hù)修改容易引起“波動效應(yīng)”,即修改一處,波(2)開放化:從知識的角

溫馨提示

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

評論

0/150

提交評論