Scrum概述
Scrum是軟件開發中最流行的敏捷框架。Scrum是一種迭代的方法,他的核心是沖刺(Scrum的迭代術語)。為了支持這一過程,Scrum團隊使用特定的角色、工件和事件。Scrum團隊在整個項目中通過檢驗確保他們達成過程中每一部分的目標。
跟隨沖刺的節奏
在每一個沖刺中,開發團隊開發和測試產品的一個功能部件,直到產品負責人接受它并且使其成為一個潛在的可交付產品。當一個沖刺完成,另一個沖刺便開始。Scrum團隊在每個沖刺結束時以增量形式交付產品特性。產品發布通常發生在一個沖刺結束或者多個沖刺結束之后。
沖刺的一個核心原則是他的周期性:沖刺及其過程是周而復始的,如下圖所示。
在一個敏捷項目中,使用檢查與調整原理會成為日常基礎工作中的一部分。
1.在沖刺中,你對照沖刺目標以及發布目標不斷進行檢查以評估進展情況。
2.你在組織中召開每日例會,評審項目團隊昨天已完成的工作和接下來一天要完成的工作。基本上,Scrum團隊根據沖刺目標檢查它的進程。
3.在沖刺結束時,你通過召開回顧會議來評估績效和對必要的改進作出計劃。
檢查與調整聽起來也許是繁冗復雜且有點正式,但其實不然。使用檢查與調整解決問題,并不需要你想太多,你在今天試圖去解決的問題在未來往往會發生改變。
理解Scrum的角色、工件和事件
Scrum框架為項目定義了特定的角色、工件和事件。
Scrum的3個角色(項目中的人員)如下。
1.產品負責人。代表項目的業務需求方,并負責解釋需求。
2.開發團隊。執行日常工作。開發團隊專注于項目并且是跨職能的,也就是說盡管團隊成員你可能有自己的專長,但是每個成員在項目中都能承擔多種項目工作。
3.Scrum主管。負責保護團隊遠離組織的干擾,移除障礙,并保證過程的一致性。
此外,Scrum團隊發現當他們與另外兩個非Scrum特定角色一起密切工作時,會更加有效和高效。
1.干系人。干系人是指任何一個受到項目影響或對項目有投入的人。盡管干系人不是正式的Scrum角色,但在整個項目中,Scrum團隊與干系人一起緊密工作是必不可少的。
2.敏捷導師。導師是在敏捷技術和敏捷框架上經驗豐富的權威。通常這個人來自項目所在部門或組織之外,所以他能以一個局外人的角度客觀地支持團隊。
Scrum有特定的角色,同樣Scrum也有3個有形的可交付的成果,被稱為工件(artifacts)。
1.產品待辦列表。完成的需求列表,通常用來記錄定義產品的用戶故事。產品待辦列表會貫穿于整個項目。所有代辦事項,無論詳細程度如何,都在此列表中。
2.沖刺待辦列表。一個給定的沖刺中的要求和任務列表。產品負責人和開發團隊在沖刺計劃階段為沖刺選擇需求,同時開發團隊把這些需求分解到任務中。不同于產品待辦列表的是,只有開發團隊可以變更沖刺待辦列表。
3.產品增量。可用的產品。無論產品是一個網站還是一所新房子,必須足夠完整,以便展示其可用的功能。在項目中,當一個產品包含了足夠可交付的功能,從而滿足客戶對這個項目業務目標后,你可以宣布這個Scrum項目完成。
最后,Scrum還有4種關鍵的會議,稱為事件(event)
1.沖刺計劃會議。在每個沖刺開始之前召開。在這類會議上,Scrum團隊決定哪些目標、范圍和任務納入確定的沖刺待辦列表中。
2.每日例會。每天召開,時長不超過15分鐘。
Scrum每日例會中,Scrum團隊成員做3項目匯報:
團隊成員昨天完成了什么;
團隊成員今天將要做什么;
團隊成員當前的障礙是什么。
3.沖刺評審會議。在每個沖刺結束時召開。在這個會議中,開發團隊向干系人和組織整體展示他們在沖刺中完成的已被驗收的產品模塊。
4.沖刺回顧。在每個沖刺結束時召開。這是一個內部會議,Scrum團隊的成員(產品負責人、Scrum主管、開發團隊)討論沖刺中的成功作法、失敗現象以及他們將如何在下一個沖刺中進行改進。這個會議是以行動為導向,換句話說,項目中的酸甜苦辣、五味雜陳還是在別處釋放吧。會議最后將為下一個沖刺形成切實可行的改進計劃。
口號:自由、平等、奮進、拓新
自由開放,不受約束,擼起袖子就是干,大家平等,暢所欲言,振奮向前,奮勇前進,開拓創新。