国产啪视频1000部免费视频_本年度最佳→偷自拍日韩精品蜜月_亚洲尤物在线观看_成人国产精品视频网站_亚洲成a人片在线观_天天看片在线无码免费_免费日韩一区二区_国产精品久久亚洲高潮野花社喷水_再深点灬舒服灬太大了av_中文字幕无码一级麻豆精品国产综合.

軟件開發(fā)模式簡介

發(fā)布時(shí)間:2020-08-27 14:38:35

1. 邊做邊改模型(Build-and-Fix Model)

  好吧,其完結(jié)在許多產(chǎn)品實(shí)踐都是運(yùn)用的“邊做邊改”模型來開發(fā)的,特別是很多小公司產(chǎn)品周期壓縮的太短。在這種模型中,既沒有標(biāo)準(zhǔn)說明,也沒有經(jīng)過規(guī)劃,軟件隨著客戶的需要一次又一次地不斷被修正。

  在這個(gè)模型中,開發(fā)人員拿到項(xiàng)目當(dāng)即依據(jù)需求編寫程序,調(diào)試經(jīng)過后生成軟件的第一個(gè)版別。在提供給用戶運(yùn)用后,假如程序出現(xiàn)過錯(cuò),或許用戶提出新的要求,開發(fā)人員重新修正代碼,直到用戶和測驗(yàn)等等滿足停止。

  這是一種相似作坊的開發(fā)方式,邊做邊改模型的長處毫無疑問就是前期出成效快。

  對編寫邏輯不需要太嚴(yán)謹(jǐn)?shù)男〕绦騺碚f還能夠?qū)Ω兜眠^去,但這種方法對任何規(guī)劃的開發(fā)來說都是不能令人滿足的,其首要問題在于:

  1) 缺少規(guī)劃和規(guī)劃環(huán)節(jié),軟件的結(jié)構(gòu)隨著不斷的修正越來越糟,導(dǎo)致無法持續(xù)修正;

  2) 疏忽需求環(huán)節(jié),給軟件開發(fā)帶來很大的危險(xiǎn);

  3) 沒有考慮測驗(yàn)和程序的可保護(hù)性,也沒有任何文檔,軟件的保護(hù)十分困難。


2. 瀑布模型(Waterfall Model)

  瀑布模型是一種比較老舊的軟件開發(fā)模型,1970年溫斯頓·羅伊斯提出了著名的“瀑布模型”,直到80年代都還是一直被廣泛采用的模型。

  瀑布模型將軟件生命周期區(qū)分為擬定計(jì)劃、需求剖析、軟件規(guī)劃、程序編寫、軟件測驗(yàn)和運(yùn)轉(zhuǎn)保護(hù)等六個(gè)根本活動(dòng),并且規(guī)定了它們自上而下、彼此聯(lián)接的固定次序,如同瀑布流水,逐級下落。

  在瀑布模型中,軟件開發(fā)的各項(xiàng)活動(dòng)嚴(yán)厲依照線性方式進(jìn)行,當(dāng)時(shí)活動(dòng)承受上一項(xiàng)活動(dòng)的作業(yè)效果,施行完結(jié)所需的作業(yè)內(nèi)容。當(dāng)時(shí)活動(dòng)的作業(yè)效果需要進(jìn)行驗(yàn)證,如驗(yàn)證經(jīng)過,則該效果作為下一項(xiàng)活動(dòng)的輸入,持續(xù)進(jìn)行下一項(xiàng)活動(dòng),否則返回修正。

  瀑布模型長處是嚴(yán)厲遵循預(yù)先計(jì)劃的進(jìn)程次序進(jìn)行,一切按部就班比較嚴(yán)謹(jǐn)。

  瀑布模型著重文檔的作用,并要求每個(gè)階段都要細(xì)心驗(yàn)證。但是,這種模型的線性進(jìn)程太理想化,已不再合適現(xiàn)代的軟件開發(fā)形式,簡直被業(yè)界拋棄,其首要問題在于:

  1) 各個(gè)階段的區(qū)分徹底固定,階段之間產(chǎn)生很多的文檔,極大地添加了作業(yè)量;

  2) 因?yàn)殚_發(fā)模型是線性的,用戶只有比及整個(gè)進(jìn)程的末期才能見到開發(fā)效果,然后添加了開發(fā)的危險(xiǎn);

  3) 早期的過錯(cuò)可能要比及開發(fā)后期的測驗(yàn)階段才能發(fā)現(xiàn),進(jìn)而帶來嚴(yán)重的效果。

  4) 各個(gè)軟件生命周期聯(lián)接花費(fèi)時(shí)間較長,團(tuán)隊(duì)人員溝通本錢大。

  5) 瀑布式方法在需求不明并且在項(xiàng)目進(jìn)行進(jìn)程中可能改變的情況下根本是不可行的。


