若您正負責或參與一個產品、工程或軟體開發團隊,您之前很可能聽過 Scrum 這個詞。Scrum 是專為團隊設計的架構,可快速建置及疊代,並實作 Scrum 流程,以利大家共同合作,解決複雜的問題。即使您不屬於產品、工程或軟體團隊,您仍可能受益於 Scrum。此文章闡述您需要瞭解關於 Scrum 的所有內容,包括它是什麼,以及何以它這麼強大。
Scrum 是 Agile 協助團隊協作並完成高影響力工作的一套架構。Scrum 架構提供價值、角色和準則所構成的藍圖,以利您的團隊專注於疊代及持續改善。
依照傳統,Scrum 是以衝刺活動來運作,這通常是為期兩週的工作階段,在階段結束時須完成特定的交付項目。另外還有兩個 Scrum 活動:每日站立會議,顧名思義指的就是每天舉行一次的會議。Scrum 團隊有機會彼此交流 15 分鐘,並協調每日的活動。第二個活動 (衝刺回顧) 則是在衝刺結束後舉行。衝刺回顧是由 Scrum 主持人舉行,在此活動期間,團隊有機會反思自己的衝刺過程,並對未來的衝刺活動進行調整。
用 Asana 管理敏捷團隊您可能聽過 Scrum 與其他方法 (如看板或敏捷管理)。這些架構雖各自扮演獨特的角色,引導團隊如何協作並持續改善,但它們在精實法架構中彼此具有高度關聯性。下文比較它們之間的異同之處:
敏捷管理是一套專案管理的哲學,有助於團隊持續改善。敏捷團隊深信疊代及漸增式開發的做法有助團隊回應改變以及因應不確定性。Scrum 和看板都是敏捷法的分支,可把敏捷法視為這兩個分支的總稱。
用 Asana 管理敏捷團隊Scrum 是敏捷法當中最受歡迎的其中一種。若您使用 Scrum,您所在的團隊就是敏捷團隊。但 Scrum 架構還有其他角色和系統來協助團隊提高敏捷度。如同敏捷法,Scrum 的團隊會持續朝改善的方向努力,但有別於敏捷法 (更像是一種哲學觀或架構) 的是,Scrum 會建立明確的方式讓團隊能持續改善——透過衝刺、站立會議和回顧等工具來達成。
看板架構也是敏捷法的一個支派。看板是以可視化的方式管理持續性的流程及工作。透過看板工具,團隊能以一套方式將在不同階段變動的工作可視化呈現,直到完成為止。通常使用 Scrum 的團隊會在工作流程看板上這麼做,但這樣做並非 Scrum 架構的必要條件。
閱讀:看板與 Scrum:有何差異?人們現在所談到的「Scrum」,最早見於 1986 年哈佛商業評論文章新新產品開發遊戲,該文由竹內弘高與野中郁次郎所撰。竹內弘高與野中郁次郎從英式橄欖球借用了「Scrum」這個名字,他們說道:「如同英式橄欖球一樣,那顆球會在團隊內持續傳下去並在球場上移動。」
後來,1995 年肯‧施瓦伯和傑夫‧薩瑟蘭發表了敏捷宣言及 SCRUM 開發流程兩份著作,進一步發展並定義了 Scrum。
施瓦伯和薩瑟蘭的 Scrum 從某種意義上說,是對軟體開發瀑布模式的反其道而行之。在瀑布模式中,專案會被拆解成依照時序的階段,而每個階段的交付項目則成為開啟下一階段工作的鑰匙。施瓦伯和薩瑟蘭相信軟體開發人員可得益於更具彈性、更可疊代的方式,進而能持續回應並因應其環境而調整,以便為客戶建立最佳的產品。
自第一個作品發表之後,史瓦伯和薩瑟蘭又發表了 Scrum 指南。這是一份他們會定期更新的活化文件。根據 Scrum 指南所述,Scrum 鼓勵「團隊瞭解其工作技巧是否有效,鼓勵團隊持續演進並自我改善。」
您若實施 Scrum 流程,最重要而必須瞭解的一點是,Scrum 架構仰賴一套持續改善的系統。使用 Scrum 法時,您認定在衝刺活動一開始時,您可能不知道任何事,而您可以根據在衝刺過程期間取得的資訊,視需要調整流程。
那麼:究竟什麼是 Scrum?若您使用 Scrum,您的團隊會做些什麼事?以下說明讓您進一步瞭解 Scrum 流程的內涵:
1. 整理待辦項目。 為了開始一個 Scrum 衝刺活動,團隊負責人 (也稱為 Scrum 主持人) 會找出應該要從您的產品待辦項目抽出哪些工作——亦即須完成的工作。為了儘可能讓 Scrum 衝刺辦得成功,請務必在一處清楚記錄產品的待辦項目。不妨使用專案管理工具來收集所有這類的資訊。
2. 舉辦衝刺規劃會議。 開始您的 Scrum 衝刺之前,您需要知道自己要專注於什麼事。在衝刺規劃會議中,您將評估待辦項目中有哪些工作是您團隊在此特定 Scrum 衝刺期間要全心投入的。若要開始,請試用我們的免費衝刺規劃範本。
3. 開始您的 Scrum 衝刺。 典型的衝刺是為期兩週的活動,但您也可根據團隊如何能最佳運作為前提,舉辦較短期或較長期的衝刺。在衝刺期間,團隊會以您在衝刺規劃會議時整理出來的待辦項目為基礎,從中找到各個項目並投入心力工作。
4. 主持每日 Scrum 站立會議。 與您的 Scrum 團隊規劃每天開 15 分鐘的會議。利用每日站立會議的機會,簡述自己正在進行的工作,並針對遭遇的任何未預期瓶頸,進行任務分流。若要以最有效的方式進行每日站立會議,請試用我們的免費日常站立會議範本。
5. 在衝刺審查期間呈現您的工作。 完成 Scrum 衝刺後,您的團隊應集合起來舉行衝刺審查活動。在此期間,由您的 Scrum 團隊呈現「完成」的工作,供專案關係人核准或檢驗。
6. 在衝刺回顧活動期間相互連結並反思。 衝刺結束後,花點時間討論對其過程的想法,以及未來可以改善哪些部分。請記得,Scrum 的信念是持續改善流程。所以,請在下一個衝刺勇於嘗試新流程,或將您覺得可能效果較差的策略打掉重練。請試用我們的免費衝刺回顧範本,為您的下一個會議提供指引。
開始使用 Scrum 法前,請務必讓團隊就何謂「完成」取得共識。因為 Scrum 運作時仰賴持續改善的流程,這可能沒有您想像的那麼顯而易見。在 Scrum 中,沒有任何事是完美的,因為您的團隊是有彈性的並且會持續改善。因此「完成」並不表示「無法再更好了」,而是指您的 Scrum 團隊目前會停止再向其投入心力。
例如,以下幾個「完成」之定義,分屬於不同的 Scrum 團隊:
產品已就緒,可供發佈。
產品已經過測試並就緒,可在 Beta 環境中發佈。
產品已接受驗收測試,可向所有使用者發佈。
無論您團隊的「完成」定義為何,請務必讓所有人取得共識。一旦您有自己的定義,建議將它存放在一個事實來源中心,並經常參照此定義,尤其是在衝刺審查期間,更是有必要。
在 Scrum 法中,成果是指您製造的某個東西,例如為了解決一個問題而製造的工具。Scrum 中有三項成果:產品待辦事項、衝刺待辦事項,以及產品增量。
產品待辦項目是必須完成的主工作清單。此清單應由專案經理或產品經理進行任務分流。請注意,您的團隊不見得一定會投入於產品待辦項目所列工作。產品待辦項目中所列項目是您團隊在 Scrum 衝刺期間可以投入心力的選項。專案經理應經常根據來自客戶、市場或專案團隊的新資訊,重新排序及重新整理產品待辦項目。
衝刺待辦項目集結了您團隊於 Scrum 衝刺期間致力投入的工作或產品。這些項目是在衝刺規劃會議期間,從產品待辦項目中挑選出來的,並且會移動至您團隊的衝刺規劃專案 (若有的話)。
您的團隊可能無法在每次的衝刺期間交付待辦項目的所有項目,但您可能會在衝刺進行至一半時,新增項目至衝刺待辦項目。若您發現自己頻繁地這麼做,請在衝刺規劃階段多花一些時間,以便對衝刺期間要做些什麼事有具體的概念。
產品增量是您在衝刺結束時將交付的事項。這可能是新產品,也可能是新功能、功能改善或錯誤修正,或任何您團隊需要交付的其他事項。請就您要在衝刺審查中要呈現的增量進行規劃。屆時,該項目是否順利出貨,將視 Scrum 專案關係人對於增量以及它們是否「完成」的看法而定。
Scrum 有三個主要角色:
產品經理。 指的是負責產品待辦項目的人,他們連結使用者需求,並著重於向團隊及其他高階專案關係人說明使用者故事。好的產品經理會闡明接下來最重要要交付的是什麼項目。最終,他們應是決定一切是否就緒可供出或的人 (且須偏向能經常出貨)。
Scrum 主持人。 Scrum 主持人是舉辦各種 Scrum 活動的人。可將他們視為 Scrum 專案經理和輔導師。Scrum 主持人應輔導每日站立會議並主持衝刺規劃、審查及回顧會議。
Scrum 團隊。 Scrum 團隊是指投入心力於衝刺活動的所有人。團隊成員應自我組織並積極協作,以達成持續改善的目標。
有六個 Scrum 原則可協助您應用 Scrum 架構,並獲益於 Scrum。分別說明如下:
掌控實證流程。 Scrum 團隊的信念是透明度、檢驗及適性調整。
自我組織。 儘管您的 Scrum 團隊會有角色和規則,但每位 Scrum 成員都應被賦予權能,以便對其任務及工作勇於承擔。Scrum 的信念是,共同擔責可帶來更富有創意和更積極主動的團隊。
協作。 若您的團隊在 Scrum 衝刺期間及之後能共同合作,將能締造最佳成果。
價值導向的優先順序。 Scrum 衝刺的目標是締造最高的商業價值。為此,您必須打從 Scrum 流程的一開始,就安排工作的優先順序。
規劃時間箱。 Scrum 流程會有基於時間的各種活動,例如衝刺活動本身、每日站立會議以及回顧會議。由於 Scrum 運作的信念是持續改善,因此將工作劃分為時間盒至關重要,如此才能邁向下一個任務,並改善未來的工作。
疊代式開發。 採用 Scrum 法時,您的第一個專案不會是完美的,但藉由疊代式建構,您的團隊將有最大的能力因應客戶的需求,並根據價值導向的優先順序,來修改產品和產出。
若要得益於 Scrum,團隊必須謹守五個 Scrum 主要價值,其定義如 Scrum 指南所述:
許諾: Scrum 團隊是一個單位,且團隊成員必須相互信賴。Scrum 團隊成員許諾在衝刺期間致力投入其中,並戮力追求持續性改善,以找到最佳解決方案。
勇氣: 在執行 Scrum 期間,團隊可能會面臨困難的問題,而沒有明確的答案。Scrum 團隊有勇氣提出開放性、困難的問題,並誠實地回答,以達成最佳解決方案。
專注: 執行任何一個 Scrum 衝刺時,Scrum 團隊都會從專案待辦項目開始作業。Scrum 團隊專注於他們從待辦項目選擇的工作,以便在衝刺結束之前,完成交付項目。
開放: 執行 Scrum 期間並非所有事都能天衣無縫,毫無阻礙。Scrum 團隊成員必須對新的構想和機會保持開放的態度,因為這兩個元素都有利他們個別學習,且對改善他們的產品或流程有幫助。
尊重: 協作是 Scrum 的關鍵要素。此外,為了支持團隊協作,團隊成員必須互相尊重、尊重 Scrum 主持人以及 Scrum 流程。
Scrum 並不適用所有人,但它也不僅限用於產品、軟體開發及工程團隊。任何團隊都能採用 Scrum 架構,並透過持續性的改善來完成出色的工作。以下為使用 Scrum 的一些優缺點:
Scrum 對需要頻繁建造及交貨的團隊最有效用——無論是像程式碼或新功能這類傳統「產品」,或是較不典型的 Scrum 「產品」(行銷活動或創意資產) 皆然。
依循 Scrum 架構運作的團隊可得益於靈活性和彈性。Scrum 流程有助您改善團隊合作,並更有效地達成目標。此外,Scrum 團隊始終確切地知道自己投入在什麼工作中,因為他們是從產品待辦項目抽出任務來進行工作,他們也清楚自己的目標是什麼,因為所有人都對「完成」的定義有共識。
Scrum 專案有可能經常受範圍潛變的困擾,因為 Scrum 流程樂見並鼓勵改變。但若改變過多,或您獲得過多不一致的客戶回饋片段資訊,您就可能會不斷重複作業,而沒有任何實質結果。
解決方案:請務必清楚定義每個衝刺的目標及增量。此外,確保您的整個 Scrum 團隊都明瞭何謂「完成」,以免他們做過頭了。如有必要,請實施變動控制流程,避免發生這類問題。
Scrum 團隊召開許多會議,除了定期舉辦的衝刺規劃和衝刺審查以外,Scrum 團隊還會舉行每日站立會議。
解決方案:若您覺得自己的 Scrum 每日會議幫助不大,請找個可替換的方式進行。在專案中掌握站立會議的資訊,可能有助您只專注於最有助益的事。
若您不屬於專案、工程或軟體開發團隊,要實施 Scrum 可能很困難 (但並非不可能)。
解決方案:若您的團隊決定使用 Scrum,請務必明確說明 Scrum 流程可以如何對您產生助益。可能的話,請找出目前的痛點,並指出可能有幫助的 Scrum 活動。此外,請在前幾次的 Scrum 衝刺中,規劃幾個訓練會議,以協助您的團隊獲致成功。
最出色的 Scrum 團隊是會協作、疊代工作的團體,他們明瞭自己在每次的衝刺活動中努力投入什麼工作。若要達到這個目標,您的工作需要有一個事實來源中心,例如 Asana。瞭解敏捷團隊如何運用 Asana 來執行 Scrum。