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