軟件工程導(dǎo)論期末考試考點_第1頁
軟件工程導(dǎo)論期末考試考點_第2頁
軟件工程導(dǎo)論期末考試考點_第3頁
軟件工程導(dǎo)論期末考試考點_第4頁
軟件工程導(dǎo)論期末考試考點_第5頁
免費預(yù)覽已結(jié)束,剩余1頁可下載查看

下載本文檔

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

文檔簡介

1、1 .軟件的定義:軟件是程序、數(shù)據(jù)及相關(guān)文檔的完整集合。其中,程序是能夠完成預(yù)定功能和性能的可執(zhí)行的指令序列;數(shù)據(jù)是使程序能夠適當(dāng)?shù)靥幚硇畔⒌臄?shù)據(jù)結(jié)構(gòu),文檔是開發(fā)、使用和維護程序所需要的圖文資料。2 .軟件危機的定義,表現(xiàn)、原因是什么?a)軟件危機:軟件危機是指在計算機軟件的開發(fā)和維護過程中所遇到的一系列嚴(yán)重問題。b)軟件危機的表現(xiàn):對軟件開發(fā)成本和進度的估計常常很不準(zhǔn)確。經(jīng)常出現(xiàn)用戶對“已完成的”軟件系統(tǒng)功能不滿意的現(xiàn)象。軟件產(chǎn)品的質(zhì)量往往達不到要求。軟件通常不可維護。軟件通常沒有適當(dāng)?shù)奈臋n資料。軟件成本在計算機系統(tǒng)總成本中所占的比例逐年上升。軟件開發(fā)生產(chǎn)率提高的速度,遠遠跟不上計算機應(yīng)用迅

2、速普及深入的趨勢。c)軟件危機的原因:i. 客觀原因:與軟件本身的特點有關(guān)軟件不同于硬件,它是計算機系統(tǒng)中的邏輯部件而不是物理部件。軟件缺乏“可見性”。軟件維護通常意味著改正或修改原來的設(shè)計,這就在客觀上使得軟件較難維護。軟件缺乏“可插拔性”。如何保證每個人完成的工作合在一起確實能構(gòu)成一個高質(zhì)量的大型軟件系統(tǒng),更是一個極端復(fù)雜困難的問題,必須有嚴(yán)格而科學(xué)的管理。ii. 主觀原因:與軟件開發(fā)與維護的方法不正確也有關(guān)目前相當(dāng)多的軟件專業(yè)人員對軟件開發(fā)和維護還有不少糊涂觀念,這可能是使軟件問題發(fā)展成軟件危機的主要原因。忽視需求分析只重視編碼與運行。編寫程序所需的工作量只占軟件開發(fā)全部工作量的10%2

3、0%。在后期引入一個變動比在早期引入相同變動所需付出的代價高23個數(shù)量級。圖1.1定性地描繪了在不同時期引入一個變動需要付出的代價的變化趨勢。忽視文檔只重視程序必須認識到一個軟件產(chǎn)品必須由一個完整的配置組成,軟件配置主要包括程序、文檔和數(shù)據(jù)等成分。必須消除只重視程序而忽視軟件配置其余成分的糊涂觀念。輕視維護是一個最大的錯誤。統(tǒng)計數(shù)據(jù)表明,實際上用于軟件維護的費用占軟件總費用的55%70%3 .軟件工程的定義、軟件工程方法學(xué)三要素是什么?軟件工程定義:采用工程的概念、原理、技術(shù)和方法來開發(fā)與維護軟件,把經(jīng)過時間考驗而證明正確的管理技術(shù)和當(dāng)前能夠得到的最好的技術(shù)方法結(jié)合起來,用于經(jīng)濟地開發(fā)出高質(zhì)量

4、的軟件并有效地維護它,這就是軟件工程。軟件工程方法學(xué)的3個要素:方法、工具和過程方法是:完成軟件開發(fā)的各項任務(wù)的技術(shù)方法,回答“怎樣做”的問題;工具是:為運用方法而提供的自動的或半自動的軟件工程支撐環(huán)境;(用什么做)過程是:為了達到給定目標(biāo)所實施的一系列步驟,是人們使用相應(yīng)的規(guī)程、方法、工具和設(shè)備將原材料轉(zhuǎn)化成面向客戶的產(chǎn)品所做的事情。簡單的說,就是什么時間做什么。4 .軟件工程有哪七大原理?(1)用分階段的生命周期計劃嚴(yán)格管理(2)堅持進行階段評審(3)實行嚴(yán)格的產(chǎn)品控制(4)采用現(xiàn)代程序設(shè)計技術(shù)(5)結(jié)果應(yīng)能清楚地審查(6)開發(fā)小組的人員應(yīng)該少而精(7)承認不斷改進軟件工程實踐的必要性*(

5、8)二八定律5 .軟件生命周期有哪三大階段八小階段?軟件生命周期由軟件定義、軟件開發(fā)和軟件維護3個時期組成。(1)問題定義(2)可行性研究(3)需求分析(4)總體設(shè)計(5)詳細設(shè)計(6)編碼和單元測試(7)綜合測試(8)軟件維護6 .常見的軟件開發(fā)模型有哪些?各有什么特點、優(yōu)缺點?a)瀑布模型特點:(1)階段間具有順序性和依賴性(2)推遲實現(xiàn)的觀點(3)質(zhì)量保證的觀點優(yōu)點:(1)可強迫開發(fā)人員采用規(guī)范的方法(例如:結(jié)構(gòu)化技術(shù));(2)嚴(yán)格地規(guī)定了每個階段必須提交的文檔;(3)要求每個階段交出的所有產(chǎn)品都必須經(jīng)過質(zhì)量保證小組的仔細驗證。缺點:“瀑布模型是由文檔驅(qū)動的”這個事實也是它的一個主要缺點

