資源描述:
《軟件工程導(dǎo)論----張海藩(第五版)課后習(xí)題答案》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。
1、軟件工程課后習(xí)題答案第五版《軟件工程導(dǎo)論》課后習(xí)題答案第一章軟件工程概論1.什么是軟件危機(jī)? 軟件危機(jī)是指在計(jì)算機(jī)軟件的開(kāi)發(fā)和維護(hù)過(guò)程中所遇到的一系列嚴(yán)重問(wèn)題。這些問(wèn)題表現(xiàn)在以下幾個(gè)方面: (1)用戶對(duì)開(kāi)發(fā)出的軟件很難滿意?! ?2)軟件產(chǎn)品的質(zhì)量往往靠不住?! ?3)一般軟件很難維護(hù)?! ?4)軟件生產(chǎn)效率很低?! ?5)軟件開(kāi)發(fā)成本越來(lái)越大?! ?6)軟件成本與開(kāi)發(fā)進(jìn)度難以估計(jì)?! ?7)軟件技術(shù)的發(fā)展遠(yuǎn)遠(yuǎn)滿足不了計(jì)算機(jī)應(yīng)用的普及與深入的需要。2.為什么會(huì)產(chǎn)生軟件危機(jī)? (1)開(kāi)發(fā)人員
2、方面,對(duì)軟件產(chǎn)品缺乏正確認(rèn)識(shí),沒(méi)有真正理解軟件產(chǎn)品是一個(gè)完整的配置組成。造成開(kāi)發(fā)中制定計(jì)劃盲目、編程草率,不考慮維護(hù)工作的必要性。 (2)軟件本身方面,對(duì)于計(jì)算機(jī)系統(tǒng)來(lái)說(shuō),軟件是邏輯部件,軟件開(kāi)發(fā)過(guò)程沒(méi)有統(tǒng)一的、公認(rèn)的方法論和規(guī)范指導(dǎo),造成軟件維護(hù)困難。 (3)尤其是隨著軟件規(guī)模越來(lái)越大,復(fù)雜程度越來(lái)越高,原有軟件開(kāi)發(fā)方式效率不高、質(zhì)量不能保證、成本過(guò)高、研制周期不易估計(jì)、維護(hù)困難等一系列問(wèn)題更為突出,技術(shù)的發(fā)展已經(jīng)遠(yuǎn)遠(yuǎn)不能適應(yīng)社會(huì)需求。3.怎樣克服軟件危機(jī)? (1)充分吸收和借鑒人類長(zhǎng)期以來(lái)從事各種工
3、程項(xiàng)目中積累的行之有效的有效原理、概念、技術(shù)與方法,特別是吸取幾十年來(lái)人類從事計(jì)算機(jī)硬件研究和開(kāi)發(fā)的經(jīng)驗(yàn)教訓(xùn)。在開(kāi)發(fā)軟件的過(guò)程中努力作到良好的組織,嚴(yán)格的管理,相互友好的協(xié)作?! ?2)推廣在實(shí)踐中總結(jié)出來(lái)的開(kāi)發(fā)軟件的成功的技術(shù)和方法,并研究更好、更有效的技術(shù)和方法,盡快克服在計(jì)算機(jī)系統(tǒng)早期發(fā)展階段形成的一些錯(cuò)誤概念和作法?! ?3)根據(jù)不同的應(yīng)用領(lǐng)域,開(kāi)發(fā)更好的軟件工具并使用這些工具。將軟件開(kāi)發(fā)各個(gè)階段使用的軟件工具集合成一個(gè)整體,形成一個(gè)很好的軟件開(kāi)發(fā)支環(huán)環(huán)境。總之為了解決軟件危機(jī),既要有技術(shù)措施(方法和
4、工具),又要有必要的組織管理措施。4.構(gòu)成軟件項(xiàng)目的最終產(chǎn)品: 應(yīng)用程序、系統(tǒng)程序、面向用戶的文檔資料和面向開(kāi)發(fā)者的文檔資料。5.什么是軟件生存周期? 軟件生存周期是指從軟件定義、開(kāi)發(fā)、使用、維護(hù)到淘汰的全過(guò)程。24軟件工程課后習(xí)題答案第五版6.軟件生存周期為什么劃分成階段? (1)任何一個(gè)階段的具體任務(wù)不僅獨(dú)立,而且簡(jiǎn)單,便于不同人員分工協(xié)作,從而降低整個(gè)軟件開(kāi)發(fā)工作的困難程度?! ?2)可以降低每個(gè)階段任務(wù)的復(fù)雜程度,簡(jiǎn)化不同階段的聯(lián)系,有利于工程的組織管理,也便于采用良好的技術(shù)方法?! ?3)使軟
5、件開(kāi)發(fā)的全過(guò)程以一種有條不紊的方式進(jìn)行,保證軟件的質(zhì)量,特別是提高了軟件的可維護(hù)性。7.應(yīng)該怎樣來(lái)劃分階段? (1)每一個(gè)階段的任務(wù)盡可能獨(dú)立; (2)同一階段內(nèi)的任務(wù)性質(zhì)盡可能相同; (3)每一個(gè)階段任務(wù)的開(kāi)始和結(jié)束有嚴(yán)格的標(biāo)準(zhǔn)。8.軟件開(kāi)發(fā)模型有幾種?它們的開(kāi)發(fā)方法有可特點(diǎn)? 軟件開(kāi)發(fā)模型有瀑布型、漸增型和變換型?! ∑俨夹烷_(kāi)發(fā)方法是按照軟件生存周期的劃分依次實(shí)施,每一個(gè)階段有明確規(guī)定的任務(wù)。它的特點(diǎn): (1)各個(gè)階段的順序性和依賴性; (2)劃分邏輯設(shè)計(jì)與物理設(shè)計(jì),盡可能推遲程序的物理實(shí)
6、現(xiàn); (3)每個(gè)階段必須完成規(guī)定的文檔,對(duì)其中問(wèn)題通過(guò)復(fù)審及早發(fā)現(xiàn),及早解決?! u增型開(kāi)發(fā)方法及特點(diǎn): (1)從部分需求出發(fā),先建立一個(gè)不完全的系統(tǒng),通過(guò)測(cè)試運(yùn)行該系統(tǒng)取得經(jīng)驗(yàn)和信息反饋,加深對(duì)軟件需求的理解,進(jìn)一步使系統(tǒng)擴(kuò)充和完善。如此反復(fù),直至軟件人員和用戶對(duì)所設(shè)計(jì)完成的軟件系統(tǒng)滿意為止?! ?2)在漸增型開(kāi)發(fā)下的軟件是隨軟件開(kāi)發(fā)的過(guò)程而逐漸形成的?! ?3)漸增型開(kāi)發(fā)方法適合于知識(shí)型軟件的開(kāi)發(fā),設(shè)計(jì)系統(tǒng)時(shí)對(duì)用戶需求的認(rèn)識(shí)開(kāi)始不是很清楚的,需要在開(kāi)發(fā)過(guò)程中不斷認(rèn)識(shí)、不斷獲得新的知識(shí)去豐富和完
7、善系統(tǒng)。多數(shù)研究性質(zhì)的試驗(yàn)軟件,一般采用此方法?! ∽儞Q型開(kāi)發(fā)方法及特點(diǎn): (1)從軟件需求的形式化規(guī)格說(shuō)明出發(fā),經(jīng)過(guò)一系列的程序變換,得到最終的程序系統(tǒng)。 (2)該方法必須有嚴(yán)格的數(shù)學(xué)理論和形式化技術(shù)的支持。9.什么是軟件工程? 軟件工程是指導(dǎo)計(jì)算機(jī)軟件開(kāi)發(fā)和維護(hù)的工程學(xué)科。 (1)它采用工程的概念、原理、技術(shù)和方法來(lái)開(kāi)發(fā)和維護(hù)軟件; (2)它將管理技術(shù)與當(dāng)前經(jīng)過(guò)時(shí)間考驗(yàn)的而證明是正確的技術(shù)方法結(jié)合起來(lái); (3)它強(qiáng)調(diào)使用生存周期方法學(xué)和結(jié)構(gòu)分析和結(jié)構(gòu)技術(shù); (4)經(jīng)過(guò)人們長(zhǎng)期的努
8、力和探索,圍繞著實(shí)現(xiàn)軟件優(yōu)質(zhì)高產(chǎn)這個(gè)目標(biāo),從技術(shù)到管理兩個(gè)方面做了大量的努力,逐漸形成了"軟件工程學(xué)"這一新的學(xué)科。10.什么是軟件工程環(huán)境:方法與工具的結(jié)合,加上配套的軟、硬件支持稱為軟件工程環(huán)境。它能支持開(kāi)發(fā)者按照軟件工程的方法,全面完成生存周期中的各項(xiàng)任務(wù)。24軟件工程課后習(xí)題答案第五版第二章 可行性研究 習(xí)題答案1.問(wèn)題定義的任務(wù)和主要工作? 問(wèn)題定義的任務(wù):將用戶提出的要求具體化、定量化