淺談敏捷開發(fā)和Scrum

行業(yè)內(nèi)有太多人吐槽敏捷開發(fā),原因各不相同承璃,有覺得 Agile 就是一坨翔的利耍,有覺得 Agile 太低效的,也有覺得團(tuán)隊(duì)小暫時(shí)不需要敏捷的盔粹,etc隘梨。
人的本性都是敏捷的,誰都不想浪費(fèi)寶貴的時(shí)間舷嗡。抱怨敏捷的人轴猎,一是對(duì)敏捷理解不夠深刻,生搬硬套进萄,覺得不行捻脖,然后就一大堆抱怨;二是老板覺得敏捷不能完全的壓榨勞動(dòng)力垮斯,也就是行業(yè)金句——工作不飽和郎仆。


美國人埃里克·萊斯提出了《精益創(chuàng)業(yè)》的方法論,它強(qiáng)調(diào)的是在風(fēng)險(xiǎn)極高兜蠕、創(chuàng)業(yè)資本有限的情況下扰肌,需要快速摸索出最小化可行產(chǎn)品(MVP)盡早進(jìn)行市場(chǎng)驗(yàn)證,現(xiàn)在精益創(chuàng)業(yè)已風(fēng)行創(chuàng)業(yè)領(lǐng)域熊杨,但是如何將此方法論具體應(yīng)用到創(chuàng)業(yè)團(tuán)隊(duì)產(chǎn)品開發(fā)的實(shí)踐之中曙旭?很多創(chuàng)業(yè)公司/團(tuán)隊(duì)聲稱自己的精益創(chuàng)業(yè),然而卻對(duì)團(tuán)隊(duì)管理漠不關(guān)心晶府,更別說敏捷開發(fā)桂躏,開發(fā)流程亂七八糟,全是小作坊操作川陆,美其名曰:我們要快速的迭代產(chǎn)品剂习,顧不上這些。
我在敏捷的團(tuán)隊(duì)做過好幾年较沪,敏捷的目的并不是為了讓開發(fā)事兒更少鳞绕,而是讓大家在有限的時(shí)間效率更高。在工作量不變的情況下尸曼,更少加班们何;在工作時(shí)間不變的情況下,產(chǎn)出更大控轿。
在歐美軟件企業(yè)中,有近半數(shù)企業(yè)已采用敏捷方法進(jìn)行開發(fā)冤竹,硅谷FLAG拂封,國內(nèi)如騰訊、阿里鹦蠕、百度冒签、Fackbook、Yahoo!等等一線互聯(lián)網(wǎng)公司內(nèi)部幾乎所有的開發(fā)團(tuán)隊(duì)都在實(shí)施敏捷方法钟病。相關(guān)統(tǒng)計(jì)表明镣衡,敏捷開發(fā)可以將效率提高3~10倍,項(xiàng)目質(zhì)量也有更加可靠的保證档悠。

什么是敏捷開發(fā)?

  1. 敏捷開發(fā)(Agile Development)是一種以人為核心望浩、迭代辖所、循序漸進(jìn)的開發(fā)方法。

怎么理解呢磨德?首先缘回,我們要理解它不是一門技術(shù),它是一種開發(fā)方法典挑,也就是一種軟件開發(fā)的流程酥宴,它會(huì)指導(dǎo)我們用規(guī)定的環(huán)節(jié)去一步一步完成項(xiàng)目的開發(fā);而這種開發(fā)方式的主要驅(qū)動(dòng)核心是人您觉;它采用的是迭代式開發(fā)拙寡;

  1. 為什么說是以人為核心?

我們大部分人都學(xué)過瀑布開發(fā)模型琳水,它是以文檔為驅(qū)動(dòng)的肆糕,為什么呢?因?yàn)樵谄俨嫉恼麄€(gè)開發(fā)過程中在孝,要寫大量的文檔诚啃,把需求文檔寫出來后,開發(fā)人員都是根據(jù)文檔進(jìn)行開發(fā)的私沮,一切以文檔為依據(jù)始赎;而敏捷開發(fā)它只寫有必要的文檔,或盡量少寫文檔仔燕,敏捷開發(fā)注重的是人與人之間造垛,面對(duì)面的交流,所以它強(qiáng)調(diào)以人為核心涨享。

  1. 什么是迭代筋搏?

迭代是指把一個(gè)復(fù)雜且開發(fā)周期很長的開發(fā)任務(wù),分解為很多小周期可完成的任務(wù)厕隧,這樣的一個(gè)周期就是一次迭代的過程奔脐;同時(shí)每一次迭代都可以生產(chǎn)或開發(fā)出一個(gè)可以交付的軟件產(chǎn)品俄周。

