軟件工程模型方法

上傳人:文*** 文檔編號:253151467 上傳時間:2024-11-29 格式:PPT 頁數(shù):49 大?。?95KB
收藏 版權(quán)申訴 舉報 下載
軟件工程模型方法_第1頁
第1頁 / 共49頁
軟件工程模型方法_第2頁
第2頁 / 共49頁
軟件工程模型方法_第3頁
第3頁 / 共49頁

下載文檔到電腦,查找使用更方便

8 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《軟件工程模型方法》由會員分享,可在線閱讀,更多相關(guān)《軟件工程模型方法(49頁珍藏版)》請在裝配圖網(wǎng)上搜索。

1、單擊此處編輯母版標(biāo)題樣式,單擊此處編輯母版文本樣式,第二級,第三級,第四級,第五級,*,單擊此處編輯母版標(biāo)題樣式,單擊此處編輯母版文本樣式,第二級,第三級,第四級,第五級,*,-軟件過程模型,軟件工程,1,軟件過程與軟件過程模型,軟件工程方法,面向功能的方法,面向?qū)ο蠓椒?內(nèi)容提要,2,軟件過程,軟件過程,是指開發(fā)軟件產(chǎn)品的一組活動及其結(jié)果。,即是人們用于開發(fā)和維護軟件及其相關(guān)過程的一系列活動,包括軟件工程活動和軟件管理活動。,3,軟件過程模型,軟件過程模型是從一特定角度提出的,軟件過程的簡化描述,。,“模型的本質(zhì)在于簡化”,軟件過程模型就是對描述的實際過程的抽象,它包括構(gòu)成軟件過程的各種活動

2、、軟件產(chǎn)品及軟件工程人員參與的不同角色。,4,軟件過程模型的分類,以軟件需求完全確定為基礎(chǔ)的瀑布模型;,在開發(fā)初期僅給出基本需求的漸進式模型,如原型模型、螺旋模型、噴泉模型等;,以形式化開發(fā)方法為基礎(chǔ)的變換模型、基于四代技術(shù)的模型(,4G,模型);,基于知識的智能模型等等。,在實際開發(fā)時,應(yīng)根據(jù)項目的特點和現(xiàn)有的條件選取合適的模型,也可以把幾種模型組合起來使用以便充分利用各模型的優(yōu)點。,5,瀑布模型,瀑布模型(waterfall model)是由W.Royce于1970年提出來的。又稱為軟件生存周期模型。,瀑布模型嚴(yán)格按照軟件生存周期各個階段來進行開發(fā),上一階段的輸出即是下一階段的輸入,并強調(diào)

3、每一階段的嚴(yán)格性。它規(guī)定了各階段的任務(wù)和應(yīng)提交的成果及文檔,每一階段的任務(wù)完成后,都必須對其階段性產(chǎn)品(主要是文檔)進行評審,通過后才能開始下一階段的工作。因此,它是一種,以文檔作為驅(qū)動,的模型。,6,瀑布模型,驗收測試,組裝測試,實現(xiàn),詳細設(shè)計,概要設(shè)計,需求分析,退役,可行性研究,使用與維護,特點:,階段間具有順序性和依賴性,推遲實現(xiàn)的觀點,質(zhì)量保證的觀點,7,瀑布模型的優(yōu)點,可強迫開發(fā)人員采用的規(guī)范方法;,嚴(yán)格規(guī)定了每一階段必須提交的文檔;,要求每一階段交付之產(chǎn)品都必須經(jīng)過質(zhì)量保證小組的仔細審查;,清晰區(qū)分了邏輯設(shè)計與物理設(shè)計,盡可能推遲程序的物理實現(xiàn)。,“一種文檔驅(qū)動的模型”,提供了軟

4、件開發(fā)的基本框架,有利于大型軟件開發(fā)過程中人員的組織、管理,有利于軟件開發(fā)方法和工具的研究與使用,因此,在軟件工程中占有重要的地位。,8,瀑布模型的不足,它將項目生硬的分解為確切的階段,委托事項一定要在過程的早期階段清晰給出,這意味著對用戶需求變更響應(yīng)困難。,因為生成和確認文檔成本很高且很費時,因此經(jīng)過少量的反復(fù)后,要凍結(jié)部分開發(fā)過程,繼續(xù)進行后面的開發(fā)階段。這種對需求的凍結(jié)使需求相當(dāng)不成熟,系統(tǒng)不能滿足用戶需求。,作為整體開發(fā)的瀑布模型,由于不支持產(chǎn)品的演化,缺乏靈活性,對開發(fā)過程中很難發(fā)現(xiàn)錯誤,只有在最終產(chǎn)品運行時才能暴露出來,從而使軟件產(chǎn)品難以維護。,9,瀑布模型的適應(yīng)場合,瀑布模型一般

