哪條路可以進步? 迭代和增量模型

已發表: 2023-10-09

迭代模型和增量模型都與敏捷密切相關,但有時它們會被錯誤地互換使用。 也許這是因為很難找到這兩種方法的精確定義,而且因為它們都處理相似的主題。 然而,在這種情況下,問題在於細節,雖然兩個模型都解決相同的問題,但它們具有不同的含義。 請繼續閱讀以了解更多資訊。

迭代和增量模型 - 目錄:

  1. 迭代模型與增量模型
  2. 迭代模型和增量模型之間的主要區別
  3. 迭代和增量開發模型。 哪個更好?
  4. 概括

迭代和增量模型

讓我們從以下事實開始:這兩個概念都與旨在改進的過程相關,但它們的運作原理略有不同。 在迭代方法的情況下,它涉及重複相同的活動,最終導致其增強或多樣化。 另一方面,增量方法旨在不斷增加某物的數量或價值,每個元素從一開始就得到徹底的完善。

雖然此時我們可以提供 IT 團隊或任何其他團隊的範例,但 Mike Cohn 提出的類比似乎是最接近的。 他將迭代過程比喻為雕刻。 在初始階段,雕刻家有不同的石頭可供選擇,並選擇形狀最接近他們想要創造的石頭。

下一步,雕刻家的任務是給石頭一個大致的輪廓,只有在接下來的步驟中,最終的形狀才會開始出現。 因此,每一個步驟都會導致整個過程的完成,也就是雕塑的創作,每一步都是重要且必要的。 然而,在最終的視覺效果,即完成的雕塑被創造出來之前,雕塑家不會認為它們是完整的。

讓我們將這個豐富多彩的類比帶到一個更實際的過程中——想像一個程式設計師正在建立一個新網站的專案。 在開發網站時,程式設計師會立即建立產品並將其交付給用戶,以便他們進行測試。 然而,這並不意味著這是一個完整的成品。 當使用者測試它時,團隊會發現問題,尋找改進的方法,並規劃下一個版本。 這種反覆改進的過程稱為迭代。

採用增量模型的雕塑家將以完全不同的方式運作。 他們不會將每一步都視為稍後要完善的元素,而是從一開始就創建每個元素的最終形狀。 這是什麼意思? 假設這樣一位雕塑家想要創作一尊男人雕像。 在這種情況下,他們不會給出一個大致的輪廓或形狀,而是會立即集中精力創建完美的細節,這些細節不需要以後進行細化,並且會立即實現最終的外觀。

這如何轉化為專案團隊的工作? 每個部分或子組都專注於其任務,並創建網站的完整組件,該組件功能有限,但已完成和完善。 只有當所有小組的工作結合起來時,由所有這些組件組成的最終產品才會出現。

迭代模型和增量模型之間的主要區別

選擇最適合您的模型的關鍵是了解這些方法之間的差異。

  1. 錯誤風險
  2. 增量方法存在很大風險,因為任何潛在的錯誤或缺陷只能在流程結束時(即各個組件組合成最終產品時)才能發現。 在此之前,每個部分本身都是完整的,因此是一個很大的未知數。 當涉及到偵測錯誤和進行更改時,採用迭代方法會更容易做到。

  3. 專案工期
  4. 透過迭代方法,您可以更快地建立可供測試的設計。 這是因為所有可能的改進都是在後續階段進行的,但這發生在後台並且不會幹擾原始版本。 相比之下,增量方法涉及單獨開發和增強每個元素,這需要更多時間。

  5. 用戶參與
  6. 在迭代方法的情況下,用戶更多地參與該過程並且可以更快地測試產品。 這本身就是一種價值,但它還允許您獲得有關產品可用性的有價值的信息,以便進行可能的改進和開發。 採用增量方式,使用者必須等待更長的時間才能得到最終產品,而他們對整個過程的參與並不那麼重要。

  7. 專案成本
  8. 不可能明確地說哪種方法比較昂貴。 這完全取決於專案需要多長時間以及需要多少次修改。 當需要多次迭代時,迭代方法的成本就會變得很高,因為每次迭代都涉及預算的再次增加。 增量方法似乎更容易估計預算和確定最終成本。 然而,這是事實,假設最終版本沒有錯誤並且不需要任何修復。

迭代和增量開發模型。 哪個更好?

除了「視情況而定」之外,不可能回答這個問題。 對於大型項目,迭代方法更好,因為從一開始就假設產品的第一個版本不會是最終版本,而產品本身就有機會成長。 如果您需要快速進入市場,這是一個很好的解決方案。 另一方面,當您清楚地了解最終產品的外觀並且知道沒有任何改進或增強的空間時,增量方法會更好。

這意味著在做出最終選擇時,您需要考慮專案的目標及其環境和要求。 如果您期望快速獲得結果並希望讓客戶參與流程,請選擇迭代方法。 但是,如果您確切地知道要開發什麼產品並希望立即達到最高品質,那麼增量方法會更好。

除了具體情況外,當上述問題的答案很明確時,中間仍然存在著一個不那麼明顯的間隙。 所以問題是,我們能否結合這兩種模型的優點並僅使用適合特定項目的方面?

Iterative and incremental models

概括

兩種方法都有相同的目標,都有各自的優點和缺點,而且都存在一定的風險。 哪一種更好取決於您想要執行的過程。 然而,真的有必要選擇解決方案嗎? 也許最好的選擇是將兩者結合起來並找到一個中庸之道?

沒有什麼可以妨礙使用這兩種模型,因為沒有必要堅持一個特定的框架。 最好將它們用作靈感和良好的起點。 為您的專案選擇相關元素並建立您自己的自訂流程。

如果您喜歡我們的內容,請在 Facebook、Twitter、LinkedIn、Instagram、YouTube、Pinterest、TikTok 上加入我們的忙碌蜜蜂社群。

Which path to progress? Iterative and incremental models andy nichols avatar 1background

作者:安迪‧尼科爾斯

具有 5 個不同程度和無盡動力儲備的問題解決者。 這使他成為完美的企業主和經理。 在尋找員工和合作夥伴時,開放性和對世界的好奇心是他最重視的特質。