-
什么是Scrum氓润?
Scrum的英文意思是橄欖球運(yùn)動(dòng)的一個(gè)專業(yè)術(shù)語罢荡,表示“爭球”的動(dòng)作;把一個(gè)開發(fā)流程的名字取名為Scrum紧索,我想你一定能想象出你的開發(fā)團(tuán)隊(duì)在開發(fā)一個(gè)項(xiàng)目時(shí)袁辈,大家像打橄欖球一樣迅速、富有戰(zhàn)斗激情珠漂、人人你爭我搶地完成它晚缩,你一定會(huì)感到非常興奮的。
而Scrum就是這樣的一個(gè)開發(fā)流程媳危,運(yùn)用該流程荞彼,你就能看到你團(tuán)隊(duì)高效的工作。它是一種開發(fā)方法待笑,也就是一種軟件開發(fā)的流程鸣皂,它會(huì)指導(dǎo)我們用規(guī)定的環(huán)節(jié)去一步一步完成項(xiàng)目的開發(fā);而這種開發(fā)方式的主要驅(qū)動(dòng)核心是人暮蹂;它采用的是迭代式開發(fā)寞缝;
-
Scrum開發(fā)流程中的三大角色
- 產(chǎn)品負(fù)責(zé)人(Product Owner)
主要負(fù)責(zé)確定產(chǎn)品的功能和達(dá)到要求的標(biāo)準(zhǔn),指定軟件的發(fā)布日期和交付的內(nèi)容仰泻,同時(shí)有權(quán)力接受或拒絕開發(fā)團(tuán)隊(duì)的工作成果荆陆。
- 流程管理員(Scrum Master)
主要負(fù)責(zé)整個(gè)Scrum流程在項(xiàng)目中的順利實(shí)施和進(jìn)行,以及清除擋在客戶和開發(fā)工作之間的溝通障礙集侯,使得客戶可以直接驅(qū)動(dòng)開發(fā)被啼。
- 開發(fā)團(tuán)隊(duì)(Scrum Team)
主要負(fù)責(zé)軟件產(chǎn)品在Scrum規(guī)定流程下進(jìn)行開發(fā)工作,人數(shù)控制在5~10人左右浅悉,每個(gè)成員可能負(fù)責(zé)不同的技術(shù)方面趟据,但要求每成員必須要有很強(qiáng)的自我管理能力,同時(shí)具有一定的表達(dá)能力术健;成員可以采用任何工作方式汹碱,只要能達(dá)到Sprint的目標(biāo)。
具體實(shí)施
什么是Sprint荞估?
Sprint是短距離賽跑的意思咳促,這里面指的是一次迭代稚新,而一次迭代的周期是1個(gè)月時(shí)間(即4個(gè)星期),也就是我們要把一次迭代的開發(fā)內(nèi)容以最快的速度完成它跪腹,這個(gè)過程我們稱它為Sprint褂删。
如何進(jìn)行Scrum開發(fā)?
1冲茸、我們首先需要確定一個(gè)Product Backlog(按優(yōu)先順序排列的一個(gè)產(chǎn)品需求列表)屯阀,這個(gè)是由Product Owner 負(fù)責(zé)的;
2轴术、Scrum Team根據(jù)Product Backlog列表难衰,做工作量的預(yù)估和安排;
3逗栽、有了Product Backlog列表盖袭,我們需要通過 Sprint Planning Meeting(Sprint計(jì)劃會(huì)議) 來從中挑選出一個(gè)Story作為本次迭代完成的目標(biāo),這個(gè)目標(biāo)的時(shí)間周期是1~4個(gè)星期彼宠,然后把這個(gè)Story進(jìn)行細(xì)化鳄虱,形成一個(gè)Sprint Backlog;
4凭峡、Sprint Backlog是由Scrum Team去完成的拙已,每個(gè)成員根據(jù)Sprint Backlog再細(xì)化成更小的任務(wù)(細(xì)到每個(gè)任務(wù)的工作量在2天內(nèi)能完成);
5想罕、在Scrum Team完成計(jì)劃會(huì)議上選出的Sprint Backlog過程中悠栓,需要進(jìn)行 Daily Scrum Meeting(每日站立會(huì)議),每次會(huì)議控制在15分鐘左右按价,每個(gè)人都必須發(fā)言惭适,并且要向所有成員當(dāng)面匯報(bào)你昨天完成了什么,并且向所有成員承諾你今天要完成什么楼镐,同時(shí)遇到不能解決的問題也可以提出癞志,每個(gè)人回答完成后,要走到黑板前更新自己的 Sprint burn down(Sprint燃盡圖)框产;
6凄杯、做到每日集成,也就是每天都要有一個(gè)可以成功編譯秉宿、并且可以演示的版本戒突;很多人可能還沒有用過自動(dòng)化的每日集成,其實(shí)TFS就有這個(gè)功能描睦,它可以支持每次有成員進(jìn)行簽入操作的時(shí)候膊存,在服務(wù)器上自動(dòng)獲取最新版本,然后在服務(wù)器中編譯,如果通過則馬上再執(zhí)行單元測試代碼隔崎,如果也全部通過今艺,則將該版本發(fā)布,這時(shí)一次正式的簽入操作才保存到TFS中爵卒,中間有任何失敗虚缎,都會(huì)用郵件通知項(xiàng)目管理人員;
7钓株、當(dāng)一個(gè)Story完成实牡,也就是Sprint Backlog被完成,也就表示一次Sprint完成轴合,這時(shí)铲掐,我們要進(jìn)行 Srpint Review Meeting(演示會(huì)議),也稱為評(píng)審會(huì)議值桩,產(chǎn)品負(fù)責(zé)人和客戶都要參加(最好本公司老板也參加),每一個(gè)Scrum Team的成員都要向他們演示自己完成的軟件產(chǎn)品(這個(gè)會(huì)議非常重要豪椿,一定不能取消)奔坟;
8、最后就是 Sprint Retrospective Meeting(回顧會(huì)議)搭盾,也稱為總結(jié)會(huì)議咳秉,以輪流發(fā)言方式進(jìn)行,每個(gè)人都要發(fā)言鸯隅,總結(jié)并討論改進(jìn)的地方澜建,放入下一輪Sprint的產(chǎn)品需求中;
以上摘自【Taven博客園】(http://www.cnblogs.com/taven/archive/2010/10/17/1853386.html)
我對(duì)于Daily Scrum的認(rèn)識(shí)
- 1.我并不喜歡Daily Scrum蝌以,因?yàn)槲矣X得人都是自主的炕舵,分配了任務(wù),應(yīng)該盡力去完成跟畅。我理想中的工作模式時(shí)咽筋,把任務(wù)分成幾個(gè)階段,在每個(gè)階段的末尾進(jìn)行總理徊件。中間私下里一個(gè)團(tuán)隊(duì)該合作的合作該討論的討論奸攻。只要預(yù)留一定的時(shí)間更改錯(cuò)誤就好了。
- 2.Daily Scrum 給人一種被壓迫虱痕,每天都在唱戲的感覺睹耐。這么浮躁,怎么進(jìn)入狀態(tài)好好工作部翘。如果硝训,Daily Scrum能夠讓不努力的人高效工作,那么這是適用于少部分人的。如果加上一些官僚主義的干擾捎迫,簡直就是在浪費(fèi)生命晃酒。
- 3.綜上,我希望Daily Scrum應(yīng)該嚴(yán)格控制時(shí)間窄绒,給團(tuán)隊(duì)一個(gè)隊(duì)任務(wù)進(jìn)度的把控就好了贝次,不能流于形式。最好在15分鐘以內(nèi)彰导。