當前位置:吉日网官网 - 傳統節日 - 軟件過程模型的過程模型

軟件過程模型的過程模型

它有時被稱為傳統的生命周期模型或瀑布模型。它提出了壹種系統的、順序的軟件開發方法。其流程從系統開始,接著是需求分析、設計、編碼、測試和支持。這種模型是最早也是應用最廣泛的軟件過程模型(雖然這種模型會造成“阻塞狀態”)。

缺點:

1,實際項目大多很難按照這個模型給定的順序進行,而且這個模型的叠代是間接的,容易因小變大。

2.客戶往往很難表達自己的真實需求,但這種模式需要。這種模式不歡迎模棱兩可問題的存在。

3.客戶要到開發周期的後期才能看到程序的測試版本,而此時發現大的錯誤,可能會引起客戶的恐慌,後果可能是災難性的。

4.使用這種線性模型,我們通常會等待其他成員在流程開始和結束時完成他們所依賴的任務,然後再繼續,這可能比開發時間更長。我們稱之為“阻塞狀態”。

優勢:

1,它提供了壹個模板,使得分析、設計、編碼、測試和支持的方法在觸摸面板下有壹個* * *指導。

2.雖然有很多缺陷,但比軟件開發中的隨機狀態要好很多。從需求收集開始,開發人員和客戶壹起定義軟件的總體目標,確定已知的需求並計劃需要進壹步定義的領域。然後是“快速設計”,它專註於對客戶可見的軟件部分的表示,這將導致原型的創建,客戶將評估並進壹步細化待開發軟件的需求。逐步調整原型以滿足客戶需求的過程是叠代的。這個過程從聽取客戶的意見開始,然後是構建/修改原型,客戶測試和運行原型,然後如此往復,直到客戶對原型滿意。因為這種模型可以讓客戶很快感受到實際的系統(雖然這種系統沒有任何質量保證),所以無論是客戶還是開發人員都更喜歡這種過程模型(對於只演示軟件功能的公司或者從不考慮軟件質量,不怕長期維護的公司)。

缺點:

1,不考慮軟件的整體質量和長期可維護性。

2.大多數情況下,采用不合適的操作算法來演示功能,采用不合適的開發工具只是為了它的方便,選擇不合適的操作系統。

3.因為達不到質量要求的產品可能會被放棄,所以用新的型號重新設計。

優勢:

1.如果客戶和開發人員達成協議,原型的構建只是為了定義需求,然後被放棄或者部分放棄,那麽這個模型是非常適合的。

2、迷惑客戶搶占市場,這是首選模式。這是壹個增量式的軟件開發過程模型,強調極短的開發周期。它是線性模型的“高速”變體,並通過使用組件構造方法贏得了快速發展。如果需求得到了很好的理解,並且項目的範圍受到了約束,那麽使用這個模型就可以快速地創建壹個功能齊全的“信息系統”。其流程從業務建模開始,之後是數據建模、流程建模、應用生成、測試和叠代。RAD過程強調重用,重用現有的或開發可重用的組件。實際上,RAD采用的是第四代技術。

缺點:

1,只能用於信息系統。

2.對於較大的項目,需要足夠的人力資源來建立足夠的RAD組。

3.開發人員和客戶必須在短時間內完成壹系列的需求分析,任何壹方合作不當都會導致RAD項目的失敗。

4.這種模式需要高度模塊化。如果任何功能不能模塊化,那麽構建RAD所需的組件就會出現問題。

5.在技術風險高的情況下不適合這種模式。

優勢:

1,開發速度快,質量有保障。

2.對於信息系統尤其有效。該模型結合了線性序列模型的基本組件和原型實現模型的叠代特性。增量模型采用線性序列,與調度時間的進展錯開。每個線性序列生成壹個可發布的軟件“增量”。在使用增量模型時,第壹個增量往往是核心產品,也就是說,第壹個增量實現了基本需求,但很多補充特性還沒有發布。客戶對每壹個增量的使用和評價,都被視為下壹個增量中發布的新特性和新功能。這壹過程在每次增量發布後重復進行,直到生產出最終的完美產品。增量模式強調每壹個增量都發布壹個可操作的產品。

缺點:

1.從頭到尾,開發者和客戶都在糾結,直到完整版本出來。

優勢:

1.人員調配靈活。壹開始不需要投入大量的人力資源。當核心產品非常受歡迎的時候,妳可以增加人力來實現下壹個增量。

2.當工作人員無法在設定的時限內完成產品時,提供了先推出核心產品的方式,讓部分功能先發布給客戶,對客戶起到了鎮靜作用。

3.它有壹定的市場。這是壹個進化的軟件過程模型,它結合了原型實現的叠代特性和線性序列模型的受控和系統方面。它使得軟件增量版本的快速開發成為可能。在螺旋模型中,軟件開發是壹系列的增量發布。在每壹次叠代中,壹個更完善的開發系統版本逐漸產生。螺旋模型分為幾個框架活動,也稱為任務區域。通常,有3到6個任務領域:

1.客戶溝通:在開發人員和客戶之間建立有效溝通所需的任務。

2.規劃:定義資源、進度和其他相關項目信息所需的任務。

3.風險分析:評估技術和管理風險所需的任務。

4.工程:建立應用程序所需的壹個或多個任務。

5.構建和發布:構建、測試、安裝和提供用戶支持所需的任務。

