scrum

 轉自百度百科詞條

Scrum的特性  

Scrum過程

  Scrum是一個包括了一系列實踐和預定義角色的過程骨架。Scrum中的主要角色包括同項目經理類似的Scrum主管角色負責維護過程和任務,產品負責人代表利益所有者,開發團隊包括了所有開發人員。
  在每一次衝刺(一個15到30 天週期 ,長度由開發團隊決定),開發團隊創建可用的(可以隨時推出)軟件的一個增量。每一個衝刺所要實現的特性來自產品訂單(product backlog), 產品訂單是按照優先級排列的要完成的工作的概要的需求。哪些訂單項會被加入一次衝刺由衝刺計劃會議決定。 在會議中,產品負責人告訴開發團隊他需要完成產品訂單中的哪些訂單項。開發團隊決定在下一次衝刺中他們能夠承諾完成多少訂單項。 在衝刺的過程中,沒有人能夠變更衝刺訂單(sprint backlog),這意味着在一個衝刺中需求是被凍結的。
  管理Scrum過程有很多實施方法,從白板上的即時貼到軟件包。Scrum最大的好處是它非常容易學習,而且應用Scrum不需要太多的投入。

Scrum中的角色

  Scrum定義了許多角色,根據豬和雞的笑話分爲兩組,
  一天,一頭豬和一隻雞在路上散步,雞看了一下豬說,“嗨,我們合夥開一家餐館怎麼樣?”,豬回頭看了一下雞說,“好主意,那你準備給餐館賣什麼呢?”,雞想了想說“餐館賣火腿和雞蛋怎麼樣?”,“我不這麼認爲”,豬說,“我全身投入,而你只是參與而已”

"豬"角色

   是全身投入項目和Scrum過程的人; they are the ones with "their bacon on the line."
  產品負責人代表了客戶的意願。這保證了Scrum團隊在做從業務角度來說正確的事情。產品負責人編寫 用戶故事,排出優先級,並放入產品訂單。Scrum主管(或促進者)Scrum主管促進Scrum過程,他的主要工作是去除那些影響團隊交付衝刺目標的障礙。Scrum主管並非團隊的領導(由於他們是自我組織的),而是負責屏蔽外界對開發團隊的干擾。Scrum主管確保Scrum過程按照初衷使用。Scrum主管是規則的執行者。開發團隊負責交付產品的團隊。由5至9名具有跨職能技能的人(設計者,開發者等)組成的小團隊完成實際的開發工作。。

"雞"角色

  雞角色並不是實際Scrum過程的一部分,但是必須考慮他們。 敏捷 方法的一個重要方面是使得用戶和利益相關者參與到過程中的時間。參與每一個衝刺的評審和計劃,並提供反饋對於這些人來說是非常重要的。
  用戶軟件是爲了某些人而創建!就像“假如森林裏有一棵樹倒下了,但沒有人聽到,那麼它算髮出了聲音嗎”,“假如軟件沒有被使用,那麼它算是被開發出來了麼?”利益所有者(客戶,提供商)影響項目成功的人,但只直接參與衝刺評審過程。經理爲產品開發團體架起環境的那個人。

Scrum會議

  在衝刺中,每一天都會舉行項目狀況會議,被稱爲“scrum”或“每日站立會議”。每日站立會議有一些具體的指導原則:
  會議準時開始。對於遲到者團隊常常會制定懲罰措施(例如罰款,做俯臥撐,在脖子上掛橡膠雞玩具)歡迎所有人蔘加,但只有"豬"可以發言。不論團隊規模大小,會議被限制在15分鐘。所有出席者都應站立。(有助於保持會議簡短)會議應在固定地點和每天的同一時間舉行。在會議上,每個團隊成員需要回答三個問題:
  今天你完成了那些工作?明天你打算做什麼?完成你的目標是否存在什麼障礙?(Scrum主管需要記下這些障礙)
  每一個衝刺完成後,都會舉行一次衝刺回顧會議,在會議上所有團隊成員都要反思這個衝刺。舉行衝刺回顧會議是爲了進行持續過程改進。會議的時間限制在4小時。
  Scrum提倡所有團隊成員坐在一起工作,進行口頭交流,以及強調項目有關的規範(disciplines),這些有助於創造自我組織的團隊。
  Scrum的一個關鍵原則是承認客戶可以在項目過程中改變主意,變更他們的需求,而預測式和計劃式的方法並不能輕易地解決這種不可預見的需求變化。同樣,Scrum採用了經驗方法– 承認問題無法完全理解或定義,而是關注於如何使得開發團隊快速推出和響應不斷出現的需求的能力最大化。

