軟件工程案例開發(fā)與實踐 第2章 軟件開發(fā)過程概述

軟件工程案例開發(fā)與實踐 第2章 軟件開發(fā)過程概述

ID:46882586

大?。?90.50 KB

頁數(shù):29頁

時間:2019-11-28

軟件工程案例開發(fā)與實踐 第2章 軟件開發(fā)過程概述_第1頁
軟件工程案例開發(fā)與實踐 第2章 軟件開發(fā)過程概述_第2頁
軟件工程案例開發(fā)與實踐 第2章 軟件開發(fā)過程概述_第3頁
軟件工程案例開發(fā)與實踐 第2章 軟件開發(fā)過程概述_第4頁
軟件工程案例開發(fā)與實踐 第2章 軟件開發(fā)過程概述_第5頁
資源描述:

《軟件工程案例開發(fā)與實踐 第2章 軟件開發(fā)過程概述》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。

1、第2章軟件開發(fā)過程概述2.1軟件生命周期軟件生存周期一般劃分為三個階段:(1)問題定義與規(guī)劃;(2)開發(fā)時期;(3)軟件維護時期。2.1.1問題定義與規(guī)劃這個時期的任務(wù)是:(1)確定軟件開發(fā)工程必須完成的總目標;(2)確定工程的可行性;(3)導(dǎo)出實現(xiàn)工程目標應(yīng)該采用的策略及軟件必須具有的功能;(4)估算完成該項開發(fā)工程需要的資源和成本,并且制定工程進度表。2.1.2軟件開發(fā)階段一個軟件的開發(fā)包括四個步驟:(1)需求分析;(2)概要設(shè)計;(3)詳細設(shè)計;(4)編碼和測試。這兩個過程是同步進行的。(5)系統(tǒng)測試2.2軟件開發(fā)方法綜述2.2.1結(jié)構(gòu)化方法結(jié)構(gòu)化開發(fā)方法是由E

2、.Yourdon和L.L.Constantine提出的,即所謂的SASD方法,也可稱為面向功能的軟件開發(fā)方法或面向數(shù)據(jù)流的軟件開發(fā)方法。Yourdon方法是80年代使用最廣泛的軟件開發(fā)方法。它首先用結(jié)構(gòu)化分析(SA)對軟件進行需求分析,然后用結(jié)構(gòu)化設(shè)計(SD)方法進行總體設(shè)計,最后是結(jié)構(gòu)化編程(SP)。它給出了兩類典型的軟件結(jié)構(gòu)(變換型和事務(wù)型)使軟件開發(fā)的成功率大大提高。2.2.2面向數(shù)據(jù)結(jié)構(gòu)的軟件開發(fā)方法Jackson方法是最典型的面向數(shù)據(jù)結(jié)構(gòu)的軟件開發(fā)方法,Jackson方法把問題分解為可由三種基本結(jié)構(gòu)形式表示的各部分的層次結(jié)構(gòu)。三種基本的結(jié)構(gòu)形式就是順序、選擇

3、和重復(fù)。三種數(shù)據(jù)結(jié)構(gòu)可以進行組合,形成復(fù)雜的結(jié)構(gòu)體系。這一方法從目標系統(tǒng)的輸入、輸出數(shù)據(jù)結(jié)構(gòu)入手,導(dǎo)出程序框架結(jié)構(gòu),再補充其它細節(jié),就可得到完整的程序結(jié)構(gòu)圖。2.2.3面向問題的分析法(PAM)面向問題的分析法(PAM,ProblemAnalysisMethod)是80年代末由日立公司提出的一種軟件開發(fā)方法。它的基本思想是考慮到輸入、輸出數(shù)據(jù)結(jié)構(gòu),指導(dǎo)系統(tǒng)的分解,在系統(tǒng)分析指導(dǎo)下逐步綜合。這一方法的具體步驟是:從輸入、輸出數(shù)據(jù)結(jié)構(gòu)導(dǎo)出基本處理框;分析這些處理框之間的先后關(guān)系;按先后關(guān)系逐步綜合處理框,直到畫出整個系統(tǒng)的PAD圖2.2.4面向?qū)ο蟮拈_發(fā)方法面向?qū)ο笙到y(tǒng)采