3. 迭代模型(stagewise model)(也被稱作迭代增量式開發(fā)或迭代進(jìn)化式開發(fā))

  是一種與傳統(tǒng)的瀑布式開發(fā)相反的軟件開發(fā)進(jìn)程,它彌補(bǔ)了傳統(tǒng)開發(fā)方式中的一些缺點(diǎn),具有更高的成功率和生產(chǎn)率。

  在迭代式開發(fā)方法中,整個(gè)開發(fā)作業(yè)被組織為一系列的矮小的、固定長度(如3周)的小項(xiàng)目,被稱為一系列的迭代。每一次迭代都包含了需求剖析、規(guī)劃、完結(jié)與測驗(yàn)。采用這種方法,開發(fā)作業(yè)能夠在需求被完好地確認(rèn)之前發(fā)動(dòng),并在一次迭代中完結(jié)體系的一部分功用或業(yè)務(wù)邏輯的開發(fā)作業(yè)。再經(jīng)過客戶的反應(yīng)來細(xì)化需求,并開始新一輪的迭代。

  教育中,對迭代和版別的區(qū)別,可理解如下: 迭代一般指某版別的生產(chǎn)進(jìn)程,包含從需求剖析到測驗(yàn)完結(jié); 版別一般指某階段軟件開發(fā)的效果,一個(gè)可交給運(yùn)用的產(chǎn)品。

  與傳統(tǒng)的瀑布模型相比較,迭代進(jìn)程具有以下長處:

  1)降低了在一個(gè)增量上的開支危險(xiǎn)。假如開發(fā)人員重復(fù)某個(gè)迭代,那么損失僅僅這一個(gè)開發(fā)有誤的迭代的花費(fèi)。

  2)降低了產(chǎn)品無法依照既定進(jìn)展進(jìn)入市場的危險(xiǎn)。經(jīng)過在開發(fā)早期就確認(rèn)危險(xiǎn),能夠盡早來處理而不至于在開發(fā)后期匆匆忙忙。

  3)加快了整個(gè)開發(fā)作業(yè)的進(jìn)展。因?yàn)殚_發(fā)人員清楚問題的焦點(diǎn)地點(diǎn),他們的作業(yè)會(huì)更有用率。

  4)因?yàn)橛脩舻男枨蟛⒉荒茉谝婚_始就作出徹底的界定,它們通常是在后續(xù)階段中不斷細(xì)化的。因而,迭代進(jìn)程這種形式使習(xí)慣需求的改變會(huì)更簡單些。因而復(fù)用性更高


