久久无码高潮喷水抽搐,极品馒头泬19p,久久人人爽精品玩人妻av,精品国产成人国产在线视,精品视频一区二区三区在线观看

最新更新最新專題

您的位置:首頁 > ppt下載 > PPT課件 > 學校PPT > 軟件工程導論ppt模板

軟件工程導論ppt模板下載

素材大。
3.73 MB
素材授權:
免費下載
素材格式:
.ppt
素材上傳:
ppt
上傳時間:
2018-05-10
素材編號:
110134
素材類別:
學校PPT

素材預覽

軟件工程導論ppt模板

這是一個關于軟件工程導論ppt模板,主要介紹軟件工程學概述可行性研究需求分析形式化說明技術、總體設計。軟件工程導論 Software Engineering 教師:尋楊濟寧學院計算機科學系09級總 目 錄第1章 軟件工程學概述第2章 可行性研究第3章 需求分析第4章 形式化說明技術第5章 總體設計第6章 詳細設計第7章 實現(xiàn)第8章 維護 第1章 軟件工程學概述 1.1 軟件危機 1.2 軟件工程 1.3 軟件生命周期 1.4 軟件過程 1.5 小結習題 軟件的發(fā)展程序設計階段 程序系統(tǒng)階段 軟件工程階段 計算機軟件發(fā)展的三個時期(見WORD文檔)1.1.1 軟件危機的介紹軟件危機:指在計算機軟件的開發(fā)和維護過程中所 遇到的一系列嚴重問題。 軟件危機包含兩方面的問題:1、如何開發(fā)軟件以滿足對軟件日益增長的需求;2、如何維護數(shù)量不斷膨脹的已有軟件。(1) 對軟件開發(fā)成本和進度的估計常常很不準確。(2) 用戶對“已完成的”軟件系統(tǒng)不滿意的現(xiàn)象經(jīng)常發(fā)生,歡迎點擊下載軟件工程導論ppt模板哦。

軟件工程導論ppt模板是由紅軟PPT免費下載網(wǎng)推薦的一款學校PPT類型的PowerPoint.

