8種流行的敏捷方法

敏捷是一個術語,用於描述軟件開發的方法,強調增量交付,團隊協作,持續計劃和持續學習,而不是試圖在接近結束時立即交付。

敏捷專注於保持流程的精益,並創建最小的可行產品(MVP),這些產品在任何最終結果之前經歷了多次迭代。不斷收集和實施反饋,總而言之,這是一個更加動態的過程,每個人都在朝著一個目標努力。

敏捷軟件開發

領先的敏捷方法

敏捷是一種思維方式,它是一套價值觀和原則。敏捷是一種思考和行動的方式。敏捷就是短週期,迭代和增量交付,快速失敗,獲得反饋,及早向客戶提供業務價值,關於人員,協作和交互。敏捷是一種關於透明度,檢查和適應的心態。但是,敏捷不包含任何角色,事件或工件。這是一種心態。例如,Scrum是敏捷傘下廣泛使用的框架之一,可以幫助您變得更敏捷,但敏捷運動中有更多的框架,如看板,XP,Crystal等等,如圖所示下面:

 

Scrum敏捷傘

敏捷傘

XP

XP(極限編程)的思想源自 Kent Beck和Ward Cunningham在軟件項目中的合作經歷。XP註重的核心是溝通、簡明、反饋和勇氣。因為知道計劃永遠趕不上變化,XP無需開發人員在軟件開始初期做 出很多的文檔。XP提倡測試先行,為了將以後出現bug的幾率降到最低。

SCRUM

SCRUM是一種叠代的增量化過程,用於產品開發或工作管理。它是一種可以集合各種開發實踐的經驗化過程框架。SCRUM中發布產品的重要性高於一切。

該方法由Ken Schwaber和 Jeff Sutherland 提出,旨在尋求充分發揮面向對象和構件技術的開發方法,是對叠代式面向對象方法的改進。

精益 (Lean)

精益起源於豐田生產系統(TPS),它在20世紀50年代,60年代及以後徹底改變了實物商品的製造。Lean堅持製造業,但也在知識工作中找到了新的應用,幫助所有行業的企業消除浪費,改進流程,促進創新。軟件開發是精益方法的自然應用,因為與製造業一樣,它通常遵循一個明確的過程,具有一定的接受條件,並導致有形價值的傳遞。指導精益方法所有實踐的關鍵概念,我們稱之為精益支柱。他們是:

  • 連續的提高
  • 尊重人
  • 輕量級領導

看板 (Kanban)

看板是一種高度可視化的工作流管理方法,在精益團隊中很受歡迎。事實上,83%的精益生產團隊使用看板來可視化並積極管理產品的創建,重點是持續交付,同時不會使開發團隊負擔過重。與Scrum一樣,看板是一個旨在幫助團隊更有效地協同工作的流程。

看板基於3個基本原則:

  • 可視化您今天要做的事情(工作流程):查看彼此上下文中的所有項目可以提供非常豐富的信息
  • 限制正在進行的工作量(WIP):這有助於平衡基於流的方法,因此團隊無法啟動並立即承諾過多的工作
  • 增強流程:當某些內容完成後,積壓中的下一個最高優先級項目將被激活

看板通過定義最佳的團隊工作流程,促進持續協作並鼓勵積極,持續的學習和改進。

Crystal Methods

Crystal Methods(水晶方法族)由Alistair Cockburn在20實際90年代末提出。之所以是個系列,是因為他相信不同類型的項目需要不同的方法。雖然水晶系列不如XP那樣的產出效率,但會有更多的人能夠接受並遵循它。

FDD

FDD (Feature-Driven Development,特性驅動開發)由Peter Coad、Jeff de Luca 、Eric Lefebvre共同開發,是一套針對中小型軟件開發項目的開發模式。此外,FDD是一個模型驅動的快速叠代開發過程,它強調的是簡化、實用、 易於被開發團隊接受,適用於需求經常變動的項目。

ASD

ASD(Adaptive Software Development,自適應軟件開發)由Jim Highsmith在1999年正式提出。ASD強調開發方法的適應性(Adaptive),這一思想來源於復雜系統的混沌理論。ASD不象其他方法那樣 有很多具體的實踐做法,它更側重為ASD的重要性提供最根本的基礎,並從更高的組織和管理層次來闡述開發方法為什麽要具備適應性。

DSDM

DSDM(動態系統開發方法)是眾多敏捷開發方法中的一種,它倡導以業務為核心,快速而有效地進行系統開發。實踐證明DSDM是成功的敏捷開發方法之一。在英國,由於其在各種規模的軟件組織中的成功,它已成為應用最為廣泛的快速應用開發方法。

DSDM不但遵循了敏捷方法的原理,而且也適合那些成熟的傳統開發方法有堅實基礎的軟件組織。

 

References

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章