4. 快速原型模型(Rapid Prototype Model)

  快速原型模型的第一步是制作一個(gè)快速原型,完結(jié)客戶或未來的用戶與體系的交互,用戶或客戶對原型進(jìn)行點(diǎn)評,進(jìn)一步細(xì)化待開發(fā)軟件的需求。經(jīng)過逐步調(diào)整原型使其滿足客戶的要求,開發(fā)人員能夠確認(rèn)客戶的真實(shí)需求是什么;第二步則在第一步的基礎(chǔ)上開發(fā)客戶滿足的軟件產(chǎn)品。

  顯然,快速原型方法能夠戰(zhàn)勝瀑布模型的缺點(diǎn),削減因?yàn)檐浖枨蟛幻鞔_帶來的開發(fā)危險(xiǎn),具有明顯的作用。

  快速原型的關(guān)鍵在于盡可能快速地制作出軟件原型,一旦確認(rèn)了客戶的真實(shí)需求,所制作的原型將被丟棄。因而,原型體系的內(nèi)部結(jié)構(gòu)并不重要,重要的是有必要靈敏建立原型,隨之靈敏修正原型,以反映客戶的需求。

  快速原型模型有點(diǎn)整合“邊做邊改”與“瀑布模型”長處的意味。


5、增量模型(Incremental Model)

  與制作大廈相同,軟件也是一步一步制作起來的。在增量模型中,軟件被作為一系列的增量構(gòu)件來規(guī)劃、完結(jié)、集成和測驗(yàn),每一個(gè)構(gòu)件是由多種彼此作用的模塊所形成的提供特定功用的代碼片段構(gòu)成。

  增量模型在各個(gè)階段并不交給一個(gè)可運(yùn)轉(zhuǎn)的完好產(chǎn)品,而是交給滿足客戶需求的一個(gè)子集的可運(yùn)轉(zhuǎn)產(chǎn)品。整個(gè)產(chǎn)品被分解成若干個(gè)構(gòu)件,開發(fā)人員逐個(gè)構(gòu)件地交給產(chǎn)品,這樣做的好處是軟件開發(fā)能夠較好地習(xí)慣改變,客戶能夠不斷地看到所開發(fā)的軟件,然后降低開發(fā)危險(xiǎn)。但是,增量模型也存在以下缺點(diǎn):

  1) 因?yàn)楦鱾€(gè)構(gòu)件是逐步并入已有的軟件體系結(jié)構(gòu)中的,所以加入構(gòu)件有必要不損壞已結(jié)構(gòu)好的體系部分,這需要軟件具有開放式的體系結(jié)構(gòu)。

  2) 在開發(fā)進(jìn)程中,需求的改變是不可避免的。增量模型的靈活性能夠使其習(xí)慣這種改變的才能大大優(yōu)于瀑布模型和快速原型模型,但也很簡單退化為邊做邊改模型,然后是軟件進(jìn)程的操控失去整體性。

  在運(yùn)用增量模型時(shí),第一個(gè)增量往往是完結(jié)根本需求的中心產(chǎn)品。中心產(chǎn)品交給用戶運(yùn)用后,經(jīng)過點(diǎn)評形成下一個(gè)增量的開發(fā)計(jì)劃,它包含對中心產(chǎn)品的修正和一些新功用的發(fā)布。這個(gè)進(jìn)程在每個(gè)增量發(fā)布后不斷重復(fù),直到產(chǎn)生終究的完善產(chǎn)品。

  例如,運(yùn)用增量模型開發(fā)字處理軟件。能夠考慮,第一個(gè)增量發(fā)布根本的文件辦理、修改和文檔生成功用,第二個(gè)增量發(fā)布愈加完善的修改和文檔生成功用,第三個(gè)增量完結(jié)拼寫和文法查看功用,第四個(gè)增量完結(jié)高檔的頁面布局功用。