4、用了自底向上的歸納、自頂向下的分解的方法,它通過對對象模型的建立,能夠真正建立基于用戶的需求,而且系統(tǒng)的可維護性大大改善。當前業(yè)界關(guān)于面向?qū)ο蠼5臉藴适荱ML.2.2.5可視化開發(fā)方法可視化開發(fā)并不能單獨的作為一種開發(fā)方法,更加貼切的說可以認為它是一種輔助工具,比如:S-Design,PowerDesigner,PowerBuilder,VB,DELPHI,C++Builder等。2.3軟件開發(fā)模型2.3.1瀑布模型將軟件生命周期劃分為制定計劃、需求分析、軟件設(shè)計、程序編寫、軟件測試和運行維護等六個基本活動,并且規(guī)定了它們自上而下、相互銜接的固定次序,如同瀑布流水,

5、逐級下落。2.3.2螺旋模型螺旋模型沿著螺線進行若干次迭代,圖2-5中的四個象限代表了以下活動.螺旋模型沿著螺線旋轉(zhuǎn),每個螺旋推進的過程都是漸進的實現(xiàn)過程,整個過程的實現(xiàn),按照”制定計劃、風(fēng)險分析、實施工程和客戶評估”四個步驟循環(huán)實施。(1)制定計劃:確定軟件目標,選定實施方案,弄清項目開發(fā)的限制條件。定義資源、進度及其他相關(guān)項目信息所需要的任務(wù),以調(diào)整項目的目標和改善系統(tǒng)實施的效率。(2)風(fēng)險分析:分析評估所選方案,考慮如何識別和消除風(fēng)險。從風(fēng)險角度分析方案的開發(fā)策略,努力排除各種潛在的風(fēng)險,有時需要通過建造原型來完成。如果某些風(fēng)險不能排除,該方案立即終止,否則啟動

6、下一個開發(fā)步驟?;谏鲜瞿繕?,評估技術(shù)及管理的風(fēng)險,以決定如何實施項目。(3)實施工程:實施軟件開發(fā)和驗證。包括系統(tǒng)需求分析、概要設(shè)計、詳細設(shè)計、編程、單元測試、系統(tǒng)測試和驗證測試等項目具體實施的各種任務(wù)。(4)客戶評估:評價開發(fā)工作,提出修正建議,制定下一步計劃。螺旋模型的缺點是:(1)它可能難以使用戶相信演化方法是可控的;(2)瀑布模型要求在軟件開發(fā)的初期就完全確定軟件的需求,這在很多情況下往往是無法實現(xiàn)的。螺旋模型加入了瀑布模型所忽略的風(fēng)險分析,從而彌補了瀑布模型的不足。螺旋模型也有一定的限制條件,這些限制條件是:1)螺旋模型強調(diào)風(fēng)險分析,但要求許多客戶接受和相

7、信這種分析,并做出相關(guān)反應(yīng)是不容易的,因此,這種模型往往適應(yīng)于內(nèi)部的大規(guī)模軟件開發(fā)。2)如果執(zhí)行風(fēng)險分析將大大影響項目的利潤,那么進行風(fēng)險分析毫無意義,因此,螺旋模型只適合于大規(guī)模軟件項目。3)軟件開發(fā)人員應(yīng)該擅長尋找可能的風(fēng)險,準確地分析風(fēng)險,否則將會帶來更大的風(fēng)險。2.3.3增量模型增量模型和瀑布模型之間的本質(zhì)區(qū)別是:瀑布模型屬于整體開發(fā)模型,它規(guī)定在開始下一個階段的工作之前,必須完成前一階段的所有細節(jié)。而增量模型屬于非整體開發(fā)模型,它推遲某些階段或所有階段中的細節(jié),從而較早的產(chǎn)生工作軟件。增量模型是在項目的開發(fā)過程中以一系列的增量方式開發(fā)系統(tǒng)。

當前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。