5、適用于功能、性能明確、完整、無重大變化的軟件系統(tǒng)的開發(fā)。例如操作系統(tǒng)、編譯系統(tǒng)、數(shù)據(jù)庫管理系統(tǒng)等系統(tǒng)軟件的開發(fā)。應(yīng)用有一定的局限性。,10,原型模型,原型模型(prototyping model)的基本框架是,軟件開發(fā)人員根據(jù)用戶提出的軟件基本需求快速開發(fā)一個原型,,以便向用戶展示軟件系統(tǒng)應(yīng)有的部分或全部功能和性能,在征求用戶對原型的評價意見后,進一步使需求精確化、完全化,并據(jù)此改進、完善原型,如此迭代,直到軟件開發(fā)人員和用戶都確認軟件系統(tǒng)的需求并達成一致的理解為止。軟件需求確定后,便可進行設(shè)計,編碼、測試等以后的各個開發(fā)步驟。,11,快速原型方法,建造/修改原型,用戶測試,運行原型,聽取用戶

6、意見,12,初步需求,分析,快速設(shè)計,建造原型,用戶評估原,型(新需求),對原型加工,開發(fā)產(chǎn)品,開始,結(jié)束,用戶,/,客戶給出軟件產(chǎn)品的一般需求,開發(fā)小組和用戶共同定義軟件總體目標(biāo),標(biāo)識已知需求,對界面、功能、人機交互方式等,進行設(shè)計并建造原型,強調(diào)“快速”,釆用基于構(gòu)件的軟件開發(fā)方法,盡量縮短軟件開發(fā)周期,不宜釆用過多的新技術(shù),用戶,/,客戶對原型進行評估,修改需求、更新設(shè)計、完善原型直至確定需求。,原型模型示意圖,13,快速原型的開發(fā)途徑,僅模擬軟件系統(tǒng)的人機界面和人機交互方式。,開發(fā)一個工作模型,實現(xiàn)軟件系統(tǒng)中重要的或容易產(chǎn)生誤解的功能。,利用一個或幾個類似的正在運行的軟件向用戶展示軟件

7、需求中的部分或全部功能。,建造原型應(yīng)盡量采用相應(yīng)的軟件工具和環(huán)境,并盡量采用軟件重用技術(shù),在運行效率方面可做出讓步,以便盡快提供。同時,原型應(yīng)充分展示軟件系統(tǒng)的可見部分,如人機界面、數(shù)據(jù)的輸入方式和輸出格式等。,14,采用原型模型的軟件生命周期,生成,原型,測試,分析定義,系統(tǒng)需求,系統(tǒng),設(shè)計,程序,設(shè)計,含原型化的,軟件生存期,原型化,運 行,和維護,編碼,15,原型模型的優(yōu)點,原型模型比瀑布模型更符合人們認識事物的過程和規(guī)律,是一種較實用的開發(fā)框架。,它產(chǎn)生的正式需求文擋,是軟件開發(fā)的基礎(chǔ)。,如果開發(fā)的原型是可運行的,它的若干高質(zhì)量的程序片段和開發(fā)工具可用于工作程序的開發(fā)。,原型的開發(fā)和評

8、審是系統(tǒng)分析員和用戶,/,客戶共同參予的迭代過程,每個迭代循環(huán)都是線性過程。,16,原型模型的缺點,對于大型軟件項目,原型模型需要足夠的人力資源以建立足夠的原型組。,原型模型要求,開發(fā)者,和,客戶,在一段時間內(nèi),共同完成原型系統(tǒng)的開發(fā),,如果任何一方?jīng)]有實現(xiàn)承諾,會導(dǎo)致原型開發(fā)的失敗。,如果系統(tǒng)難以模塊化,建造原型所需構(gòu)件就有問題;如果高性能是一個指標(biāo),原型模型也可能不奏效。,原型模型不適合采用很多新技術(shù)的項目。,17,原型模型的適應(yīng)場合,它適合于那些不能預(yù)先確切定義需求的軟件系統(tǒng)的開發(fā),更適合于那些項目組成員(包括分析員、設(shè)計員、程序員和用戶)不能很好交流或通信有困難的情況。,18,螺旋模型

