在敏捷實踐體系中,,迭代交付模式是敏捷開發(fā)的核心要素。敏捷開發(fā)方法有很多,,Scrum提供了迭代管理和持續(xù)改進(jìn)的框架,,如圖5-15所示。Scrum中的主要角色包括同項目經(jīng)理類似的Scrum主管角色負(fù)責(zé)維護(hù)過程和任務(wù),,產(chǎn)品負(fù)責(zé)人代表利益所有者,,開發(fā)團(tuán)隊包括了所有開發(fā)人員。 圖5-15 Scrum敏捷開發(fā)流程 Scrum是一個包括了一系列的實踐和預(yù)定義角色的過程骨架(是一種流程,、計劃,、模式,用于有效率地開發(fā)軟件),。Scrum的最大特色是靈活和增量交付,,要求團(tuán)隊之間有開放的溝通和協(xié)作。首先是由產(chǎn)品經(jīng)理收集和整理需求,,然后和開發(fā)團(tuán)隊確定開發(fā)列表,,接著進(jìn)入開發(fā)沖刺狀態(tài),[張樂飛1] 后面就是日常開會,、后期改善,。在實際應(yīng)用中,我們通常將其分為以下5個步驟,。 步驟1. 創(chuàng)建用戶需求列表[張樂飛2] 一個產(chǎn)品的需求可能來自客戶,、團(tuán)隊或者產(chǎn)品經(jīng)理的想法,這些需求的描述必須符合:作為_______,,我希望_______,,以完成______。這樣的好處是讓整個團(tuán)隊更容易理解需求,,達(dá)成共識,,圖5-16所示為一個實例。 圖5-16 用戶需求列表(產(chǎn)品功能需求) 步驟2. 召開計劃會議和制定開發(fā)計劃(計劃版) Scrum Master負(fù)責(zé)組織召開計劃會議,,產(chǎn)品經(jīng)理和團(tuán)隊一起根據(jù)需求的重要性,、開發(fā)量來確定開發(fā)優(yōu)先級,,做工作量預(yù)估,制定迭代開發(fā)計劃(從需求列表中挑選出高優(yōu)先級 Story(用戶需求)[張樂飛3] 作為本次迭代完成的目標(biāo),,這個目標(biāo)的時間周期是1~4個星期,,然后把這個Story進(jìn)行細(xì)化,形成一個Sprint Backlog(迭代代辦事項)[張樂飛4] ),。開發(fā)團(tuán)隊一旦接受這些開發(fā)任務(wù),,就應(yīng)該準(zhǔn)時完成,不得修改交付標(biāo)準(zhǔn),。 步驟3. 執(zhí)行迭代計劃(任務(wù)板) 首先,,你需要確定每次Sprint(開發(fā)沖刺)[張樂飛5] 的周期,短的周期可以更頻繁的發(fā)布產(chǎn)品版本,,因此可以從客戶那里更迅速地收到反饋,,修正錯誤。這個周期一般為1~4周,,當(dāng)然,,你可以根據(jù)團(tuán)隊成熟程度或迭代任務(wù)確定一個合適的迭代周期,比如2周,。這樣可以讓開發(fā)人員更投入地工作,。 所謂Sprint,就是在一定時間內(nèi)全身心投入開發(fā),。這個階段通常用看板來管理需求,,每個卡片[張樂飛6] 就是一個開發(fā)任務(wù),工作完成后,,可以將卡片移到下一個階段,,用看板管理需求,如圖5-17所示:你也可以使用專門的軟件來管理看板,,例如國外的Jira,、國內(nèi)的明道。 圖5-17 敏捷開發(fā)項目管理看板 在沖刺中,,每一天都會舉行項目狀況會議,被稱為“每日站會”,。會議在固定地點和每天的同一時間舉行,,對于遲到者團(tuán)隊常常會制定懲罰措施(例如罰款,做俯臥撐,,在脖子上掛橡膠雞玩具),。不論團(tuán)隊規(guī)模大小,會議被限制在15分鐘,。所有出席者都應(yīng)站立,,每個人都必須發(fā)言,。會議的目標(biāo)是討論當(dāng)前的任務(wù)的狀態(tài),一個推薦的匯報形式是:我昨天已經(jīng)做了什么,?我接下來準(zhǔn)備做什么,?現(xiàn)在遇到什么阻礙和問題?注意在會議中團(tuán)隊成員不必要針對每個問題進(jìn)行探討,,只是作為一個重要信息的反饋通道,,具體問題相關(guān)成員在會后私下當(dāng)面溝通解決,這樣更加高效,,避免浪費問題無關(guān)成員的時間,。 步驟4. 產(chǎn)品測試和演示 因為每次的Sprint目標(biāo)就是交付一個可以用的產(chǎn)品特性,所以測試工作非常重要,。有不少方法可以減少測試周期,,比如,你可以減少需求數(shù)量,,或者讓開發(fā)參與測試,。當(dāng)一個Story完成,也就是Sprint Backlog被完成,,也就表示一次Sprint完成,,這時,我們要進(jìn)行演示會議,,也稱為評審會議,。產(chǎn)品負(fù)責(zé)人和客戶都要參加(最好本公司老板也參加),每一個Scrum團(tuán)隊的成員都要向他們演示自己完成的軟件產(chǎn)品(這個會議非常重要,,一定不能取消),。 步驟5. 回顧會議和下一個Sprint計劃 每一個沖刺完成后,都會舉行一次沖刺回顧會議,?;仡檿h也稱為總結(jié)會議,會議的時間限制在4小時,,以輪流發(fā)言方式進(jìn)行,,每個人都要發(fā)言,哪里做得好,、哪里不好都可以提出,,總結(jié)并討論改進(jìn)的地方,放入下一輪Sprint計劃,。
|
|