文檔

產品訂單

  產品訂單(product backlog)是整個項目的概要文檔。產品訂單包括所有所需特性的粗略的描述。產品訂單是關於將要創建的什麼產品。產品訂單是開放的,每個人都可以編輯。產品訂單包括粗略的估算,通常以天爲單位。估算將幫助產品負責人衡量時間表和優先級(例如,如果"增加拼寫檢查"特性的估計需要花3天或3個月,將影響產品負責人對該特性的渴望).

衝刺訂單

  衝刺訂單(sprint backlog)是大大細化了的文檔,包含團隊如何實現下一個衝刺的需求的信息。任務被分解爲以小時爲單位,沒有任務可以超過16個小時。如果一個任務超過16個小時,那麼它就應該被進一步分解。衝刺訂單上的任務不會被分派,而是由團隊成員簽名認領他們喜愛的任務。

燃盡圖

  燃盡圖(burn down chart)是一個公開展示的圖表,顯示當前衝刺中未完成的任務數目,或在衝刺訂單上未完成的訂單項的數目。不要把燃盡圖與掙值圖相混淆。燃盡圖可以使'衝刺(sprint)'平穩的覆蓋大部分的迭代週期,且使項目仍然在計劃週期內。

自適應的項目管理

  以下是一些Scrum的通用實踐:
  客戶成爲開發團隊中的一部分。(例如客戶肯定對開發的結果真正感興趣。)和所有其他形式的敏捷軟件過程一樣,Scrum有頻繁的包含可以工作的功能的中間可交付成果。這使得客戶可以更早的得到可以工作的軟件,同時使得項目可以變更項目需求以適應不斷變化的需求。頻繁的風險和緩解計劃是由開發團隊自己制定。– 在每一個階段根據承諾進行風險緩解,監測和管理(風險分析)。計劃和模塊開發的透明 – 讓每一個人知道誰負責什麼,以及什麼時候完成。頻繁的利益所有人會議,以跟蹤項目進展 – 平衡的(發佈,客戶,員工,過程)儀表板更新 – 利益所有者更新 – 你必須擁有預警機制,例如提前瞭解可能的延遲或偏差。沒有問題會被藏在地毯下。認識到或說出任何沒有預見到的問題並不會受到懲罰。在工作場所和工作時間內必須全身心投入。– 完成更多的工作並不意味着需要工作更長時間。

Scrum術語

  下面是Scrum用到的術語:

角色

  產品負責人 Product Owner: 負責維護產品訂單的人,代表利益相關者的利益。
  Scrum主管 Scrum Master: 爲Scrum過程負責的人,確保scrum的正確使用並使得Scrum的收益最大化。一般不翻譯。
  開發團隊 Team: 由負責自我管理開發產品的人組成的跨職能團隊。

工件

  產品訂單 Product Backlog:按照優先級排序的高層需求。
  衝刺訂單 Sprint Backlog:要在衝刺中完成的任務的清單。
  衝刺燃盡圖 Burndown Chart:在衝刺長度上顯示所有剩餘工作時間逐日遞減的圖,因整體上總是遞減而得名。

活動

  計劃會 Sprint Planning Meeting:在每個衝刺之初,由產品負責人講解需求,並由開發團隊進行估算的計劃會議。
  每日立會 Daily Standup Meeting:團隊每天進行溝通的內部短會,因一般只有15分鐘且站立進行而得名。
  評審會 Review Meeting:在衝刺結束前給產品負責人演示並接受評價的會議。
  反思會/回顧會 Retrospective Meeting:在衝刺結束後召開的關於自我持續改進的回憶。

其他

  衝刺 Sprint: 一個時間週期(通常在2周到1個月之間),開發團隊會在此期間內完成所承諾的一組訂單項的開發。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章