6、。事實上,要求用戶不經(jīng)過實踐就提出完整準(zhǔn)確的需求,在許多情況下都是不切實際的??傊?,由于瀑布模型幾乎完全依賴于書面的規(guī)格說明,很可能導(dǎo)致最終開發(fā)出的軟件產(chǎn)品不能真正滿足用戶的需要。b)快速原型模型特點:快速原型模型的第一步是快速建立一個能反映用戶主要需求的原型系統(tǒng),讓用戶在計算機上試用它,通過實踐來了解目標(biāo)系統(tǒng)的概貌。優(yōu)點:克服瀑布模型的缺點,減少由于軟件需求不明確帶來的開發(fā)風(fēng)險。缺點:(1)所選用的開發(fā)技術(shù)和工具不一定符合主流的發(fā)展,快速建立起來的系統(tǒng)結(jié)構(gòu)加上連續(xù)的修改可能會導(dǎo)致產(chǎn)品質(zhì)量低下。(2)使用這個模型的前提是要有一個展示性的產(chǎn)品原型,因此在一定程度上可能會限制開發(fā)人員的創(chuàng)新。c)增

7、量模型特點:使用增量模型開發(fā)軟件時,把軟件產(chǎn)品作為一系列的增量構(gòu)件來設(shè)計、編碼、集成和測試。每個構(gòu)件由多個相互作用的模塊構(gòu)成,并且能夠完成特定的功能。優(yōu)點:能在較短時間內(nèi)向用戶提交可完成部分工作的產(chǎn)品,是增量模型的一個優(yōu)點。增量模型的另一個優(yōu)點是,逐步增加產(chǎn)品功能可以使用戶有較充裕的時間學(xué)習(xí)和適應(yīng)新產(chǎn)品,從而減少一個全新的軟件可能給客戶組織帶來的沖擊。缺點:增量模型本身是自相矛盾的。它一方面要求開發(fā)人員把軟件看作一個整體,另一方面又要求開發(fā)人員把軟件看作構(gòu)件序列,每個構(gòu)件本質(zhì)上都獨立于另一個構(gòu)件。除非開發(fā)人員有足夠的技術(shù)能力協(xié)調(diào)好這一明顯的矛盾,否則用增量模型開發(fā)出的產(chǎn)品可能并不令人滿意。d)

8、螺旋模型特點:螺旋模型的基本思想是,使用原型及其他方法來盡量降低風(fēng)險。理解這種模型的一個簡便方法,是把它看作在每個階段之前都增加了風(fēng)險分析過程的快速原型模型。優(yōu)點:1、對可選方案和約束條件的強調(diào)有利于已有軟件的重用;2、有助于把軟件質(zhì)量作為軟件開發(fā)的一個重要目標(biāo);3、減少了過多測試(浪費資金)或測試不足(產(chǎn)品故障多)所帶來的風(fēng)險;4、在螺旋模型中維護只是模型的另一個周期,在維護和開發(fā)之間并沒有本質(zhì)區(qū)別。缺點:很難讓用戶確信這種演化方法的結(jié)果是可以控制的。建設(shè)周期長,而軟件技術(shù)發(fā)展比較快,所以經(jīng)常出現(xiàn)軟件開發(fā)完畢后,和當(dāng)前的技術(shù)水平有了較大的差距,無法滿足當(dāng)前用戶需求。7 .可行性研究的基本任務(wù)

9、是什么?用最小的代價在盡可能短的時間內(nèi)確定問題是否能夠解決。8 .可行性研究有哪三個角度?1)是從技術(shù)角度出發(fā)考慮解決問題的不同方案。2)考慮操作方面的可行性。3)考慮經(jīng)濟方面的可行性。9 .可行性研究結(jié)束后的文檔是什么?可行性研究報告10 .系統(tǒng)流程圖、數(shù)據(jù)流圖、數(shù)據(jù)字典各是描繪系統(tǒng)的什么模型?(1)系統(tǒng)流程圖是概括地描繪物理系統(tǒng)的傳統(tǒng)工具。它是用圖形符號(以黑盒子形式)描繪組成系統(tǒng)的各個元素(程序、文檔、數(shù)據(jù)庫、人工過程等)和信息在這些元素之間的流動情況。(2)數(shù)據(jù)流圖是用于表現(xiàn)系統(tǒng)邏輯模型的一種工具,它以圖形的方式描繪數(shù)據(jù)在系統(tǒng)中流動和處理的過程。它只反映系統(tǒng)必須完成的邏輯功能,不考慮怎