敏捷的套路 —— 實(shí)踐框架

  • XP(極限編程)較早出現(xiàn)在中國的原因,得益于當(dāng)初翻譯的幾本書(2001年)髓迎,不過有點(diǎn)極端了峦朗,很多傳統(tǒng)企業(yè)都不能適應(yīng)。
  • Scrum 是精益創(chuàng)業(yè)很好的實(shí)踐方法排龄,概念清晰波势,可操作性強(qiáng),落地快橄维,在中國也出現(xiàn)了日漸普及的態(tài)勢(shì)尺铣;當(dāng)然罵聲也不少,認(rèn)為它什么都沒講争舞,太虛了凛忿。實(shí)際上他們大多數(shù)人把自身的問題歸結(jié)于 Scrum 了。
  • FDD(Feature Driven Development)等還有一些其他的過程竞川,聲音慢慢就越來越少了店溢。

目前流行的敏捷套路就只有 Scrum 而已,另外一些都越來越少有被人提起了委乌。
這里床牧,我們主要以 Scrum 來講解敏捷,但千萬別以為 Scrum 就是敏捷遭贸。

  • 關(guān)于Scrum和XP

前面說了敏捷它是一種指導(dǎo)思想或開發(fā)方式戈咳,但是它沒有明確告訴我們到底采用什么樣的流程進(jìn)行開發(fā),而 Scrum 和 XP 就是敏捷開發(fā)的具體方式了壕吹,你可以采用 Scrum 方式也可以采用 XP 方式除秀;Scrum 和 XP 的區(qū)別是,Scrum 偏重于過程算利,XP 則偏重于實(shí)踐册踩,但是實(shí)際中,兩者是結(jié)合一起應(yīng)用的效拭,這里主要講 Scrum暂吉。

Scrum 關(guān)鍵詞匯解釋

  1. product backlog: 可以預(yù)知的所有任務(wù), 包括功能性的和非功能性的所有任務(wù)缎患。

  2. sprint: 一次跌代開發(fā)的時(shí)間周期慕的,一般最多以30天為一個(gè)周期.在這段時(shí)間內(nèi),開發(fā)團(tuán)隊(duì)需要完成一個(gè)制定的backlog,并且最終成果是一個(gè)增量的挤渔,可以交付的產(chǎn)品肮街。

  3. sprint backlog: 一個(gè) sprint 周期內(nèi)所需要完成的任務(wù)。

  4. Scrum Master: 確保團(tuán)隊(duì)合理的運(yùn)作 Scrum判导,并幫助團(tuán)隊(duì)移除實(shí)施中的障礙嫉父。

  5. PO (Product Owner): 即產(chǎn)品負(fù)責(zé)人沛硅,確定產(chǎn)品的方向和愿景,定義產(chǎn)品發(fā)布的內(nèi)容绕辖、優(yōu)先級(jí)及交付時(shí)間摇肌,為產(chǎn)品負(fù)責(zé)。

  6. scrum team(開發(fā)團(tuán)隊(duì)): 一個(gè)跨職能的小團(tuán)隊(duì)仪际,包括開發(fā)測(cè)試围小,人數(shù)5-9人為佳,團(tuán)隊(duì)擁有交付可用軟件需要的各種技能树碱。

  7. time-box: 一個(gè)用于開會(huì)時(shí)間段肯适。比如每個(gè) daily scrum meeting(每日站立會(huì)議) 的time-box為15分鐘。

  8. sprint planning meeting: 在啟動(dòng)每個(gè)sprint前召開成榜。該會(huì)議需要制定的任務(wù)是:PO 和團(tuán)隊(duì)成員將 backlog 分解成小的功能模塊,決定在即將進(jìn)行的 sprint 里需要完成多少小功能模塊疹娶,確定好這個(gè) Product Backlog 的任務(wù)優(yōu)先級(jí)。另外伦连,該會(huì)議還需詳細(xì)地討論如何能夠按照需求完成這些小功能模塊。制定的這些模塊的工作量以小時(shí)計(jì)算钳垮。

  9. Daily Scrum meeting:開發(fā)團(tuán)隊(duì)成員召開惑淳,一般為15分鐘。每個(gè)開發(fā)成員需要向 team 匯報(bào)三個(gè)項(xiàng)目:

    1. 昨天完成了什么饺窿,完成了百分之多少歧焦,還剩百分之多少?
    2. 今天你打算做什么肚医?
    3. 完成你的目標(biāo)是否存在什么障礙绢馍?

    通過該會(huì)議,團(tuán)隊(duì)成員可以相互了解項(xiàng)目進(jìn)度肠套。

  10. Sprint review meeting:在每個(gè) Sprint 結(jié)束后舰涌,這個(gè)Team將這個(gè) Sprint 的工作成果演示給 Product Owner,客戶你稚,老板和其他相關(guān)的人員瓷耙。

  11. Sprint retrospective meeting:對(duì)剛結(jié)束的Sprint進(jìn)行總結(jié)。會(huì)議的參與人員為團(tuán)隊(duì)開發(fā)的內(nèi)部人員刁赖。一般該會(huì)議為1小時(shí)搁痛。

