Scrum與OKR融合實踐經驗分享

很多軟件公司的研發團隊都喜歡用Scrum管理研發流程,Scrum是一個誕生於20世紀90年代的敏捷方法論,CORNERSTONE內部也一直在使用這一方法。

相較於瀑布式開發的其他傳統方法,Scrum最大的優點是關注持續快速迭代以及對變化的適應性。如果使用瀑布式開發,在項目一開始就要確定項目結果,並且要對此達成一致,通常還要有詳細的計劃和項目規範。項目計劃是從這些規範中產生的,通過以項目在未來的完成情況爲出發點,向後推進,以線形的方式規劃出時間、預算和各階段的聯繫性。

瀑布式開發的成品是一份路線圖,能推算出一款軟件到推出之日爲止,需要完成的所有開發工作,而不足之處就是如果在軟件開發過程中出現了變動,包括時間線或各階段連接時出現問題,甚至在很多時候連預算都需要完全重做,實際上這就破壞了計劃。

Scrum關注的是爲了達到一個理想終點的持續快速迭代。取代詳細計劃的是精益管理或者是需求和回顧會議,這些會衡量每一次迭代成果。回顧會議的目的應該圍繞一個問題: “我們所做的工作有沒有讓我們離目標需求更近?”

image.png

Scrum 的力量來自於它能夠管理工作,實現一個未知的、獨特的、或者前所未有的結果。這一方法能系統地、漸進式地解決在研發過程中產生的問題。瀑布式開發只有在其涉及的過程和工作都是可預測的、並且此前已經有人嘗試過的情況下,才能發揮最大功效。

這其中的差別猶如建一座橋和建一艘火箭搭載船的差別。火箭技術相對較新,建造一艘火箭搭載船要有很多增量步驟,重複多次才能獲得成功。美國太空探索技術公司(SpaceX)爲了能讓火箭在船上着陸所做的工作就是一個很好的例子。

反之,人們對建橋的流程已經駕輕就熟且無數次成功地實踐過了。建橋不需要重複很多次,對時間和成本規劃的要求高,這就是瀑布式開發經常應用的領域。

OKR和Scrum的相似之處在於兩種方法都需要有一人專門管理實施情況,我們稱之爲“Scrum Master”或“OKR負責人”,他們的責任就是保證團隊依照規則行事。

Scrum是一種高度規範的方法論,有明確的職責和流程。Scrum的益處包括透明性、項目可見性以及頻繁溝通。團隊集體決定他們在爲期兩週的一個sprint內能夠完成什麼樣的工作,這也使Scrum變得很有民主性。

image.png

其實OKR也有一套規則,這些規則決定什麼是目標O,什麼是關鍵結果KR,以及如何把二者結合起來衡量目標的實現。

和Scrum一樣,OKR有時間表——季度和年度,這比爲期兩週的sprint要長得多。設定OKR首先要做的是公司領導決定需要實現何種目標,接着,團隊設定自己的OKR,並確保團隊的OKR與公司的目標保持一致。

只要每個人都清楚兩種方法的範圍和參數,OKR和Scrum可以成功地結合在一起使用,效果也確實不錯。我們在確立公司OKR後,會進一步落實實現OKR的行動方案。Sprint和行動方案能在行動週期內有機結合,促進團隊OKR的達成。

爲了能讓這兩種方法合拍,很重要的一點是在每個季度開始的時候,一位OKR負責人和一位Scrum負責人與他們的研發團隊坐在一起,決定需要在這個季度完成的最重要的事情(通常爲3項)。

由於OKR週期更長,目標更宏觀,而Sprint涉及的更具體的執行層面工作,因此需要首先考慮OKR。要讓OKR在這一階段就能有效開展, 相對於強調對結果實現的追求,更應關注對結果的衡量。

比如,如果你的目標是解決軟件的bug ,讓產品更完善,那麼,統計消滅了多少個軟件bug並不是一個有效的關鍵結果。每修復一個bug,bug的數量就少了一個,但是如果有更多的軟件bug被報出來,你就沒有讓軟件變得更完善,你僅僅是在數自己修復了多少個bug。

設定了OKR的目標和關鍵結果後,就可以開始規劃Sprint。在這個階段,最重要的是決定Sprint的週期。如果一個Sprint爲期一個月,那一個單一的Sprint目標很可能會直接對應開發團隊3個OKR目標的其中一個。至於更常見的爲期兩週的Sprint,那它的Sprint目標則可能會變成OKR目標的行動方案。

關鍵結果項目化之後,還需要將工作進一步細化,將項目細化爲一個個具體的任務,並確保每個任務都有負責人及截止時間,這樣才能確保每項工作都落到實處還可以最大限度的避免工作延期。

image.png

(圖爲CORNERSTONE可視化任務看板)

我們更推薦第二種方法,因爲這種方法在連接兩個框架的同時還保持了二者最初的目標,即Sprint管理生產和代碼傳輸,而OKR設定目標,衡量評估工作結果。

但是,這也意味着每一個OKR都需要有自己的Sprint時間線。如果你有一個大型的開發團隊在一個產品的不同領域開展工作,比如前期工作、後期工作和系統管理,這一方法就能發揮很好的效果。使用這種方法的話,每一個領域引導1個OKR和1條Sprint時間線,而整個小組內部有3個OKRs。

對於規模較小,沒有能力運轉3條Sprint時間線的開發團隊,我們也推薦這種方法,但是只需要專注一個單一的OKR即可。CORNERSTONE提供了包括任務/需求/測試管理、迭代規劃、缺陷追蹤、報表統計、團隊協作、WIKI、共享文件和日曆等功能模塊,20人以下團隊可免費使用,點擊即可免費註冊CORNERSTONE

image.png

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章