10、樣具體地實現(xiàn)這些功能,它也是進行軟件設(shè)計的很好的出發(fā)點。數(shù)據(jù)字典是關(guān)于數(shù)據(jù)的信息的集合,也就是對數(shù)據(jù)流圖中包含的所有元素的定義的集合。它的作用是在軟件分析和設(shè)計的過程中給人提供關(guān)于數(shù)據(jù)的描述信息。數(shù)據(jù)流圖和數(shù)據(jù)字典共同構(gòu)成系統(tǒng)的邏輯模型,沒有數(shù)據(jù)字典數(shù)據(jù)流圖就不嚴(yán)格,然而沒有數(shù)據(jù)流圖數(shù)據(jù)字典也難于發(fā)揮作用。11 .軟件開發(fā)成本估計有哪三種方法?代碼行技術(shù)任務(wù)分解技術(shù)自動估計成本技術(shù)12 .經(jīng)濟效益分析有哪三個經(jīng)濟指標(biāo)?貨幣的時間價值投資回收期純收入13 .需求分析的基本任務(wù)是什么?軟件需求分析的基本任務(wù)是準(zhǔn)確地回答“系統(tǒng)必須做什么?”14 .需求分析結(jié)束提交的文檔叫什么名字?軟件需求規(guī)格說明書

11、15 .需求分析的任務(wù)有哪些?確定對系統(tǒng)的綜合要求分析系統(tǒng)的數(shù)據(jù)要求導(dǎo)出系統(tǒng)的邏輯模型16 .需求分析階段,系統(tǒng)的綜合要求需求有哪些?功能需求性能需求可靠性、可用性、安全性、保密性等需求出錯處理需求接口需求約束逆向需求將來可能提出的要求17 .軟件設(shè)計從技術(shù)的角度有哪三種內(nèi)容?從管理的角度分為哪兩種階段?技術(shù)角度:數(shù)據(jù)設(shè)計側(cè)重于數(shù)據(jù)結(jié)構(gòu)的定義。系統(tǒng)結(jié)構(gòu)設(shè)計定義軟件系統(tǒng)各主要成份之間的關(guān)系。過程設(shè)計則是把結(jié)構(gòu)成份轉(zhuǎn)換成軟件的過程性描述。在編碼步驟,根據(jù)這種過程性描述,生成源程序代碼,然后通過測試最終得到完整有效的軟件。管理角度:總體設(shè)計(概要設(shè)計)將軟件需求轉(zhuǎn)化為數(shù)據(jù)結(jié)構(gòu)和軟件的系統(tǒng)結(jié)構(gòu)。詳細設(shè)

12、計即過程設(shè)計。通過對結(jié)構(gòu)表示進行細化,得到軟件的詳細的數(shù)據(jù)結(jié)構(gòu)和算法。18 .總體設(shè)計有哪兩個任務(wù)?(1)劃分出組成系統(tǒng)的物理元素一一程序、文件、數(shù)據(jù)庫、人工過程和文檔等等,但每個物理元素仍然處于黑盒子級,這些黑盒子里的具體內(nèi)容將在詳細設(shè)計時設(shè)計。(2)設(shè)計軟件的結(jié)構(gòu)-要確定系統(tǒng)中每個程序是由哪些模塊組成的,以及這些模塊相互間的關(guān)系。19 .總體設(shè)計階段提交的文檔叫什么?軟件總體設(shè)計說明書20 .設(shè)計原理有哪些?模塊化抽象逐步求精信息隱藏和局部化21 .Miller法則:一個人在任何時候都只能把注意力集中在多少個知識塊上?一個人在任何時候都只能把注意力集中在(7±2個知識塊上22 .

13、模塊的獨立程度的兩個定性標(biāo)準(zhǔn)度量是什么?有兩個定性標(biāo)準(zhǔn)度量,這兩個標(biāo)準(zhǔn)分別稱為內(nèi)聚和耦合。耦合衡量不同模塊彼此間互相依賴(連接)的緊密程度:內(nèi)聚衡量一個模塊內(nèi)部各個元素彼此結(jié)合的緊密程度。23 .三種基本的程序控制結(jié)構(gòu)是什么順序、分支、循環(huán)24 .測試有哪三個階段?有哪兩種方法?測試三階段:單元測試集成測試確認測試軟件測試方法:黑盒測試:又叫功能測試白盒測試:又叫結(jié)構(gòu)測試。25 .軟件生存周期中時間最長的一個階段是?維護階段是軟件生存周期中時間最長的一個階段,所花費的精力和費用也是最多的一個階段。26 .軟件維護的內(nèi)容有哪四種?1、改正性維護2、適應(yīng)性維護3、完善性維護4、預(yù)防性維護27 .用例圖,類圖的作用是

溫馨提示

  • 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

提交評論