6. 螺旋模型(Spiral Model)

  1988年,巴利·玻姆(Barry Boehm)正式宣布了軟件體系開發(fā)的“螺旋模型”,它將瀑布模型和快速原型模型結(jié)合起來,著重了其他模型所忽視的危險(xiǎn)剖析,特別合適于大型雜亂的體系。

  螺旋模型沿著螺線進(jìn)行若干次迭代,圖中的四個(gè)象限代表了以下活動(dòng):

  1) 擬定計(jì)劃:確認(rèn)軟件方針,選定施行計(jì)劃,澄清項(xiàng)目開發(fā)的約束條件;

  2) 危險(xiǎn)剖析:剖析評價(jià)所選計(jì)劃,考慮怎么辨認(rèn)和消除危險(xiǎn);

  3) 施行工程:施行軟件開發(fā)和驗(yàn)證;

  4) 客戶評價(jià):點(diǎn)評開發(fā)作業(yè),提出修正建議,擬定下一步計(jì)劃。

  螺旋模型由危險(xiǎn)驅(qū)動(dòng),著重可選計(jì)劃和約束條件然后支撐軟件的重用,有助于將軟件質(zhì)量作為特殊方針融入產(chǎn)品開發(fā)之中。但是,螺旋模型也有必定的約束條件,詳細(xì)如下:

  1) 螺旋模型著重危險(xiǎn)剖析,但要求許多客戶承受和信任這種剖析,并做出相關(guān)反應(yīng)是不簡單的,因而,這種模型往往習(xí)慣于內(nèi)部的大規(guī)劃軟件開發(fā)。

  2) 假如履行危險(xiǎn)剖析將大大影響項(xiàng)意圖利潤,那么進(jìn)行危險(xiǎn)剖析毫無意義,因而,螺旋模型只合適于大規(guī)劃軟件項(xiàng)目。

  3) 軟件開發(fā)人員應(yīng)該拿手尋找可能的危險(xiǎn),準(zhǔn)確地剖析危險(xiǎn),否則將會(huì)帶來更大的危險(xiǎn)

  一個(gè)階段首要是確認(rèn)該階段的方針,完結(jié)這些方針的選擇計(jì)劃及其約束條件,然后從危險(xiǎn)視點(diǎn)剖析計(jì)劃的開發(fā)戰(zhàn)略,努力掃除各種潛在的危險(xiǎn),有時(shí)需要經(jīng)過制作原型來完結(jié)。假如某些危險(xiǎn)不能掃除,該計(jì)劃當(dāng)即終止,否則發(fā)動(dòng)下一個(gè)開發(fā)進(jìn)程。終究,點(diǎn)評該階段的效果,并規(guī)劃下一個(gè)階段。


7. 靈敏軟件開發(fā) (Agile development)

  靈敏開發(fā)是一種以人為中心、迭代、循序漸進(jìn)的開發(fā)方法。在靈敏開發(fā)中,軟件項(xiàng)意圖構(gòu)建被切分紅多個(gè)子項(xiàng)目,各個(gè)子項(xiàng)意圖效果都經(jīng)過測驗(yàn),具有集成和可運(yùn)轉(zhuǎn)的特征。換言之,就是把一個(gè)大項(xiàng)目分為多個(gè)彼此聯(lián)系,但也可獨(dú)立運(yùn)轉(zhuǎn)的小項(xiàng)目,并分別完結(jié),在此進(jìn)程中軟件一直處于可運(yùn)用狀況。

  靈敏開發(fā)小組首要的作業(yè)方式能夠歸納為:作為一個(gè)整體作業(yè); 按短迭代周期作業(yè); 每次迭代交給一些效果,重視業(yè)務(wù)優(yōu)先級,查看與調(diào)整。

  靈敏軟件開發(fā)要注意項(xiàng)目規(guī)劃,規(guī)劃增長,團(tuán)隊(duì)溝通本錢就上去了,因而靈敏軟件開發(fā)暫時(shí)合適不是特別大的團(tuán)隊(duì)開發(fā),比較合適一個(gè)組的團(tuán)隊(duì)運(yùn)用。


