Scrum學(xué)習(xí)筆記

最近需要學(xué)習(xí)Scrum,然后在網(wǎng)上找了很多資料,總結(jié)了一份學(xué)習(xí)筆記,分享給有需要的人。
正式了解Scrum之前先看看一些名詞解釋:

  • 迭代:是重復(fù)反饋過程的活動。目的是為了逼近所需目標或結(jié)果。每一次對過程的重復(fù)稱為一次“迭代”,而每一次迭代得到的結(jié)果會作為下一次迭代的初始值。

  • 敏捷開發(fā):以用戶的需求進化為核心,采用迭代、循序漸進的方法進行軟件開發(fā)。可理解為把一個大項目分為多個相互聯(lián)系,但也可獨立運行的小項目,并分別完成,在此過程中軟件一直處于可使用狀態(tài)。

瀑布開發(fā)模型以文檔為驅(qū)動。在瀑布的整個開發(fā)過程中,要寫大量的文檔,把需求文檔寫出來后,開發(fā)人員都是根據(jù)文檔進行開發(fā)的,一切以文檔為依據(jù);而敏捷開發(fā)它只寫有必要的文檔,或盡量少寫文檔,敏捷開發(fā)注重的是人與人之間,面對面的交流,所以它強調(diào)以人為核心。

Sprint:每一次迭代稱為一個Sprint。
Backlog:其實就是需求列表。
SM:Scrum Master,Scrum過程的管理者。
PO:Product Owner,需求他說了算。
TEAM:架構(gòu)師、開發(fā)人員、測試人員等。
Chicken:其他相關(guān)的人,如老總、客戶。
故事點:一個相對獨立的功能點。
度量:在過程中的一些度量值。如當前系統(tǒng)的BUG數(shù)。
事件:過程中出現(xiàn)的一切事件。


下面正式介紹:

Scrum是迭代式增量軟件開發(fā)過程,通常用于敏捷軟件開發(fā)。采用Scrum,能看到團隊高效工作。

Scrum和XP是敏捷開發(fā)的具體方式,開發(fā)過程中可以采用Scrum方式也可以采用XP方式;Scrum和XP的區(qū)別是,Scrum偏重于過程,XP則偏重于實踐,但是實際中,兩者是結(jié)合一起應(yīng)用的。

Scrum開發(fā)流程中的三大角色

  • 產(chǎn)品負責(zé)人(Product Owner)
  • 主要負責(zé)確定產(chǎn)品的功能和達到要求的標準,指定軟件的發(fā)布日期和交付的內(nèi)容,同時有權(quán)力接受或拒絕開發(fā)團隊的工作成果。
  • 流程管理員(Scrum Master)
  • 主要負責(zé)整個Scrum流程在項目中的順利實施和進行,以及清除擋在客戶和開發(fā)工作之間的溝通障礙,使得客戶可以直接驅(qū)動開發(fā)。
  • 開發(fā)團隊(Scrum Team)
  • 主要負責(zé)軟件產(chǎn)品在Scrum規(guī)定流程下進行開發(fā)工作,人數(shù)控制在5~10人左右,每個成員可能負責(zé)不同的技術(shù)方面,但要求每成員必須要有很強的自我管理能力,同時具有一定的表達能力;成員可以采用任何工作方式,只要能達到Sprint的目標。

Scrum開發(fā)模型圖

Scrum開發(fā)模型圖

Scrum開發(fā)過程描述

  1. PO 首先確定一個 Product Backlog(優(yōu)先排列的一個產(chǎn)品需求列表);
  2. Scrum Team根據(jù)Product Backlog列表,做工作量的預(yù)估和安排;
  3. 有了Product Backlog列表,我們需要通過 Sprint Planning Meeting(Sprint計劃會議) 來從中挑選出一個Story作為本次迭代完成的目標,這個目標的時間周期是1~4個星期,然后把這個Story進行細化,形成一個Sprint Backlog;
  4. Sprint Backlog是由Scrum Team去完成的,每個成員根據(jù)Sprint Backlog再細化成更小的任務(wù)(細到每個任務(wù)的工作量在2天內(nèi)能完成);
  5. 在Scrum Team完成計劃會議上選出的Sprint Backlog過程中,需要進行 Daily Scrum Meeting(每日站立會議),每次會議控制在15分鐘左右,每個人都必須發(fā)言,并且要向所有成員當面匯報你昨天完成了什么,并且向所有成員承諾你今天要完成什么,同時遇到不能解決的問題也可以提出,每個人回答完成后,要走到黑板前更新自己的 Sprint burn down(Sprint燃盡圖);
  6. 做到每日集成,也就是每天都要有一個可以成功編譯、并且可以演示的版本;很多人可能還沒有用過自動化的每日集成,其實TFS就有這個功能,它可以支持每次有成員進行簽入操作的時候,在服務(wù)器上自動獲取最新版本,然后在服務(wù)器中編譯,如果通過則馬上再執(zhí)行單元測試代碼,如果也全部通過,則將該版本發(fā)布,這時一次正式的簽入操作才保存到TFS中,中間有任何失敗,都會用郵件通知項目管理人員;
  7. 當一個Story完成,也就是Sprint Backlog被完成,也就表示一次Sprint完成,這時,我們要進行 Srpint Review Meeting(演示會議),也稱為評審會議,產(chǎn)品負責(zé)人和客戶都要參加(最好本公司老板也參加),每一個Scrum Team的成員都要向他們演示自己完成的軟件產(chǎn)品(這個會議非常重要,一定不能取消);
  8. 最后就是 Sprint Retrospective Meeting(回顧會議),也稱為總結(jié)會議,以輪流發(fā)言方式進行,每個人都要發(fā)言,總結(jié)并討論改進的地方,放入下一輪Sprint的產(chǎn)品需求中;

參考資料:
【1】敏捷開發(fā)-百度百科
【2】Scrum中文網(wǎng)
【3】http://zgynhqf.cnblogs.com/
【4】http://www.cnblogs.com/taven/archive/2010/10/17/1853386.html

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 序 迭代開發(fā)基本需求 迭代要有固定時長(被稱為“時間盒——timebox”),不能超過六個星期。 在每一次迭代的結(jié)...
    陳浩要安靜閱讀 2,899評論 1 13
  • Scrum指南的目的 Scrum是用于開發(fā)和持續(xù)支持復(fù)雜產(chǎn)品的一個框架。本指南包含了Scrum的定義,其中包 括S...
    iceinto閱讀 2,507評論 0 10
  • 一 小丫升了一年級,教室從幼兒班搬到了隔壁那間,同學(xué)多了幾個,語文還是盧老師教的,數(shù)學(xué)卻換了朱老師來教了。朱老師瘦...
    xhy0606閱讀 606評論 4 2

友情鏈接更多精彩內(nèi)容