我們都知道敏捷是一種思想,源自于17位“輕量級”軟件開發(fā)領(lǐng)域的專家猶他州的雪鳥城,經(jīng)過三天的討論簽署的《敏捷宣言》,以及十二個敏捷原則,而Scrum與敏捷思想是一種什么關(guān)系呢?是否還有其他的實(shí)踐,他們分別是什么,以及當(dāng)下應(yīng)用最廣的的實(shí)踐有哪些?讓我們一起來看下吧
1、Scrum和敏捷思想的關(guān)系Scrum是敏捷實(shí)踐的一種,也稱為敏捷開發(fā)方法,如下圖所示
Scrum是一種迭代式增量的開發(fā)方法,他為復(fù)雜的軟件提供了一種解決方案,幫助個人、團(tuán)隊(duì)和組織創(chuàng)造價值,所以Scrum其本質(zhì)是一種解決方案,通過一些列輕量的實(shí)踐來幫助組織實(shí)現(xiàn)敏捷。
Scrum為什么要采用迭代的方式來交付,因?yàn)樗J(rèn)為所有的知識是來自于實(shí)踐經(jīng)驗(yàn),只有通過不斷的小步迭代來積累經(jīng)驗(yàn),就像愛因斯坦不斷的通過嘗試各種材料來實(shí)現(xiàn)燈泡的發(fā)明一樣,如果不嘗試是不會知道原來炭條、白金四、鉻等這些材料是不行的。
2、常見的敏捷方法
2.1 極限編程大家了解最多的應(yīng)該就是“極限編程”,極限編程的簡稱是XP,如果你沒聽過極限編程,也至少應(yīng)該聽過“結(jié)對編程”吧。
“結(jié)對編程”就是來自于“極限編程的一個實(shí)踐,也是被應(yīng)用最廣的一個。極限編程是由KentBeck在1996年提出的,是一種軟件工程方法學(xué),旨在提高軟件質(zhì)量和對客戶需求變化的反應(yīng)能力。他還有十三種主要的實(shí)踐,如下表所示:
極限編程實(shí)踐 | ||
代碼級別 | 1. 測試驅(qū)動開發(fā)(Test-Driven Development) 2. 重構(gòu)(Refactoring) 3. 簡單設(shè)計(jì)(Simple Design) 4. 結(jié)對編程(Pair Programming) | |
團(tuán)隊(duì)級別 | 5. 編碼規(guī)范(Coding Standard) 6. 可持續(xù)步調(diào)(Sustainable Pace) 7. 隱喻(Metaphor) 8. 持續(xù)集成(Continuous Integration) 9. 集體擁有權(quán)(Collective Ownership) | |
用戶級別 | 10. 規(guī)劃游戲(Planning Game) 11. 小型發(fā)布(Small Release) 12. 客戶測試(Customer Tests) 13. 完整團(tuán)隊(duì)(Whole Team) |
想要了解極限編程,還可以訪問這個網(wǎng)站“http://www.extremeprogramming.org/”。
2.2 FDD功能驅(qū)動開發(fā)(Function Driven Development),是由Jeff De Luca和面向?qū)ο蠓椒ù髱烶eter Coad提出來的,致力于采用迭代的方式交付最多的可見可用的功能模塊。
功能驅(qū)動開發(fā)項(xiàng)目分為五個過程或活動,以迭代方式執(zhí)行:
2.3 DSDM動態(tài)系統(tǒng)開發(fā)方法 (DSDM : Dynamic Systems Development Method) 是一種創(chuàng)建于 1994 年的敏捷方法,DSDM的推出是為了解決傳統(tǒng)項(xiàng)目管理方法的問題(太慢,太大,不夠透明,持續(xù)的業(yè)務(wù)參與不夠)以及RAD引入的問題(只關(guān)注速度和快速修復(fù),不關(guān)注質(zhì)量,不看全局問題)。
其中DSDM定義了最核心的一個敏捷概念就是敏捷鐵三角,在控制時間和資源不變的情況下,范圍可變來管理項(xiàng)目的交付,注重優(yōu)先交付價值高的需求。
想要了解DSDM,可訪問DSDM官網(wǎng)(https://www.agilebusiness.org/page/ProjectFramework_02_ChoosingDSDM)與 https://agilepm.wiki/dsdm-agile-project-framework/
2.4 看板方法看板是一種管理和改善整個人類系統(tǒng)工作的精益方法,通過限制在制品數(shù)量等一系列簡單可行的技巧,發(fā)現(xiàn)和環(huán)節(jié)軟件開發(fā)過程中的壓力和瓶頸,提高生產(chǎn)效率。起源于豐田生產(chǎn)方式,是精益方法的進(jìn)一步延伸。
在實(shí)踐上,通常包含以下六大核心實(shí)踐:
a) 可視化價值流動:通過價值流映射的方法,可視化工作項(xiàng)的價值流動
b) 顯示化流程規(guī)則:明確工作項(xiàng)在不同流程切換之間的規(guī)則,以降低返工率從而提升質(zhì)量
c) 控制在制品數(shù)量:通過控制在制品的數(shù)量,從而盡早暴露風(fēng)險,以及提高工作項(xiàng)的流動效率
d) 管理工作項(xiàng)流動:基于用戶/市場的需要觸發(fā)生產(chǎn),采用拉動式管理來保證不產(chǎn)生浪費(fèi)
e) 創(chuàng)建反饋的閉環(huán):在整個流程中,不斷地加強(qiáng)并強(qiáng)化反饋
f) 持續(xù)地改善流程:基于反饋持續(xù)地改善流程,并追求盡善盡美
2.6 ScrumBanScrumBan可以從名字上了解到是Scrum Ban相結(jié)合,實(shí)際也是,最初設(shè)計(jì)為Scrum到看板之間的過渡方法。它是通過其自身衍生演變而成的另一種混合敏捷框架和方法,其中團(tuán)隊(duì)將 Scrum 作為框架,而將看板作為過程改進(jìn)方法。
在Scrumban中,團(tuán)隊(duì)工作被組織成小的迭代,并在可視化板的幫助下進(jìn)行監(jiān)控,采用Scrum結(jié)合看板的形式,很多團(tuán)隊(duì)中其實(shí)都在應(yīng)用ScrumBan的方式。
3、敏捷方法的應(yīng)用情況Scrum是最流行的敏捷方法,66%的人認(rèn)為它是他們最常用的方法,另有15%的人使用Scrum衍生方法(ScrumBan 9%,Scrum/XP 6%)—數(shù)據(jù)來源:《15th敏捷狀態(tài)報告》
最后,還給大家提供了一份Xmind,讓大家可以快速的了解常用的敏捷方法
————————
作者介紹:暖益
PMP/Prince2/CSM;
現(xiàn)任國內(nèi)500強(qiáng)公司PMO,項(xiàng)目管理經(jīng)驗(yàn)超過10年。
———————————————
版權(quán)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn),該文觀點(diǎn)僅代表作者本人。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如發(fā)現(xiàn)本站有涉嫌抄襲侵權(quán)/違法違規(guī)的內(nèi)容, 請發(fā)送郵件至 舉報,一經(jīng)查實(shí),本站將立刻刪除。