您好,登錄后才能下訂單哦!
這篇文章主要介紹了java軟件開發生命周期是什么的相關知識,內容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇java軟件開發生命周期是什么文章都會有所收獲,下面我們一起來看看吧。
瀑布模型也稱為生命周期法,是生命周期法中最常用的開發模型,它把軟件開發的過程分為軟件計劃、需求分析、軟件設計、程序編碼、軟件測試和運行維護6個階段,規定了它們自上而下、相互銜接的固定次序,如同瀑布流水,逐級下落。
軟件計劃:主要確定軟件的開發目標及其可行性。
需求分析:在確定軟件開發可行的情況下,對軟件需要實現的各個功能進行詳細分析。需求分析階段是一個很重要的階段,這一階段做得好,將為整個軟件開發項目的成功打下良好的基礎。
軟件設計:主要根據需求分析的結果,對整個軟件系統進行設計,如系統框架設計、數據庫設計等。軟件設計一般分為總體設計(概要設計)和詳細設計。
程序編碼:將軟件設計的結果轉換成計算機可運行的程序代碼。在程序編寫中必須制定統一、符合標準的編寫規范,以保證程序的可讀性,易維護性,提高程序的運行效率。
軟件測試:在軟件設計完成后要經過嚴密的測試,以發現軟件在整個設計過程中存在的問題并加以糾正。在測試過程中需要建立詳細的測試計劃并嚴格按照測試計劃進行測試,以減少測試的隨意性。
軟件維護:軟件維護是軟件生命周期中持續時間最長的階段。在軟件開發完成并投入使用后,由于多方面的原因,軟件不能繼續適應用戶的要求,要延續軟件的使用壽命,就必須對軟件進行維護。
變換模型(演化模型)是在快速開發一個原型的基礎上,根據用戶在調用原型的過程中提出的反饋意見和建議,對原型進行改進,獲得原型的新版本,重復這一過程,直到演化成最終的軟件產品。
螺旋模型將瀑布模型和變換模型相結合,它綜合了兩者的優點,并增加了風險分析。它以原型為基礎,沿著螺線自內向外旋轉,每旋轉一圈都要經過制訂計劃、風險分析、實施工程、客戶評價等活動,并開發原型的一個新版本。經過若干次螺旋上升的過程,得到最終的系統。
噴泉模型對軟件復用和生命周期中多項開發活動的集成提供了支持,主要支持面向對象的開發方法。"噴泉"一詞本身體現了迭代和無間隙特性。系統某個部分常常重復工作多次,相關功能在每次迭代中隨之加入演進的系統。所謂無間隙是指在開發活動中,分析、設計和編碼之間不存在明顯的邊界。
在開發模型中,測試常常作為亡羊補牢的事后行為,但也有以測試為中心的開發模型,那就是V模型。V模型只得到軟件業內比較模糊的認可。V模型宣稱測試并不是一個事后彌補行為,而是一個同開發過程同樣重要的過程。
V模型描述了一些不同的測試級別,并說明了這些級別所對應的生命周期中不同的階段。在圖中,左邊下降的是開發過程各階段,與此相對應的是右邊上升的部分,即測試過程的各個階段。請注意在不同的組織中,對測試階段的命名可能有所不同。V模型的價值在于它非常明確地表明了測試過程中存在的不同級別,并且清楚地描述了這些測試階段和開發過程期間各階段的對應關系:
單元測試的主要目的是針對編碼過程中可能存在的各種錯誤。例如:用戶輸入驗證過程中的邊界值的錯誤。
集成測試的主要目的是針對詳細設計中可能存在的問題,尤其是檢查各單元與其他程序部分之間的接口上可能存在的錯誤。
系統測試主要針對概要設計,檢查系統作為一個整體是否有效地得到運行。例如:在產品設置中是否達到了預期的高性能。
驗收測試通常由業務專家或用戶進行,以確認產品能真正符合用戶業務上的需要。
增量模型像原型實現模型和其他演化方法一樣,本質上是迭代的。但與原型實現不同的是增量模型強調每一個增量均發布一個可操作產品。早期的增量是最終產品的"可拆卸"版本,但它們確實提供了為用戶服務的功能,并且提供了給用戶評估的平臺。增量模型的特點是引進了增量包的概念,無須等到所有需求都出來,只要某個需求的增量包出來即可進行開發。雖然某個增量包可能還需要進一步適應客戶的需求,還需要更改,但只要這個增量包足夠小,其影響對整個項目來說是可以承受的。
快速應用開發(Rapid Application Development,RAD)模型是一個增量型的軟件開發過程模型,強調極短的開發周期。RAD模型是瀑布模型的一個“高速”變種,通過大量使用可復用構件,采用基于構件的建造方法贏得快速開發。如果需求理解得好且約束了項目的范圍,利用這種模型可以很快地創建出功能完善的“信息系統“。其流程從業務建模開始,隨后是數據建模、過程建模、應用生成、測試及反復。采用RAD模型的軟件過程如圖所示。
RAD模型各個活動期所要完成的任務如下。
業務建模:以什么信息驅動業務過程運作?要生成什么信息?誰生成它?信息流的去向是哪里?由誰處理?可以輔之以數據流圖。
數據建模:為支持業務過程的數據流,找數據對象集合,定義數據對象屬性,與其他數據對象的關系構成數據模型,可輔之以E-R圖。
過程建模:使數據對象在信息流中完成各業務功能。創建過程以描述數據對象的增加、修改、刪除、查找,即細化數據流圖中的處理框。
應用程序生成:利用第四代語言(4GL)寫出處理程序,重用已有構件或創建新的可重用構件,利用環境提供的工具自動生成并構造出整個應用系統。
測試與交付,由于大量重用,一般只做總體測試,但新創建的構件還是要測試的。
構件(Component,組件)是一個具有可重用價值的、功能相對獨立的軟件單元。基于構件的軟件開發(Component Based Software Development,CBSD)模型是利用模塊化方法,將整個系統模塊化,并在一定構件模型的支持下,復用構件庫中的一個或多個軟件構件,通過組合手段高效率、高質量地構造應用軟件系統的過程。基于構件的開發模型融合了螺旋模型的許多特征,本質上是演化型的,開發過程是迭代的。基于構件的開發模型由軟件的需求分析和定義、體系結構設計、構件庫建立、應用軟件構建、測試和發布5個階段組成。
軟件原型是所提出的新產品的部分實現,建立原型的主要目的是為了解決在產品開發的早期階段的需求不確定的問題,其目的是明確并完善需求、探索設計選擇方案、發展為最終的產品。原型有很多種分類方法。從原型是否實現功能來分,軟件原型可分為水平原型和垂直原型兩種。水平原型也稱為行為原型,用來探索預期系統的一些特定行為,并達到細化需求的目的。水平原型通常只是功能的導航,但并未真實實現功能。水平原型主要用在界面上。垂直原型也稱為結構化原型,實現了一部分功能。垂直原型主要用在復雜的算法實現上。
XP是一種輕量(敏捷)、高效、低風險、柔性、可預測、科學而且充滿樂趣的軟件開發方式。與其他方法論相比,其最大的不同在于:
在更短的周期內,更早地提供具體、持續的反饋信息。
迭代地進行計劃編制,首先在最開始迅速生成一個總體計劃,然后在整個項目開發過程中不斷地發展它。
依賴于自動測試程序來監控開發進度,并及早地捕獲缺陷。
依賴于口頭交流、測試和源程序進行溝通。
倡導持續的演化式的設計。
依賴于開發團隊內部的緊密協作。
盡可能達到程序員短期利益和項目長期利益的平衡。
RUP(Rational Unified Process)是一個統一的軟件開發過程,是一個通用過程框架,可以應付種類廣泛的軟件系統、不同的應用領域、不同的組織類型、不同的性能水平和不同的項目規模。RUP是基于構件的,這意味著利用它開發的軟件系統是由構件構成的,構件之間通過定義良好的接口相互聯系。在準備軟件系統所有藍圖的時候,RUP使用的是統一建模語言UML.與其他軟件過程相比,RUP具有三個顯著的特點:用例驅動、以基本架構為中心、迭代和增量。RUP中的軟件過程在時間上被分解為四個順序的階段,分別是初始階段、細化階段、構建階段和交付階段。每個階段結束時都要安排一次技術評審,以確定這個階段的目標是否已經滿足。如果評審結果令人滿意,就可以允許項目進入下一個階段。
關于“java軟件開發生命周期是什么”這篇文章的內容就介紹到這里,感謝各位的閱讀!相信大家對“java軟件開發生命周期是什么”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。