

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、第1章軟件與軟件工程軟件與軟件工程的概念的概念1.1舉出你所知道的應用軟件的例子。舉出你所知道的應用軟件的例子。辦公軟件、游戲軟件、財務軟件、銀行軟件、人事管理軟件、工資管理軟件、學籍管理軟件等。1.2認為“軟件就是程序,軟件開發(fā)就是編程序?!边@種觀點是否正確?為什么?認為“軟件就是程序,軟件開發(fā)就是編程序。”這種觀點是否正確?為什么?認為“軟件就是程序,軟件開發(fā)就是編程序?!边@種觀點是錯誤的。首先,軟件是計算機系統(tǒng)中與硬件相互依存的另
2、一部分,它是包括程序,數(shù)據(jù)及其相關文檔的完整集合,程序只是軟件的組成部分之一;其次,在軟件開發(fā)中,編程只是軟件開發(fā)過程的一個階段。1.3如果將軟件開發(fā)比作高樓大廈的建造,可以將軟件的設計比作什么?如果將軟件開發(fā)比作高樓大廈的建造,可以將軟件的設計比作什么?可以將軟件的設計比作建筑設計,軟件設計的成果相當于建筑設計的設計圖紙。1.4什么是軟件危機?它有哪些典型表現(xiàn)?為什么會出現(xiàn)軟件危機?什么是軟件危機?它有哪些典型表現(xiàn)?為什么會出現(xiàn)軟件危
3、機?軟件危機:軟件危機:軟件危機是指在計算機軟件的開發(fā)和維護過程中所遇到的一系列嚴重問題。典型表現(xiàn):典型表現(xiàn):(1)對軟件開發(fā)成本和進度的估計常常很不準確。(2)用戶對“已完成的”軟件系統(tǒng)不滿意的現(xiàn)象經常發(fā)生。(3)軟件產品的質量往往靠不住。(4)軟件常常是不可維護的。(5)軟件通常沒有適當?shù)奈臋n資料。(6)軟件成本在計算機系統(tǒng)總成本中所占的比例逐年上升。(7)軟件開發(fā)生產率提高的速度,既跟不上硬件的發(fā)展速度,也遠遠跟不上計算機應用迅速
4、普及深入的趨勢。產生軟件危機的原因:產生軟件危機的原因:除了軟件本身的特點,其原因主要有以下幾個方面:(1)缺乏軟件開發(fā)的經驗和有關軟件開發(fā)數(shù)據(jù)的積累,使得開發(fā)工作計劃很難制定。(2)軟件人員與用戶的交流存在障礙,使得獲取的需求不充分或存在錯誤。(3)軟件開發(fā)過程不規(guī)范。如,沒有真正了解用戶的需求就開始編程序。(4)隨著軟件規(guī)模的增大,其復雜性往往會呈指數(shù)級升高。需要很多人分工協(xié)作,不僅涉及技術問題,更重要的是必須有科學嚴格的管理。(5
5、)缺少有效的軟件評測手段,提交給用戶的軟件的質量不能完全保證。1.5什么是軟件工程?什么是軟件工程?軟件工程是指導計算機軟件開發(fā)和維護的工程學科。采用工程的概念、原理、技術和方法來開發(fā)和維護軟件,把經過時間考驗而證明正確的管理技術和當前能夠得到的最好的技術方法結合起來,以經濟地開發(fā)出高質量的軟件并有效地維護它,這就是軟件工程。1.6簡述軟件生存期由哪些主要的階段組成,每一階段的主要任務是什么?簡述軟件生存期由哪些主要的階段組成,每一階段
6、的主要任務是什么?(1)問題定義與可行性研究:問題定義必須回答的關鍵問題是:“要解決的問題是什么”??尚行匝芯恳卮鸬年P鍵問題是:“在成本和時間的限制條件下能否解決問題?是否值得做?”。(2)需求分析:這個階段的任務仍然不是具體地解決客戶的問題,而是準確地回答“目標系統(tǒng)必須做什么”這個問題。(3)軟件設計:本階段要回答的關鍵問題是“目標系統(tǒng)如何做?”為此,必須在設計階段中制定設計方案,把已確定的各項需求轉換成相應的軟件體系結構。結構中的
7、每一組成部分都是意義明確的構件,此即所謂概要設計。進而具體描述每個構件所要完成的缺點:缺點:螺旋模型是風險驅動的,因此要求軟件開發(fā)人員必須具有豐富的風險評估經驗和這方面的專門知識,否則將出現(xiàn)真正的風險:當項目實際上正在走向災難時,開發(fā)人員可能還以為一切正常。適用范圍:適用范圍:適用于內部開發(fā)的大型軟件(開發(fā)周期長、比較容易受到社會因素影響的軟件項目),軟件開發(fā)人員具有豐富的風險評估知識和經驗。(5)噴泉模型噴泉模型優(yōu)點優(yōu)點:在開發(fā)過程中
8、使用統(tǒng)一的概念和方法,各階段之間沒有明顯的界限,容易實現(xiàn)各個開發(fā)過程的多次反復迭代,達到了認識的逐步深化,降低了出錯的可能性。缺點缺點:由于各個階段之間的界線不明確,容易造成軟件開發(fā)過程的無序。適用范圍:適用范圍:適用于面向對象的軟件開發(fā)。(6)統(tǒng)一過程統(tǒng)一過程優(yōu)點:優(yōu)點:提高了團隊生產力,在迭代的開發(fā)過程、需求管理、基于組件的體系結構、可視化軟件建模、驗證軟件質量及控制軟件變更等方面,針對所有關鍵的開發(fā)活動為每個開發(fā)成員提供了必要的準
9、則、模板和工具指導,并確保全體成員共享相同的知識基礎。它建立了簡潔和清晰的過程結構,為開發(fā)過程提供了較大的通用性。缺點缺點:RUP只是一個開發(fā)過程,并沒有涵蓋軟件過程的全部內容,例如它缺少關于軟件運行和支持等方面的內容;此外,它沒有支持多項目的開發(fā)結構,這在一定程度上降低了在開發(fā)組織內大范圍實現(xiàn)重用的可能性。適用范圍:適用范圍:適用于基于構件的軟件開發(fā)。第2章軟件工程方法與工具軟件工程方法與工具2.1軟件工程的三種基本要素是什么,各自的
10、作用是什么?軟件工程的三種基本要素是什么,各自的作用是什么?軟件工程的三種基本要素是方法、工具和過程。(1)軟件工程方法(method)為建造軟件提供技術上的解決方法(“如何做”)。目前使用得最廣泛的方法是傳統(tǒng)方法(結構化方法)和面向對象方法。(2)工具為方法的運用提供自動的或半自動的軟件支撐環(huán)境。(3)過程是為了獲得高質量的軟件所需要完成的一系列任務的框架,它規(guī)定了完成各項任務的工作步驟。2.2簡述傳統(tǒng)方法和面向對象方法的特點。簡述傳
11、統(tǒng)方法和面向對象方法的特點。(1)傳統(tǒng)方法的特點傳統(tǒng)方法也稱為生命周期方法或結構化范型。它采用結構化技術來完成軟件開發(fā)的各項任務。這種方法學把軟件生命周期的全過程依次劃分為若干個階段,然后順序地逐步完成每個階段的任務。每一個階段的開始和結束都有嚴格的標準,對于任何兩個相鄰的階段而言,前一個階段的結束標準就是后一階段的開始標準。傳統(tǒng)方法的主要缺點是在適應需求變化方面不夠靈活,另外,結構化方法要么面向行為,要么面向數(shù)據(jù),缺乏使兩者有機結合的
12、機制。(2)面向對象方法的特點面向對象方法把數(shù)據(jù)和行為看成同等重要,是將數(shù)據(jù)和對數(shù)據(jù)的操作緊密地結合起來的方法,這也是面向對象方法與傳統(tǒng)方法的重要區(qū)別。面向對象方法的出發(fā)點和基本原則,是盡量模擬人類習慣的思維方式,使開發(fā)軟件的方法和過程盡可能接近人類認識問題和解決問題的方法與過程,從而使描述問題的問題空間與其解空間在結構上盡可能一致。對于大型、復雜及交互性比較強的系統(tǒng),使用面向對象方法更有優(yōu)勢。2.3形式化方法的特點是什么?形式化方法的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論