首頁>技術>

敏捷的基本概念

1.什麼是敏捷

敏捷是一種方法、手段、實踐或者框架的統稱。敏捷方法是一種基於經驗型控制方法,先預定義流程之後在實驗過程種通過觀察不斷的調整流程。

2.敏捷有哪些?

它們之間的同性有:他們都是自組織團隊,都採用了迭代開發,增量式交付和持續整合。

傳統專案和敏捷專案生命週期的特點

常見的生命週期有預測型生命週期又叫瀑布型,迭代型生命週期,增量生命週期,和適應性生命週期,前三個生命週期均為傳統型專案的生命週期,適應性生命週期是敏捷的生命週期。

1.預測型生命週期(瀑布)

預測型生命週期是按順序執行的。以軟體開發為例先由專門的需求團隊完成需求分析輸出需求文件,之後概要設計團隊根據需求分析文件來完成概要設計,如果該要設計時發現不清楚的需求想需求部門反饋,需求團隊修改後再移交給概要設計團隊;之後根據概要設計文件來做詳細設計,發現疑問再和概要團隊討論,直到詳細設計完成;接下來開發人員根據詳細設計來做編碼實現,編碼結束後交給測試進行測試;測試發現bug反饋給開發人員,開發人員修訂後轉給測試,測試通過後輸出測試報告,交付給部署人員。

很適合用於對需求很明確的專案,需求範圍不希望變動,最終一次性交付產品。

2. 迭代型生命週期

迭代型生命週期先根據最初的需求開發出原型,給客戶或者業務部門演示原型,發現新的問題或者需求之後再改進,經過多次的迴圈改進,最後一次性交付產品。

3.增量型生命週期

增量型生命週期是為了加快交付功能,一次只交付一部分新功能,漸進式的增加功能,頻繁交付功能。

4.適應型生命週期(敏捷)

敏捷裡團隊是跨職能團隊,包括產品經理,敏捷教練,開發團隊,其中開發團隊裡包括測試人員。產品經理和內部業務負責人,外部的客戶,終端使用者緊密合作,頻繁溝通交流,把需求轉化成產品代辦項,並且對需求進行優先順序排序。

團隊開展本次衝刺,從需求池按順序取出本次要完成的功能放進衝刺列表,每一個衝刺結束是都可以交付一個可工作的軟體。而且敏捷型歡迎需求變化,即使專案已經完成。變化的需求將新增到需求池,產品經理重新對產品代辦項進行優先順序排序,在下一個衝刺中根據從需求池按優先順序從上往下順序取出本次的衝刺代辦列表來完成。

敏捷適合在產品需求和範圍不明確的專案來通過頻繁交付來增量改進。

瀑布型與敏捷型的比較

瀑布一次性進行全部詳細規劃,敏捷先粗略規劃,對即將要做的項詳細規劃;瀑布型一次性交付產品,而敏捷小批量,短週期,增量交付產品;瀑布是專業的團隊,而敏捷是自組織,跨職能,集中辦公的團隊;瀑布型不喜歡變更,而敏捷擁抱變更,即使產品完成時也可以變更;瀑布型的領導是命令式的領導,而敏捷是僕人式領導。

敏捷的好處

瀑布型生命週期長用於對產品需求和範圍很明確的專案,它是一種順序執行的,最終一次性交付產品,只有最後交付了產品後才能有收益,成本高。而敏捷在每個衝刺結束後交付最有價值的功能,率先實現收益,可以通過第一個衝刺交付後的收益來開展下一個衝刺,成本低。

如果瀑布型執行到最後發現行不通失敗成本極高,而敏捷在一個衝刺結束後發現行不通可以快速失敗,極大地降低失敗成本。

軟體行業特點

隨著智慧手機的出現,面向個人的應用APP井噴,而且很多個人使用者軟體APP需求和功能越來越複雜,而且商業競爭非常激烈,往往產品先上市更有優勢,於是軟體呈現出由於使用者群體龐大,使用者層次不一致導致需求複雜多變,更希望快速推出產品搶佔市場的特點。

結論

傳統專案管理方法更多應用在傳統大專案如軍事,建築等需求明確對安全和穩定要求非常高的專案,而敏捷主要應用在軟體行業具有需求不明確範圍容易變更的複雜專案。

在軟體專案裡對於需求和範圍明確的專案採用瀑布生命週期和傳統專案管理方法,對於前期需求複雜和範圍不明確的專案採用敏捷型生命週期和敏捷專案管理方法。

最新評論
  • BSA-TRITC(10mg/ml) TRITC-BSA 牛血清白蛋白改性標記羅丹明
  • Golang寫的程式注入一些版本資訊,Debug速度自然快不少