軟件工程導論 Software Engineering 教師:尋楊濟寧學院計算機科學系09級總 目 錄第1章 軟件工程學概述第2章 可行性研究第3章 需求分析第4章 形式化說明技術第5章 總體設計第6章 詳細設計第7章 實現(xiàn)第8章 維護 第1章 軟件工程學概述 1.1 軟件危機 1.2 軟件工程 1.3 軟件生命周期 1.4 軟件過程 1.5 小結習題 軟件的發(fā)展程序設計階段 程序系統(tǒng)階段 軟件工程階段 計算機軟件發(fā)展的三個時期(見WORD文檔) 1.1.1 軟件危機的介紹軟件危機:指在計算機軟件的開發(fā)和維護過程中所 遇到的一系列嚴重問題。 軟件危機包含兩方面的問題: 1、如何開發(fā)軟件以滿足對軟件日益增長的需求; 2、如何維護數(shù)量不斷膨脹的已有軟件。 (1) 對軟件開發(fā)成本和進度的估計常常很不準確。 (2) 用戶對“已完成的”軟件系統(tǒng)不滿意的現(xiàn)象經(jīng)常發(fā)生。 (3) 軟件產(chǎn)品的質(zhì)量往往靠不住。 (4) 軟件常常是不可維護的。 (5) 軟件通常沒有適當?shù)奈臋n資料。 1.1.2 產(chǎn)生軟件危機的原因軟件開發(fā)和維護過程中存在的嚴重問題, 1、與軟件本身的特點有關; 2、和軟件開發(fā)與維護的方法不正確有關。 軟件的特點: 1、軟件是邏輯的而不是物理的產(chǎn)品。 如、皇帝的新衣 2、軟件是由開發(fā)或工程化而形成的,而不是傳統(tǒng)意義上的制造產(chǎn)生的。意味著軟件項目不能象硬件制造項目那樣來管理。 軟件的特點: 4、軟件的成本相對昂貴。 5、軟件本身是復雜的。 6、軟件的開發(fā)尚未完全擺脫手工藝的方式。 1.1.3 消除軟件危機的途徑 解決軟件危機,既要有技術措施(方法和工具),又要有必要的組織管理措施。 軟件工程正是從管理和技術兩方面研究如何更好地開發(fā)和維護計算機軟件的一門新興學科。 1.2 軟件工程 1.2.1 軟件工程的介紹軟件工程:采用工程的概念、原理、技術和方法來開發(fā)與維護軟件,把經(jīng)過時間考驗而證明正確的管理技術和當前能夠得到的最好的技術方法結合起來,以經(jīng)濟地開發(fā)出高質(zhì)量的軟件并有效地維護它。 軟件工程的兩個典型定義: 1968年在第一屆NATO會議上給出的定義:“軟件工程就是為了經(jīng)濟地獲得可靠的且能在實際機器上有效地運行的軟件,而建立和使用完善的工程原理。” 1993年IEEE給出的更全面的定義:“軟件工程是: ①把系統(tǒng)的、規(guī)范的、可度量的途徑應用于軟件開發(fā)、運行和維護過程,也就是把工程應用于軟件; ②研究①中提到的途徑。” 軟件工程具有的本質(zhì)特性: 1. 軟件工程關注于大型程序的構造 3. 軟件經(jīng)常變化 4. 開發(fā)軟件的效率非常重要 5. 和諧地合作是開發(fā)軟件的關鍵 6. 軟件必須有效地支持它的用戶 7. 在軟件工程領域中是由具有一種文化背景的人代替具有另一種文化背景的人 軟件工程師的專家通常并不是他們開發(fā)的應用系統(tǒng)領域的專家。缺乏應用領域的相關知識,是軟件開發(fā)項目出現(xiàn)問題的常見原因。 1.2.2 軟件工程的基本原理 著名的軟件工程專家B.W.Boehm綜合學者們的100多條意見并總結了TRW公司多年開發(fā)軟件的經(jīng)驗,于1983年提出了軟件工程的7條基本原理,它是確保軟件產(chǎn)品質(zhì)量和開發(fā)效率的原理的最小集合。 軟件工程的7條基本原理:用分階段的生命周期計劃嚴格管理 2. 堅持進行階段評審第一、大部分錯誤是在編碼之前造成的,根據(jù)Boehm等人的統(tǒng)計,設計錯誤占軟件錯誤的63%,編碼錯誤僅占37%;第二、錯誤發(fā)現(xiàn)與改正得越晚,所需付出的代價也越高。 3. 實行嚴格的產(chǎn)品控制 4. 采用現(xiàn)代程序設計技術 5. 結果應能清楚地審查 6. 開發(fā)小組的人員應該少而精 當開發(fā)小組人員數(shù)為N時,可能的通信路徑M有N(N-1)/2條,隨著N的增大,通信開銷急劇增加。 N=1,M=0 N=2,M=1 N=3,M=3 N=4,M=6 N=5,M=10 N=6,M=15… 注:2-8人左右為宜。 7. 承認不斷改進軟件工程實踐的必要性 不僅要積極主動地采納新的軟件技術,而且要不斷總結經(jīng)驗。 1.2.3 軟件工程方法學 軟件工程包括技術和管理兩方面的內(nèi)容,是技術與管理緊密結合所形成的工程學科。 軟件開發(fā)技術:軟件開發(fā)方法學 軟件開發(fā)過程 軟件工具和軟件工程環(huán)境 軟件工程管理:軟件管理學 軟件經(jīng)濟學 軟件心理學 軟件工程方法學3要素:方法、工具和過程。 方法:完成軟件開發(fā)各項任務的技術方法,“怎樣做?”;工具:提供的自動或半自動的軟件工程支撐環(huán)境;過程:規(guī)定了完成各項任務的工作步驟。質(zhì)量:基礎。 目前使用得最廣泛的軟件工程方法學: 傳統(tǒng)方法學 面向對象方法學 “軟件工程”課程與其它軟件專業(yè)課的區(qū)別: (1) 立足于系統(tǒng)的整體。 (2) 講授系統(tǒng)分析、系統(tǒng)設計、 測試及維護的理論和方法。 (3) 構筑一個軟件系統(tǒng),實踐 軟件開發(fā)全過程。 “軟件工程”課程教學與實踐的目標 轉變對軟件的認識: 上升 程序 系統(tǒng) 轉變思維定式: 上升 程序員 系統(tǒng)工程師 工程化訓練 1.3 軟件生命周期 一個軟件從定義、開發(fā)、使用和維護,直到最終被廢棄,要經(jīng)歷一個漫長的時期,通常把軟件經(jīng)歷的這個漫長的時期稱為生命周期。(3頁) [軟件生命周期由軟件定義、軟件開發(fā)和運行維護3個時期組成。軟件定義時期:劃分成3個階段,即問題定義、可行性研究和需求分析。開發(fā)時期:由4個階段組成,總體設計,詳細設計,編碼和單元測試,綜合測試。其中前兩個階段又稱為系統(tǒng)設計,后兩個階段又稱為系統(tǒng)實現(xiàn)。維護時期:主要任務是使軟件持久地滿足用戶的需要。] 軟件生命周期每個階段的基本任務: 1. 問題定義 “要解決的問題是什么?” (why to do?) 2. 可行性研究 “對于上一個階段所確定的問題 有行得通的解決辦法嗎?” 3. 需求分析(what to do?) “為了解決這個問題,目標系統(tǒng)必須做什么”。 4. 總體設計 “概括地說,應該怎樣實現(xiàn)目標系統(tǒng)?” 5. 詳細設計 “應該怎樣具體地實現(xiàn)這個系統(tǒng)呢?” 6. 編碼和單元測試寫出正確的容易理解、容易維護的程序模塊。 7. 綜合測試通過各種類型的測試及調(diào)試使軟件達到預定的要求。 8. 軟件維護通過各種必要的維護活動使系統(tǒng)持久地滿足用戶的需要。 1.4 軟件過程 軟件過程:為了獲得高質(zhì)量軟件所需要完成的一系列任務的框架,它規(guī)定了完成各項任務的工作步驟。 通常使用生命周期模型/生存期模型/過程模型/開發(fā)模型/工程范型簡潔地描述軟件過程。 邊做邊改模型(Build and Fix Model):許多產(chǎn)品都是用“邊做邊改”模型開發(fā)的。沒有規(guī)格說明,沒有經(jīng)過設計。隨著客戶需要一次又一次不斷地修改。開發(fā)費用高,維護困難。特點: 適用于小程序。 1.4.1 瀑布模型 (Waterfall Model) 1970年Winston Royce提出了著名的“瀑布模型”,直到80年代早期,它一直是唯一被廣泛采用的軟件開發(fā)模型。開發(fā)成功的軟件項目也有幾十個。 圖1.2 傳統(tǒng)的瀑布模型 按照傳統(tǒng)瀑布模型開發(fā)軟件的特點: 1. 階段間具有順序性和依賴性 ①前一階段的工作完成后,才能開始后一階段的工作; ②前一階段的輸出文檔是后一階段的輸入文檔,前一階段的輸出文檔正確,后一階段的工作才能獲得正確的結果。 2. 推遲實現(xiàn)的觀點 對于規(guī)模較大的軟件項目來說,往往編碼開始得越早最終完成開發(fā)工作所需要的時間反而越長。 3. 質(zhì)量保證的觀點(1) 每個階段都必須完成規(guī)定的文檔。(2) 每個階段結束前都要對所完成的文檔進行評審,以便盡早發(fā)現(xiàn)問題,改正錯誤。 [傳統(tǒng)的瀑布模型過于理想化了,實際的瀑布模型是帶“反饋環(huán)”的,如圖1.3(實線箭頭表示開發(fā)過程,虛線箭頭表示維護過程)。當在后面階段發(fā)現(xiàn)前面階段的錯誤時,需要沿圖中左側的反饋線返回前面的階段,修正前面階段的產(chǎn)品之后再回來繼續(xù)完成后面階段的任務。] 圖1.3 實際的瀑布模型 1.4.2原型模型(快速原型模型 Rapid Prototype Model)開發(fā)過程:首先聽取用戶意見和用戶一起確定軟件的目標,然后快速設計建造一個軟件的模型或原型,以用戶看得見的部分,如輸入、輸出、交互界面為主。建造后的軟件原型交由用戶測試并聽取用戶意見,明確先前不明確的東西,在原型的基礎上,再次開發(fā)軟件,然后再把它交給用戶測試評估。如此反復,直到滿足用戶要求。 圖1.4 快速原型模型 無反饋環(huán)的瀑布模型:前期已通過與用戶交互得到驗證, 無需后期的反饋 優(yōu)點: 關注滿足客戶需求。缺點: 快速原型內(nèi)部結構并不重要,重要的是迅速構建原型,并迅速修改,以反應客戶需求?赡軐е孪到y(tǒng)設計差,效率低,難于維護。一旦需求確定,往往快速原型將被拋棄。 1.4.3增量模型(遞增模型) (Incremental Model) 思考:1、需求確定 2、象構造硬件那樣組裝一次完成 增量模型:先完成一個系統(tǒng)子集的開發(fā),再按同樣的開發(fā)步驟增加功能 (系統(tǒng)子集),如此遞增下去直至滿足全部系統(tǒng)需求。 系統(tǒng)的總體設計在初始子集設計階段就應作出設想。 【圖1.6 風險更大的增量模型】 優(yōu)點: 開發(fā)早期反饋及時,易于維護。缺點: 需要非常好的體系結構,如果體系結構不夠強壯可能導致設計差,效率低。 1.4.4 螺旋模型(Sprial Model) 思考:1、需求不確定 2、存在風險 特點: 優(yōu)點: 由風險驅動,支持現(xiàn)有軟件的重用。缺點: 軟件開發(fā)人員應該擅長尋找可能的風險,準確地分析風險,否則將會帶來更大的風險。適用范圍: 只適用于大規(guī)模軟件項目,特別是內(nèi)部項目。 1.4.5 噴泉模型: 主要用于支持面向對象開發(fā)過程。系統(tǒng)某個部分常常重復工作多次,相關對象在每次迭代中隨之加入演進的軟件成分。 1.4.5 噴泉模型: 主要用于支持面向對象開發(fā)過程。在整個開發(fā)過程中都使用統(tǒng)一的軟件概念“對象”,很容易實現(xiàn)各個開發(fā)步驟的多次反復迭代。降低出錯的可能性。 1.4.6 Rational統(tǒng)一過程(RUP):由Rational軟件公司推出。 6條軟件開發(fā)經(jīng)驗: 1、迭代式開發(fā) 2、管理需求 3、使用基于構件的體系結構 4、可視化建模 5、驗證軟件質(zhì)量 6、控制軟件變更 傳統(tǒng)上,組織項目的方法是使其按順序一次完成每個工作流程。 通常會導致在整個分析、設計和實施階段隱藏下來的問題會在隨后的實施階段暴露出來,出現(xiàn)集成“堆積”;隨著較長調(diào)試周期的開始,項目的進度會逐漸停頓下來。 迭代方法:多次執(zhí)行各個開發(fā)工作流程,從而更好地理解需求、設計出強壯的構架、組建好開發(fā)組織并最終交付一系列漸趨完善的實施成果。類似小型的瀑布式項目。 迭代式方法的結果 :信息集隨著各開發(fā)階段逐步演進 適用范圍:不同應用領域,或大或小的項目。 1.5 小結習題 程序是根據(jù)人的需求存在的。人的需求越來越多,程序隨著人的需求一步一步地升級。故障并不是程序本身的問題,只能說明滿足不了人們的需求,那它就要被淘汰,或者進行改進。如果程序早期設計的時候不合理,以后需要修改的時候會相當麻煩,甚至比重寫一個程序更麻煩。 就像建一棟大樓,樓層越高,地基就要打得越深。 所以一定要及早發(fā)現(xiàn)并改正錯誤。 1-5 根據(jù)歷史數(shù)據(jù)可以做出如下的假設:對計算機存儲容量的需求大致按下面公式描述的趨勢逐年增加:M=4080e0.28(Y-1960) (字) 存儲器的價格按下面公式描述的趨勢逐年下降: P1=0.3×0.72Y-1974(美分/位) 如果計算機字長為16位,存儲器價格下降的趨勢為: P2=0.048×0.72Y-1974(美元/字) 上列公式中Y代表年份,M是存儲容量(字數(shù)),P1和P2代表價格。 (3) 假設在1995年存儲器字長為32位,一名程序員每天可開發(fā)出30條指令,程序員的月平均工資為6000美元,重復(1)、(2)題。 1-7 什么是軟件生命周期模型?試比較瀑布模型、快速原型模型、增量模型和螺旋模型的優(yōu)缺點,說明每種模型的適用范圍。 假設你被任命為一家軟件公司的項目負責人,管理該公司被廣泛應用的字處理軟件的新版本開發(fā)。由于市場競爭激烈,公司規(guī)定了嚴格的完成期限并已對外公布。你打算采用哪種軟件生命周期模型?為什么? 答: 首先從時間考慮,由于日期已經(jīng)嚴格規(guī)定,所以應該著重考慮哪種模型有助于加快產(chǎn)品開發(fā)的進度,使用增量模型可以并行開發(fā)工作,能夠加快開發(fā)進度。 由已知可以得出3點結論: 一、舊版本相當于一個原型,通過收集用戶對舊版本的反映,較容易確定對新版本的需求,沒必要再建立一個原型系統(tǒng); 二、該公司的軟件工程師對該軟件很熟悉,有豐富的經(jīng)驗,具有采用增量模型開發(fā)新版字處理軟件所需要的技術水平; 三、該軟件受到用戶的喜愛,今后很可能還要開發(fā)更新的版本,因此,應該把該軟件的體系結構設計成開放式的,利于今后的改進和擴充。 所以應該采用增量模型。 例:Windows2000開發(fā)人員結構: 變換模型:變換模型是一種基于形式化規(guī)格說明語言及程序變換的軟件開發(fā)模型。 該模型只適合于軟件的形式化開發(fā)方法;需要嚴格的數(shù)學理論和形式化技術支持;需要一整套開發(fā)環(huán)境(如程序變換工具、定理證明工具等)的支持。 基于第四代技術的模型:第四代語言 (4GL) 是在大型數(shù)據(jù)庫管理系統(tǒng)的基礎上發(fā)展起來的,是一種面向結果的非過程性語言。它獨立于具體的處理機,有豐富的軟件工具支持,能統(tǒng)一利用和管理各種數(shù)據(jù)資源并能適應不同水平用戶的需要。 軟件開發(fā)人員在定義軟件需求,給出需求規(guī)格說明之后,4GT工具可將該需求規(guī)格說明自動轉換為程序代碼。大大減少了分析、設計、編碼和測試的時間。4Ej紅軟基地

軟件工程基礎ppt:這是軟件工程基礎ppt,包括了軟件需求分析與定義,可行性研究,可行性研究工作步驟,軟件設計,軟件測試,軟件維護,軟件維護的分類,軟件過程管理,類圖等內(nèi)容,歡迎點擊下載。

實用軟件工程ppt:這是實用軟件工程ppt,包括了軟件工程概述,軟件工程的概念,發(fā)展歷程,軟件工程的生命周期,建模的目的等內(nèi)容,歡迎點擊下載。

軟件工程類答辯ppt:這是軟件工程類答辯ppt,包括了系統(tǒng)介紹,研究背景,需求分析,系統(tǒng)設計,系統(tǒng)實現(xiàn),總結,致謝等內(nèi)容,歡迎點擊下載。

PPT分類Classification

Copyright:2009-2024 紅軟網(wǎng) rsdown.cn 聯(lián)系郵箱:rsdown@163.com

湘ICP備2024053236號-1