版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、第一章1什么是軟件危機?它有哪些典型表現(xiàn)?為什么會產(chǎn)生軟件危機?軟件危機是指在計算機軟件的開發(fā)和維護過程中所遇到的一系列嚴重問題。這些問題表現(xiàn)在以下幾個方面:(1)用戶對開發(fā)出的軟件很難滿意。(2)軟件產(chǎn)品的質(zhì)量往往靠不住。(3)一般軟件很難維護。(4)軟件生產(chǎn)效率很低。(5)軟件開發(fā)成本越來越大。(6)軟件成本與開發(fā)進度難以估計。(7)軟件技術(shù)的發(fā)展遠遠滿足不了計算機應(yīng)用的普及與深入的需要。產(chǎn)生軟件危機的原因(1)開發(fā)人員方面,對軟件
2、產(chǎn)品缺乏正確認識,沒有真正理解軟件產(chǎn)品是一個完整的配置組成。造成開發(fā)中制定計劃盲目、編程草率,不考慮維護工作的必要性。(2)軟件本身方面,對于計算機系統(tǒng)來說,軟件是邏輯部件,軟件開發(fā)過程沒有統(tǒng)一的、公認的方法論和規(guī)范指導,造成軟件維護困難。(3)尤其是隨著軟件規(guī)模越來越大復雜程度越來越高原有軟件開發(fā)方式效率不高、質(zhì)量不能保證、成本過高、研制周期不易估計、維護困難等一系列問題更為突出,技術(shù)的發(fā)展已經(jīng)遠遠不能適應(yīng)社會需求。2假設(shè)自己是一家軟
3、件公司的總工程師,當把圖1.1給手下的軟件工程師們觀看,告訴他們及早發(fā)現(xiàn)并改正錯誤的重要性時,有人不同意這個觀點,認為要求在錯誤進入軟件之前就清除它們是不現(xiàn)實的,并舉例說:“如果一個故障是編碼錯誤造成的,那么,一個人怎么能在設(shè)計階段清楚他呢?”應(yīng)該怎樣反駁他?反駁:發(fā)生在編碼時期的故障極有可能是需求分析階段由于操作不當產(chǎn)生的,所以必須及時消除錯誤,否則,到了后期軟件運行和維護階段再回過頭來修改,將會付出更大的代價。3什么是軟件工程它有哪
4、些本質(zhì)特性?怎樣用軟件工程消除軟件危機?軟件工程是指導計算機軟件開發(fā)和維護的工程學科。(1)它采用工程的概念、原理、技術(shù)和方法來開發(fā)和維護軟件;(2)它將管理技術(shù)與當前經(jīng)過時間考驗的而證明是正確的技術(shù)方法結(jié)合起來;(3)它強調(diào)使用生存周期方法學和結(jié)構(gòu)分析和結(jié)構(gòu)技術(shù);(4)經(jīng)過人們長期的努力和探索,圍繞著實現(xiàn)軟件優(yōu)質(zhì)高產(chǎn)這個目標從技術(shù)到管理兩個方面做了大量的努力逐漸形成了“軟件工程學“這一新的學科。消除軟件危機的措施:(1)對計算機軟件有
5、一個正確的認識(軟件≠程序)(2)必須充分認識到軟件開發(fā)不是某種個體勞動的神秘技巧,而應(yīng)該是一種組織良好、管理嚴密、各類人員協(xié)同配合、共同完成的工程項目。(3)推廣使用在實踐中總結(jié)出來的開發(fā)軟件的成功技術(shù)和方法。(4)開發(fā)和使用更好的軟件工具?1.技術(shù)措施對軟件的修改進行嚴格管理。(4)采用現(xiàn)代的程序設(shè)計技術(shù)結(jié)構(gòu)化分析(SA)與設(shè)計(SD)面向?qū)ο蟮姆治?OOA)與設(shè)計(OOD)。(5)結(jié)果能清楚的審查規(guī)定開發(fā)組織的責任和產(chǎn)品標準。(6
6、)開發(fā)小組的人員應(yīng)該少而精成員素質(zhì)要好,人數(shù)不宜過多。(7)承認不斷改進軟件工程實踐必要性8.軟件工程方法學定義:通常把在軟件生命周期全過程中使用的一整套技術(shù)方法的集合成為…(亦為范型)9軟件工程方法學的三要素:方法、工具、過程10.軟件工程方法學的包括:簡述結(jié)構(gòu)化范型和面向?qū)ο蠓缎偷囊c,并分析它們的優(yōu)缺點傳統(tǒng)方法學(生命周期方法學結(jié)構(gòu)化范型)(1)仍然是使用十分廣泛的軟件工程方法學。(2)采用結(jié)構(gòu)化技術(shù)來完成軟件開發(fā)的各項任務(wù),并使
7、用適當?shù)能浖ぞ呋蜍浖こ汰h(huán)境來支持結(jié)構(gòu)化技術(shù)的運用。(3)從上而下,順序地完成軟件開發(fā)的各階段任務(wù)面向?qū)ο蟮姆椒▽W(1)出發(fā)點和基本原則是盡量模擬人類習慣的思維方式,使開發(fā)軟件的方法與過程盡可能接近人類認識實踐解決問題的方法與過程,從而使描述問題的問題空間與實現(xiàn)解法的解空間在結(jié)構(gòu)上盡可能一致(2)把對象作為融合了數(shù)據(jù)及在數(shù)據(jù)上的操作行為的統(tǒng)一軟件構(gòu)件;(3)把所有對象都劃分成類;(4)按照父類與子類的關(guān)系,把若干個相關(guān)類組成一個層次結(jié)
8、構(gòu)的系統(tǒng);(5)對象彼此間僅能通過發(fā)送消息互相聯(lián)系11什么是軟件生命周期模型?模型分類?軟件開發(fā)過程模型是軟件開發(fā)全部過程、活動和任務(wù)的結(jié)構(gòu)框架。它能直觀表達軟件開發(fā)全過程,明確規(guī)定要完成的主要活動、任務(wù)和開發(fā)策略。亦稱為:軟件開發(fā)模型軟件生存期模型分類(1)瀑布模型(2)快速原型模型(3)增量模型(4)螺旋模型(5)噴泉模型12試比較瀑布模型、快速原型模型、增量模型和螺旋模型的優(yōu)缺點,說明每種模型的適用范圍?瀑布模型:【適用領(lǐng)域】:用
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論