freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

軟件工程課本習題答案(已修改)

2025-07-07 15:45 本頁面
 

【正文】 . . . .1軟件與軟件工程概念 舉出你所知道的應用軟件的例子。辦公軟件、游戲軟件、財務軟件、銀行軟件、人事管理軟件、工資管理軟件、學籍管理軟件等。 認為“軟件就是程序,軟件開發(fā)就是編程序。”這種觀點是否正確?為什么?認為“軟件就是程序,軟件開發(fā)就是編程序?!边@種觀點是錯誤的。首先,軟件是計算機系統(tǒng)中與硬件相互依存的另一部分,它是包括程序,數(shù)據(jù)及其相關(guān)文檔的完整集合,程序只是軟件的組成部分之一;其次,在軟件開發(fā)中,編程只是軟件開發(fā)過程的一個階段。 如果將軟件開發(fā)比作高樓大廈的建造,可以將軟件的設(shè)計比作什么?可以將軟件的設(shè)計比作建筑設(shè)計,軟件設(shè)計的成果相當于建筑設(shè)計的設(shè)計圖紙。 什么是軟件危機?它有哪些典型表現(xiàn)?為什么會出現(xiàn)軟件危機?軟件危機:軟件危機是指在計算機軟件的開發(fā)和維護過程中所遇到的一系列嚴重問題。典型表現(xiàn):(1) 對軟件開發(fā)成本和進度的估計常常很不準確。(2) 用戶對“已完成的”軟件系統(tǒng)不滿意的現(xiàn)象經(jīng)常發(fā)生。(3) 軟件產(chǎn)品的質(zhì)量往往靠不住。(4) 軟件常常是不可維護的。(5) 軟件通常沒有適當?shù)奈臋n資料。(6) 軟件成本在計算機系統(tǒng)總成本中所占的比例逐年上升。(7) 軟件開發(fā)生產(chǎn)率提高的速度,既跟不上硬件的發(fā)展速度,也遠遠跟不上計算機應用迅速普及深入的趨勢。 產(chǎn)生軟件危機的原因: 除了軟件本身的特點,其原因主要有以下幾個方面: (1) 缺乏軟件開發(fā)的經(jīng)驗和有關(guān)軟件開發(fā)數(shù)據(jù)的積累,使得開發(fā)工作計劃很難制定。(2) 軟件人員與用戶的交流存在障礙,使得獲取的需求不充分或存在錯誤。(3) 軟件開發(fā)過程不規(guī)范。如,沒有真正了解用戶的需求就開始編程序。(4) 隨著軟件規(guī)模的增大,其復雜性往往會呈指數(shù)級升高。需要很多人分工協(xié)作,不僅涉及技術(shù)問題,更重要的是必須有科學嚴格的管理。(5) 缺少有效的軟件評測手段,提交給用戶的軟件的質(zhì)量不能完全保證。 什么是軟件工程?軟件工程是指導計算機軟件開發(fā)和維護的工程學科。采用工程的概念、原理、技術(shù)和方法來開發(fā)和維護軟件,把經(jīng)過時間考驗而證明正確的管理技術(shù)和當前能夠得到的最好的技術(shù)方法結(jié)合起來,以經(jīng)濟地開發(fā)出高質(zhì)量的軟件并有效地維護它,這就是軟件工程。 簡述軟件生存期由哪些主要的階段組成,每一階段的主要任務是什么?(1) 問題定義與可行性研究:問題定義必須回答的關(guān)鍵問題是:“要解決的問題是什么”。可行性研究要回答的關(guān)鍵問題是:“在成本和時間的限制條件下能否解決問題?是否值得做?”。(2) 需求分析:這個階段的任務仍然不是具體地解決客戶的問題,而是準確地回答“目標系統(tǒng)必須做什么”這個問題。(3) 軟件設(shè)計:本階段要回答的關(guān)鍵問題是“目標系統(tǒng)如何做?”為此,必須在設(shè)計階段中制定設(shè)計方案,把已確定的各項需求轉(zhuǎn)換成相應的軟件體系結(jié)構(gòu)。結(jié)構(gòu)中的每一組成部分都是意義明確的構(gòu)件,此即所謂概要設(shè)計。進而具體描述每個構(gòu)件所要完成的工作,為源程序編寫打下基礎(chǔ),此即所謂詳細設(shè)計。(4) 程序編碼和單元測試:本階段要解決的問題是“正確地實現(xiàn)已做的設(shè)計”,為此,需要選擇合適的編程語言,把軟件設(shè)計轉(zhuǎn)換成計算機可以接受的程序代碼,并對程序結(jié)構(gòu)中的各個模塊進行單元測試,然后運用調(diào)試的手段排除測試中發(fā)現(xiàn)的錯誤。要求編寫出的程序應當是結(jié)構(gòu)良好、清晰易讀的,且與設(shè)計相一致的。(5) 集成測試和系統(tǒng)測試:集成測試的任務是將已測試過的模塊按設(shè)計規(guī)定的順序組裝起來,在組裝的過程中檢查程序連接的問題。系統(tǒng)測試的任務是根據(jù)需求規(guī)格說明的要求,對必須實現(xiàn)的各項需求,逐項進行確認,判定已開發(fā)的軟件是否符合用戶需求,能否交付用戶使用。為了更有效地發(fā)現(xiàn)系統(tǒng)中的問題,通常這個階段的工作由開發(fā)人員、用戶之外的第三者承擔。(6) 運行維護:已交付的軟件投入正式使用,便進入運行維護階段。這一階段可能持續(xù)若干年。軟件在運行中可能由于多方面的原因,需要對它進行維護。通常有四種類型的維護:改正性維護、適應性維護、完善性維護和預防性維護。 常見的軟件生存期模型主要有哪些?每種模型的優(yōu)缺點是什么?常見的軟件生存期模型主要有瀑布模型、快速原型模型、增量模型、螺旋模型、噴泉模型和統(tǒng)一過程。(1) 瀑布模型優(yōu)點:可強迫開發(fā)人員采用規(guī)范化的方法;嚴格地規(guī)定了每個階段必須提交的文檔;要求每個階段交出的所有產(chǎn)品都必須經(jīng)過質(zhì)量保證小組的仔細驗證。缺點:由于瀑布模型幾乎完全依賴于書面的規(guī)格說明,很可能導致最終開發(fā)出的軟件產(chǎn)品不能真正滿足用戶的需要;用戶往往需要等待很長時間才能看到可以運行的程序;適應需求變更的能力比較差。適用范圍:瀑布模型只適用于項目開始時需求已確定的情況。 (2) 快速原型模型優(yōu)點:有助于滿足用戶的真實需求;原型系統(tǒng)已經(jīng)通過與用戶的交互而得到驗證,據(jù)此產(chǎn)生的規(guī)格說明文檔能夠正確地描述用戶需求。缺點:要求開發(fā)人員快速建立原型。適用范圍:適用于需求不明確的軟件項目。(3) 增量模型優(yōu)點: l 能在較短時間內(nèi)向用戶提交可完成一些基本功能的產(chǎn)品,即從第一個構(gòu)件交付之日起,用戶就能做一些有用的工作。l 逐步增加產(chǎn)品的功能可以使用戶有較充裕的時間學習和適應新產(chǎn)品,從而減少一個全新的軟件可能給用戶組織帶來的沖擊。l 項目失敗的風險較低,雖然在某些增量構(gòu)件中可能遇到一些問題,但其他增量構(gòu)件將能夠成功地交付給客戶。l 優(yōu)先級最高的服務首先交付,然后再將其他增量構(gòu)件逐次集成進來。因此,最重要的系統(tǒng)服務將接受最多的測試。缺點:l 在把每個新的增量構(gòu)件集成到現(xiàn)有軟件體系結(jié)構(gòu)中時,必須不破壞原來已經(jīng)開發(fā)出的產(chǎn)品。l 軟件體系結(jié)構(gòu)必須是開放的,即向現(xiàn)有產(chǎn)品中加入新構(gòu)件的過程必須簡單、方便。適用范圍:適用于工期緊張、功能可以劃分、比較復雜的軟件項目。軟件工程師必須有較高的技術(shù)水平,能夠設(shè)計出開放的軟件體系結(jié)構(gòu)。(4) 螺旋模型優(yōu)點: l 對可選方案和約束條件的強調(diào)有利于已有軟件的重用,也有助于把軟件質(zhì)量作為軟件開發(fā)的一個重要目標;l 減少了過多測試或測試不足所帶來的風險;l 在螺旋模型中維護只是模型的另一個周期,在維護和開發(fā)之間并沒有本質(zhì)區(qū)別。缺點:螺旋模型是風險驅(qū)動的,因此要求軟件開發(fā)人員必須具有豐富的風險評估經(jīng)驗和這方面的專門知識,否則將出現(xiàn)真正的風險:當項目實際上正在走向災難時,開發(fā)人員可能還以為一切正常。 適用范圍:適用于內(nèi)部開發(fā)的大型軟件(開發(fā)周期長、比較容易受到社會因素影響的軟件項目),軟件開發(fā)人員具有豐富的風險評估知識和經(jīng)驗。(5) 噴泉模型優(yōu)點:在開發(fā)過程中使用統(tǒng)一的概念和方法,各階段之間沒有明顯的界限,容易實現(xiàn)各個開發(fā)過程的多次反復迭代,達到了認識的逐步深化,降低了出錯的可能性。缺點:由于各個階段之間的界線不明確,容易造成軟件開發(fā)過程的無序。適用范圍:適用于面向?qū)ο蟮能浖_發(fā)。 (6) 統(tǒng)一過程優(yōu)點:提高了團隊生產(chǎn)力,在迭代的開發(fā)過程、需求管理、基于組件的體系結(jié)構(gòu)、可視化軟件建模、驗證軟件質(zhì)量及控制軟件變更等方面,針對所有關(guān)鍵的開發(fā)活動為每個開發(fā)成員提供了必要的準則、模板和工具指導,并確保全體成員共享相同的知識基礎(chǔ)。它建立了簡潔和清晰的過程結(jié)構(gòu),為開發(fā)過程提供了較大的通用性。缺點:RUP只是一個開發(fā)過程,并沒有涵蓋軟件過程的全部內(nèi)容,例如它缺少關(guān)于軟件運行和支持等方面的內(nèi)容;此外,它沒有支持多項目的開發(fā)結(jié)構(gòu),這在一定程度上降低了在開發(fā)組織內(nèi)大范圍實現(xiàn)重用的可能性。適用范圍:適用于基于構(gòu)件的軟件開發(fā)。 2 軟件工程方法與工具 軟件工程的三種基本要素是什么,各自的作用是什么?軟件工程的三種基本要素是方法、工具和過程。(1) 軟件工程方法(method)為建造軟件提供技術(shù)上的解決方法(“如何做”)。目前使用得最廣泛的方法是傳統(tǒng)方法(結(jié)構(gòu)化方法)和面向?qū)ο蠓椒ā?2) 工具為方法的運用提供自動的或半自動的軟件支撐環(huán)境。(3) 過程是為了獲得高質(zhì)量的軟件所需要完成的一系列任務的框架,它規(guī)定了完成各項任務的工作步驟。 簡述傳統(tǒng)方法和面向?qū)ο蠓椒ǖ奶攸c。(1) 傳統(tǒng)方法的特點傳統(tǒng)方法也稱為生命周期方法或結(jié)構(gòu)化范型。它采用結(jié)構(gòu)化技術(shù)來完成軟件開發(fā)的各項任務。這種方法學把軟件生命周期的全過程依次劃分為若干個階段,然后順序地逐步完成每個階段的任務。每一個階段的開始和結(jié)束都有嚴格的標準,對于任何兩個相鄰的階段而言,前一個階段的結(jié)束標準就是后一階段的開始標準。 傳統(tǒng)方法的主要缺點是在適應需求變化方面不夠靈活,另外,結(jié)構(gòu)化方法要么面向行為,要么面向數(shù)據(jù),缺乏使兩者有機結(jié)合的機制。(2)面向?qū)ο蠓椒ǖ奶攸c面向?qū)ο蠓椒ò褦?shù)據(jù)和行為看成同等重要,是將數(shù)據(jù)和對數(shù)據(jù)的操作緊密地結(jié)合起來的方法,
點擊復制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
公安備案圖鄂ICP備17016276號-1