9、,螺旋模型(spiral model)是B.Boehm于1988年提出的。它綜合了瀑布模型和原型模型的優(yōu)點,即將兩者結(jié)合,并加入了風(fēng)險分析機制。螺旋模型的基本框架如圖:,19,螺旋模型,第一圈 產(chǎn)生產(chǎn)品規(guī)格說明,第二圈 產(chǎn)生一個用于開發(fā)的原型,第三圈 產(chǎn)生軟件產(chǎn)品的初始版本,第四圈 產(chǎn)生軟件產(chǎn)品比較完善的新版本,原型1,原型2,原型3,風(fēng)險,分析,風(fēng)險分析,風(fēng)險分析,風(fēng)險分析,操作原型,評審,需求計劃和生,存周期計劃,操作的概念,軟件需求,需求有效,性驗證,預(yù)估可選方案,,明,確并解決風(fēng)險,驗收測試計劃,組裝測試計劃,規(guī)劃下階段工作,設(shè)計驗證,與確認,產(chǎn)品,設(shè)計,詳細設(shè)計,編碼,單元,測試,組

10、裝,測試,驗收,測試,運行,維護,開發(fā)驗證下一級產(chǎn)品,對目標(biāo)、,可選方,案和約束的確定,提交線,制定計劃,風(fēng)險分析,實施工程,客戶評估,建模,模擬,評價,需求評價,需求精化計劃,開發(fā)計劃,實現(xiàn)計劃,順時針為進展方向,20,螺旋模型,螺旋模型的每一個周期都包括計劃(需求定義)、風(fēng)險分析、工程實現(xiàn)和評審4個階段。,1)計劃(需求定義),首先開始利用需求分析技術(shù)理解應(yīng)用領(lǐng)域,獲取初步用戶需求,制定項目開發(fā)計劃(即整個軟件生命周期計劃)和需求分析計劃。然后根據(jù)用戶和開發(fā)人員對上一周期工作成果評價和評審,修改、完善需求,明確下一周期軟件開發(fā)的目標(biāo)、約束條件,并據(jù)此制定新一輪的軟件開發(fā)計劃。,21,螺旋模

11、型,2)風(fēng)險分析,根據(jù)本輪制定的開發(fā)計劃,進行風(fēng)險分析,評估可選方案,并構(gòu)造原型進一步分析風(fēng)險,給出消除或減少風(fēng)險的途徑。此時根據(jù)風(fēng)險分析的結(jié)果決策項目是否繼續(xù)。所以,螺旋模型是一個,風(fēng)險驅(qū)動,的模型。,3)工程實現(xiàn),利用構(gòu)造的原型進行需求建?;蜻M行系統(tǒng)模擬,直至實現(xiàn)軟件系統(tǒng)。,22,螺旋模型,4)用戶評價與階段評審,將原型提交用戶使用并征求改進意見。開發(fā)人員應(yīng)在用戶的密切配合下進一步完善用戶需求,直到用戶認為原型可滿足需求,或?qū)浖a(chǎn)品設(shè)計進行評價或確認等。,螺旋模型從第一個周期的計劃開始,一個周期、一個周期地不斷迭代,直到整個軟件系統(tǒng)開發(fā)完成。,23,螺旋模型的優(yōu)點,支持用戶需求的,動態(tài)變

12、化,。支持軟件系統(tǒng)的,可維護性,,每次維護過程只是沿螺旋模型繼續(xù)多走一兩個周期。,這符合人們認識現(xiàn)實世界和軟件開發(fā)的客觀規(guī)律,。,原型可看作形式的,可執(zhí)行的需求規(guī)格說明,,易于為用戶和開發(fā)人員共同理解,還可作為繼續(xù)開發(fā)的基礎(chǔ),并為用戶參與所有關(guān)鍵決策提供了方便。,開發(fā)者和用戶共同參與軟件開發(fā),可盡早發(fā)現(xiàn)軟件中的錯誤,。,螺旋模型特別強調(diào)原型的可擴充性和可修改性,,原型的進化貫穿整個軟件生存周期,,這將有助于目標(biāo)軟件的適應(yīng)能力。,既保持瀑布模型的系統(tǒng)性、階段性,又可利用原型評估降低開發(fā)風(fēng)險,。,螺旋模型為項目管理人員及時調(diào)整管理決策提供了方便,進而可降低開發(fā)風(fēng)險。,24,螺旋模型的缺點,如果每次

