h5棋牌平臺源碼搭建QQ1279829431(h5.mostsheng.com)☎17061863554源碼出售平臺出租小程序
1. 邊作邊改模型(Build-and-Fix Model)api
好吧,其實如今許多產品實際都是使用的「邊作邊改」模型來開發的,特別是不少小公司產品週期壓縮的過短。在這種模型中,既沒有規格說明,也沒有通過設計,軟件隨着客戶的須要一次又一次地不斷被修改。測試
在這個模型中,開發人員拿到項目當即根據需求編寫程序,調試經過後生成軟件的第一個版本。在提供給用戶使用後,若是程序出現錯誤,或者用戶提出新的要求,開發人員從新修改代碼,直到用戶和測試等等滿意爲止。ui
這是一種相似做坊的開發方式,邊作邊改模型的優勢毫無疑問就是前期出成效快。設計
對編寫邏輯不須要太嚴謹的小程序來講還能夠對付得過去,但這種方法對任何規模的開發來講都是不能使人滿意的,其主要問題在於:調試
1) 缺乏規劃和設計環節,軟件的結構隨着不斷的修改愈來愈糟,致使沒法繼續修改;生命週期
2) 忽略需求環節,給軟件開發帶來很大的風險;開發
3) 沒有考慮測試和程序的可維護性,也沒有任何文檔,軟件的維護十分困難。文檔
2. 瀑布模型(Waterfall Model)原型
瀑布模型是一種比較老舊的軟件開發模型,1970年溫斯頓·羅伊斯提出了著名的「瀑布模型」,直到80年代都仍是一直被普遍採用的模型。
瀑布模型將軟件生命週期劃分爲制定計劃、需求分析、軟件設計、程序編寫、軟件測試和運行維護等六個基本活動,而且規定了它們自上而下、相互銜接的固定次序,如同瀑布流水,逐級下落。
在瀑布模型中,軟件開發的各項活動嚴格按照線性方式進行,當前活動接受上一項活動的工做結果,實施完成所需的工做內容。當前活動的工做結果須要進行驗證,如驗證經過,則該結果做爲下一項活動的輸入,繼續進行下一項活動,不然返回修改。
瀑布模型優勢是嚴格遵循預先計劃的步驟順序進行,一切循序漸進比較嚴謹。
瀑布模型強調文檔的做用,並要求每一個階段都要仔細驗證。可是,這種模型的線性過程太理想化,已再也不適合現代的軟件開發模式,幾乎被業界拋棄,其主要問題在於:
1) 各個階段的劃分徹底固定,階段之間產生大量的文檔,極大地增長了工做量;
2) 因爲開發模型是線性的,用戶只有等到整個過程的末期才能見到開發成果,從而增長了開發的風險;
3) 早期的錯誤可能要等到開發後期的測試階段才能發現,進而帶來嚴重的後果。
4) 各個軟件生命週期銜接花費時間較長,團隊人員交流成本大。
5) 瀑布式方法在需求不明而且在項目進行過程當中可能變化的狀況下基本是不可行的。
3. 迭代模型(stagewise model)(也被稱做迭代增量式開發或迭代進化式開發)
,是一種與傳統的瀑布式開發相反的軟件開發過程,它彌補了傳統開發方式中的一些弱點,具備更高的成功率和生產率。
在迭代式開發方法中,整個開發工做被組織爲一系列的短小的、固定長度(如3周)的小項目,被稱爲一系列的迭代。每一次迭代都包括了需求分析、設計、實現與測試。採用這種方法,開發工做能夠在需求被完整地肯定以前啓動,並在一次迭代中完成系統的一部分功能或業務邏輯的開發工做。再經過客戶的反饋來細化需求,並開始新一輪的迭代。
教學中,對迭代和版本的區別,可理解以下:
迭代
通常指某版本的生產過程,包括從需求分析到測試完成;
版本
通常指某階段軟件開發的結果,一個可交付使用的產品。
與傳統的瀑布模型相比較,迭代過程具備如下優勢:
1)下降了在一個增量上的開支風險。若是開發人員重複某個迭代,那麼損失只是這一個開發有誤的迭代的花費。
2)下降了產品沒法按照既定進度進入市場的風險。經過在開發早期就肯定風險,能夠儘早來解決而不至於在開發後期匆匆忙忙。
3)加快了整個開發工做的進度。由於開發人員清楚問題的焦點所在,他們的工做會更有效率。
4)因爲用戶的需求並不能在一開始就做出徹底的界定,它們一般是在後續階段中不斷細化的。所以,迭代過程這種模式使適應需求的變化會更容易些。所以複用性更高
4. 快速原型模型(Rapid Prototype Model)
快速原型模型的第一步是建造一個快速原型,實現客戶或將來的用戶與系統的交互,用戶或客戶對原型進行評價,進一步細化待開發軟件的需求。經過逐步調整原型使其知足客戶的要求,開發人員能夠肯定客戶的真正需求是什麼;第二步則在第一步的基礎上開發客戶滿意的軟件產品。
顯然,快速原型方法能夠克服瀑布模型的缺點,減小因爲軟件需求不明確帶來的開發風險,具備顯著的效果。
快速原型的關鍵在於儘量快速地建造出軟件原型,一旦肯定了客戶的真正需求,所建造的原型將被丟棄。所以,原型系統的內部結構並不重要,重要的是必須迅速創建原型,隨之迅速修改原型,以反映客戶的需求。
快速原型模型有點整合「邊作邊改」與「瀑布模型」優勢的意味。