什么是scrum?

Scrum的基本假設(shè)是:

開發(fā)軟件就像開發(fā)新產(chǎn)品,無法一開始就能定義軟件產(chǎn)品最終的規(guī)程宇弛,過程中需要研發(fā)鸡典、創(chuàng)意、嘗試錯(cuò)誤枪芒,所以沒有一種固定的流程可以保證專案成功彻况。Scrum 將軟件開發(fā)團(tuán)隊(duì)比擬成橄欖球隊(duì)谁尸,有明確的最高目標(biāo),熟悉開發(fā)流程中所需具備的最佳典范與技術(shù)疗垛,具有高度自主權(quán)症汹,緊密地溝通合作,以高度彈性解決各種挑戰(zhàn)贷腕,確保每天背镇、每個(gè)階段都朝向目標(biāo)有明確的推進(jìn)。
Scrum 開發(fā)流程通常以 30 天(或者更短的一段時(shí)間)為一個(gè)階段泽裳,由客戶提供新產(chǎn)品的需求規(guī)格開始瞒斩,開發(fā)團(tuán)隊(duì)與客戶于每一個(gè)階段開始時(shí)挑選該完成的規(guī)格部分,開發(fā)團(tuán)隊(duì)必須盡力于 30 天后交付成果涮总,團(tuán)隊(duì)每天用 15 分鐘開會(huì)檢查每個(gè)成員的進(jìn)度與計(jì)劃胸囱,了解所遭遇的困難并設(shè)法排除。

Scrum 三大角色

Scrum“角色”–無規(guī)矩不成方圓

  1. PO
    必須有一個(gè)項(xiàng)目持有者瀑梗,制定規(guī)劃并把握項(xiàng)目走向烹笔,一般就是產(chǎn)品經(jīng)理。
  2. SM
    敏捷教練抛丽。一般由對(duì)技術(shù)開發(fā)以及當(dāng)前項(xiàng)目明晰的技術(shù)經(jīng)理擔(dān)任谤职。
  3. TEAM

Scrum 的流程


引用一張圖,結(jié)合上面的名詞解釋
  1. 我們首先需要確定一個(gè) Product Backlog(按優(yōu)先順序排列的一個(gè)產(chǎn)品需求列表)亿鲜,這個(gè)是由 Product Owner 負(fù)責(zé)的允蜈;

  2. 正式開始一個(gè) sprint 開始之前,產(chǎn)品蒿柳、研發(fā)饶套、測(cè)試需要一同開一次 sprint planning meeting,共同討論本次 sprint 的功能點(diǎn)垒探,需求討論或技術(shù)討論妓蛮;成員預(yù)估需求所需開發(fā)時(shí)間;團(tuán)隊(duì)輸出是否滿足需求圾叼,排入 sprint backlog仔引;

  3. planning meeting 下來之后每個(gè)團(tuán)隊(duì)成員對(duì)自己在這個(gè)sprint中的工作進(jìn)行整理,拆分小任務(wù)褐奥,預(yù)估開發(fā)完成時(shí)間咖耘,自己排自己的優(yōu)先級(jí);

  4. 進(jìn)行 Daily Scrum Meeting撬码,這個(gè)環(huán)節(jié)在 agile 中非常關(guān)鍵儿倒,是 agile 的日常修煉,控制在15分鐘左右,每個(gè)人都必須發(fā)言夫否,并且要向所有成員當(dāng)面匯報(bào)你昨天完成了什么彻犁,并且向所有成員承諾你今天要完成什么,同時(shí)遇到不能解決的問題也可以提出來尋求幫助凰慈。完了以后SM負(fù)責(zé)根據(jù)結(jié)果更新 burndown chart汞幢;

  1. 當(dāng)一個(gè) Sprint 結(jié)束時(shí),我們要進(jìn)行 Sprint Review Meeting微谓,也稱為評(píng)審會(huì)議森篷,產(chǎn)品負(fù)責(zé)人和客戶都要參加,每一個(gè)Scrum Team的成員都要向他們演示自己完成的軟件產(chǎn)品(這個(gè)會(huì)議非常重要豺型,一定不能取消)仲智;

  2. 最后就是 Sprint Retrospective Meeting,復(fù)盤這個(gè) sprint姻氨,以輪流發(fā)言方式進(jìn)行钓辆,每個(gè)人都要發(fā)言,總結(jié)并討論做得好的地方肴焊、需要改進(jìn)的地方前联;根據(jù)實(shí)際情況進(jìn)行下一個(gè) sprint 的任務(wù)安排。