13、迭代的效率不高,致使迭代次數(shù)過多,將會增加成本并推遲提交時間;,使用該模型需要有相當(dāng)豐富的風(fēng)險評估經(jīng)驗和專門知識,要求開發(fā)隊伍水平較高。,25,螺旋模型適應(yīng)場合,支持需求不明確、特別是大型軟件系統(tǒng)的開發(fā),并支持面向規(guī)格說明、面向過程、面向?qū)ο蟮榷喾N軟件開發(fā)方法,是一種具有廣闊前景的模型。,26,變換模型,變換模型是基于形式化規(guī)格說明語言以及程序變換技術(shù)的軟件系統(tǒng)開發(fā)模型,它主要用于軟件的形式化開發(fā)方法。,在軟件需求分析確定以后,便用形式化的規(guī)格說明語言將其描述為“形式化軟件規(guī)格說明”,然后對其進行一系列自動或半自動的變換,最終得到軟件系統(tǒng)的目標(biāo)程序。,27,變換模型,形式化軟件規(guī),格說明(M,

14、0,),模型檢查,需求分析,形式化軟件設(shè),計說明(M,1,),(M,2,),目標(biāo)程序(M),變換,28,變換模型,變換模型也應(yīng)引入迭代機制。即將第一次用變換模型得來的目標(biāo)程序作為“原型”,讓用戶評價,以便使用戶需求精確化、完全化,再把精化后的需求作為輸入,第二次用變換模型進行變換,等等。,以形式化開發(fā)方法為基礎(chǔ)的變換模型需要邏輯、代數(shù)等嚴(yán)格的數(shù)學(xué)理論和諸如形式化的需求規(guī)格說明語言、程序變換工具、定理證明工具等一整套開發(fā)環(huán)境的支持。,形式化開發(fā)方法提出的比較早,但到目前為止,其在理論和實踐等方面離工程實際應(yīng)用還有較長一段距離。,29,噴泉模型,噴泉模型是近幾年提出來的軟件生存周期模型。它是以面向

15、對象的軟件開發(fā)方法為基礎(chǔ),以用戶需求為動力,以,對象來驅(qū)動,的模型。,維 護,測 試,實 現(xiàn),設(shè) 計,分 析,30,噴泉模型的特點,軟件系統(tǒng)可維護性較好;,各階段相互重疊,表明了面向?qū)ο箝_發(fā)方法各階段間的交叉和無縫過渡;,整個模型是一個迭代的過程,包括一個階段內(nèi)部的迭代和跨階段的迭代;,模型具有增量開發(fā)特性,即能做到分析一點、設(shè)計一點、實現(xiàn)一點,測試一點,使相關(guān)功能隨之加入到演化的系統(tǒng)中。,模型是對象驅(qū)動的,對象是各階段活動的主體,也是項目管理的基本內(nèi)容。,該模型很自然地支持軟部件的重用。,31,軟件工程方法,軟件工程方法是完成軟件工程項目的技術(shù)手段。它支持軟件開發(fā)與維護的全部過程。,軟件工程

16、方法劃分為:,面向功能的方法,結(jié)構(gòu)化分析方法,Jackson,方法,Warnier,方法,面向?qū)ο蠓椒?UML,軟件工程方法是軟件開發(fā)的結(jié)構(gòu)化方法,軟件工程過程是方法的使用活動,32,結(jié)構(gòu)化分析方法,一種面向數(shù)據(jù)流的開發(fā)方法。圖形表示方法為數(shù)據(jù)流圖,(DFD),和模塊層次結(jié)構(gòu)圖,(SC),。,現(xiàn)有的軟件開發(fā)方法中最成熟,應(yīng)用最廣泛的方法,主要特點是快速,自然和方便。,結(jié)構(gòu)化方法總的指導(dǎo)思想自頂向下、逐步求精,分解成若干個具有合適大小和功能的模塊并對各個模塊進行定義和描述,其實質(zhì)就是功能分解和抽象。,33,結(jié)構(gòu)化方法的發(fā)展,70,年代初 結(jié)構(gòu)化程序設(shè)計方法,SP,法,(Structured Program),70,年代中 結(jié)構(gòu)化設(shè)計方法,SD,法,(Structured Design),70,年代末 結(jié)構(gòu)化分析方法,SA,法,(Structured Analysis),SA,,,SD,,,SP,法相互銜接,形成了一整套開發(fā)方法。若將,SA,,,SD,法結(jié)合起來,又稱為結(jié)構(gòu)化分析與設(shè)計技術(shù),即,SDAT,技術(shù)。,34,Jackson方法,Jackson,方法是最典型的面向數(shù)據(jù)結(jié)構(gòu)的設(shè)計方法

展開閱讀全文
溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔

相關(guān)搜索

關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!

五月丁香婷婷狠狠色,亚洲日韩欧美精品久久久不卡,欧美日韩国产黄片三级,手机在线观看成人国产亚洲