8. 演化模型(evolutionary model)

  首要針對事先不能完好界說需求的軟件開發(fā)。用戶能夠給出待開發(fā)體系的中心需求,并且當(dāng)看到中心需求完結(jié)后,能夠有用地提出反應(yīng),以支撐體系的終究規(guī)劃和完結(jié)。軟件開發(fā)人員依據(jù)用戶的需求,首要開發(fā)中心體系。當(dāng)該中心體系投入運(yùn)轉(zhuǎn)后,用戶試用之,完結(jié)他們的作業(yè),并提出精化體系、增強(qiáng)體系才能的需求。軟件開發(fā)人員依據(jù)用戶的反應(yīng),施行開發(fā)的迭代進(jìn)程。第一迭代進(jìn)程均由需求、規(guī)劃、編碼、測驗(yàn)、集成等階段組成,為整個(gè)體系添加一個(gè)可界說的、可辦理的子集。

  在開發(fā)形式上采納分批循環(huán)開發(fā)的方法,每循環(huán)開發(fā)一部分的功用,它們成為這個(gè)產(chǎn)品的原型的新增功用。于是,規(guī)劃就不斷地演化出新的體系。 實(shí)踐上,這個(gè)模型可看作是重復(fù)履行的多個(gè)“瀑布模型”。

  “演化模型”要求開發(fā)人員有才能把項(xiàng)意圖產(chǎn)品需求分解為不同組,以便分批循環(huán)開發(fā)。這種分組并不是肯定隨意性的,而是要依據(jù)功用的重要性及對總體規(guī)劃的基礎(chǔ)結(jié)構(gòu)的影響而作出判斷。有經(jīng)驗(yàn)指出,每個(gè)開發(fā)循環(huán)以六周到八周為恰當(dāng)?shù)拈L度。


9. 噴泉模型(fountain model, (面向?qū)ο蟮纳?jì)期模型, 面向?qū)ο螅∣bject Oriented,OO)模型))

  噴泉模型與傳統(tǒng)的結(jié)構(gòu)化生計(jì)期比較,具有更多的增量和迭代性質(zhì),生計(jì)期的各個(gè)階段能夠彼此重疊和屢次反復(fù),并且在項(xiàng)意圖整個(gè)生計(jì)期中還能夠嵌入子生計(jì)期。就像水噴上去又能夠落下來,能夠落在中心,也能夠落在最底部。


10. 智能模型(四代技能(4GL))

  智能模型擁有一組工具(如數(shù)據(jù)查詢、報(bào)表生成、數(shù)據(jù)處理、屏幕界說、代碼生成、高層圖形功用及電子表格等),每個(gè)工具都能使開發(fā)人員在高層次上界說軟件的某些特性,并把開發(fā)人員界說的這些軟件自動(dòng)地生成為源代碼。這種方法需要四代語言(4GL)的支撐。4GL不同于三代語言,其首要特征是用戶界面極點(diǎn)友愛,即便沒有受過練習(xí)的非專業(yè)程序員,也能用它編寫程序;它是一種聲明式、交互式和非進(jìn)程性編程語言。4GL還具有高效的程序代碼、智能缺省假定、完備的數(shù)據(jù)庫和應(yīng)用程序生成器?,F(xiàn)在市場上盛行的4GL(如Foxpro等)都不同程度地具有上述特征。但4GL現(xiàn)在首要限于業(yè)務(wù)信息體系的中、小型應(yīng)用程序的開發(fā)。


11. 混合模型(hybrid model)

  進(jìn)程開發(fā)模型又叫混合模型(hybrid model),或元模型(meta-model),把幾種不同模型組合成一種混合模型,它答應(yīng)一個(gè)項(xiàng)目能沿著最有用的途徑發(fā)展,這就是進(jìn)程開發(fā)模型(或混合模型)。實(shí)踐上,一些軟件開發(fā)單位都是運(yùn)用幾種不同的開發(fā)方法組成他們自己的混合模型。




服務(wù)熱線:4006068008 0531-85860101 15589999555郵箱:zlxk@zlxk.com地址:山東省濟(jì)南市高新區(qū)鑫盛大廈2號樓24層

Copyright 2023,ALL Rights Reserved zlxk.com | | (c) Copyright 2024版權(quán)所有 魯ICP備20032954號-1網(wǎng)站地圖