這樣周而復(fù)始娶眷,按照同樣的步驟進(jìn)行下一次Sprint.

Scrum 的特性

  • 不斷交付軟件以滿足客戶需求似嗤,每個(gè)迭代版本都是可運(yùn)行的
  • 歡迎需求的變化
  • 及時(shí)溝通,拒絕過度設(shè)計(jì)
  • 量化了工作項(xiàng)目的進(jìn)度和團(tuán)隊(duì)的產(chǎn)出
  • 流程簡(jiǎn)單茂浮,溝通順暢

隨便總結(jié)一下

敏捷是一種流程、方法壳咕、理念席揽,甚至信仰;
敏捷不是一種工具谓厘,不是用了敏捷的軟件就是敏捷了幌羞;
敏捷是為了團(tuán)隊(duì)成員能夠更加緊密地配合完成工作;
敏捷是需要本土化的竟稳,可以根據(jù)項(xiàng)目團(tuán)隊(duì)的情況指定自己的敏捷計(jì)劃属桦。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市他爸,隨后出現(xiàn)的幾起案子聂宾,更是在濱河造成了極大的恐慌,老刑警劉巖诊笤,帶你破解...
    沈念sama閱讀 206,378評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件系谐,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)纪他,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,356評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門鄙煤,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人茶袒,你說我怎么就攤上這事梯刚。” “怎么了薪寓?”我有些...
    開封第一講書人閱讀 152,702評(píng)論 0 342
  • 文/不壞的土叔 我叫張陵亡资,是天一觀的道長。 經(jīng)常有香客問我预愤,道長沟于,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,259評(píng)論 1 279
  • 正文 為了忘掉前任植康,我火速辦了婚禮旷太,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘销睁。我一直安慰自己供璧,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,263評(píng)論 5 371
  • 文/花漫 我一把揭開白布冻记。 她就那樣靜靜地躺著睡毒,像睡著了一般。 火紅的嫁衣襯著肌膚如雪冗栗。 梳的紋絲不亂的頭發(fā)上演顾,一...
    開封第一講書人閱讀 49,036評(píng)論 1 285
  • 那天,我揣著相機(jī)與錄音隅居,去河邊找鬼钠至。 笑死,一個(gè)胖子當(dāng)著我的面吹牛胎源,可吹牛的內(nèi)容都是我干的棉钧。 我是一名探鬼主播,決...
    沈念sama閱讀 38,349評(píng)論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼涕蚤,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼宪卿!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起万栅,我...
    開封第一講書人閱讀 36,979評(píng)論 0 259
  • 序言:老撾萬榮一對(duì)情侶失蹤佑钾,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后烦粒,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體次绘,經(jīng)...
    沈念sama閱讀 43,469評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,938評(píng)論 2 323
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了邮偎。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片管跺。...
    茶點(diǎn)故事閱讀 38,059評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖禾进,靈堂內(nèi)的尸體忽然破棺而出豁跑,到底是詐尸還是另有隱情,我是刑警寧澤泻云,帶...
    沈念sama閱讀 33,703評(píng)論 4 323
  • 正文 年R本政府宣布艇拍,位于F島的核電站,受9級(jí)特大地震影響宠纯,放射性物質(zhì)發(fā)生泄漏卸夕。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,257評(píng)論 3 307
  • 文/蒙蒙 一婆瓜、第九天 我趴在偏房一處隱蔽的房頂上張望快集。 院中可真熱鬧,春花似錦廉白、人聲如沸个初。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,262評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽院溺。三九已至,卻和暖如春磅轻,著一層夾襖步出監(jiān)牢的瞬間珍逸,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,485評(píng)論 1 262
  • 我被黑心中介騙來泰國打工聋溜, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留谆膳,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 45,501評(píng)論 2 354
  • 正文 我出身青樓勤婚,卻偏偏與公主長得像摹量,于是被迫代替她去往敵國和親涤伐。 傳聞我的和親對(duì)象是個(gè)殘疾皇子馒胆,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,792評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容