6.客戶評估:基於在工程階段生成的或在安裝階段實現的軟件表示的評估,獲得客戶反饋所需的任務。

這是壹個比較新的型號,它的功效需要經過幾年的使用才能確定。

缺點:

1,需要相當的風險分析和評估的專業知識,成功有賴於這項技術。

2.很明顯壹個大的未被發現的風險問題會導致問題的發生,可能導致進化的方法失控。

3.這種模式比較新,應用不廣泛,療效有待進壹步驗證。

優勢:

1.該模型是開發大型系統和軟件的壹種好方法。開發人員和客戶可以更好地對待和理解每個進化層次的風險。螺旋模型提出了強調客戶溝通的框架活動。這項活動的目標是從客戶那裏歸納項目需求。理想情況下,開發人員簡單地問客戶他需要什麽,客戶提供足夠的細節來繼續。不幸的是,這種情況很少發生。實際上,客戶和開發人員進入了壹個協商過程,客戶需要在成本和市場的約束下平衡功能、性能和其他產品或系統特性。最好的談判追求“雙贏”的結果,即通過談判,客戶獲得系統的大部分功能,而開發者獲得現實的、可實現的預算和時間限制。為客戶溝通定義了以下活動:

1.系統或子系統的關鍵“利益相關者”的識別。

2.風險承擔者“獲勝條件”的確定。

3.協商風險承擔者的獲勝條件,從而協調成壹套滿足各方考慮的雙贏條件。

缺點:

1,需要額外的談判技巧。

優勢:

1,客戶和開發者達成平衡。該模型側重於多個任務的並發執行,表現為壹系列重大技術活動、任務及其相關狀態。並行過程模型由客戶需求、管理決策和評審結果驅動。該模型並沒有將軟件工程活動限制在壹系列連續的事件中,而是定義了壹個活動網絡。網絡上的每項活動都可能與其他活動同時發生。該模型可以提供項目當前狀態的準確視圖。

缺點:還沒有。

優勢:

1,可用於所有類型的軟件開發,對於客戶機/服務器結構更有效。

2.您可以隨時查看開發狀態。面向對象技術為基於構件的軟件工程過程模型提供了技術框架。面向對象模型強調類的創建、類的封裝數據和操縱數據的算法。壹般來說,經過適當的設計和實現,面向對象的類可以在不同的應用程序和基於計算機的系統架構中重用。基於組件的開發模型結合了螺旋模型的許多特征,本質上是進化的,需要軟件創建的叠代方法。然而,基於組件的開發模型使用預打包的軟件組件(有時稱為類)來構造應用程序。

開發活動從識別候選類開始,通過檢查要由應用系統操作的數據和用於實現操作的算法來完成。相關的數據和算法被封裝到壹個類中。

缺點:

1,過於依賴組件,組件庫質量影響產品質量。

優勢:

1.組件可以重復使用。提高了開發效率。

2.采用面向對象技術。形式方法模型包含壹組活動,這些活動導致計算機軟件的數學規範。形式化方法使軟件工程師能夠通過應用嚴格的數學符號系統來標準化、開發和驗證基於計算機的系統。這種方法的壹種變體,稱為凈室軟件工程,已經被壹些組織采用。當在開發中使用正式方法時,它們提供了壹種機制來消除許多使用其他軟件過程模型難以克服的問題。不明確、不完整和不壹致可以更容易地發現和糾正,不是通過專門的評估,而是通過應用的數學分析。正式的方法提供了生產無缺陷軟件的希望。

缺點:

1,開發費用貴(開發人員需要各種培訓),耗時長。

2.這個模型不能作為與客戶溝通的機制,因為客戶對這些數學語言壹無所知。

3.現在還不流行。

優勢:

1.形式規格說明可以直接作為程序驗證的依據,盡早發現並糾正錯誤(包括其他情況下無法發現的錯誤)。

2.所開發的軟件具有很高的安全性和健壯性,特別適用於安全部門或軟件錯誤會造成經濟損失的開發人員。

3.開發無缺陷軟件的承諾。壹系列軟件工具的使用是第四代技術的特征。這些工具具有相同的特點:它們使軟件工程師能夠在更高的層次上指定軟件的某些特性,然後根據開發者的規範自動生成源代碼。我們知道,軟件的規範程度越高,程序的構建速度就越快。軟件工程

4GT模型關註的是指定軟件的能力:用壹種特殊的語言形式或圖形符號系統,用客戶能理解的術語來描述要解決的問題。像其他模型壹樣,4GT從需求收集這壹步開始。為了將4GT實現轉化為最終產品,開發人員還必須進行徹底的測試,開發有意義的文檔,並完成其他模型中也需要的所有集成活動。總之,4GT已經成為軟件工程的壹種重要方法。特別是當與基於組件的開發模型相結合時,4GT模型可能會成為當前軟件開發的主流模型!

缺點:

1.工具生成的源代碼可能“效率低下”。

2.生成的大型軟件的可維護性仍然存疑。

3.在某些情況下,可能需要更多時間。

優勢:

1,縮短了軟件開發時間,提高了構建軟件的效率。

2.它為許多不同的應用領域提供了可行的途徑和解決方案。

  • 上一篇:誰能介紹壹些浙江的特色小吃?
  • 下一篇:醬牛肉具體怎麽做?
  • copyright 2024吉日网官网