Infra 團隊適合 Scrum?


朋友 Scott Liao 問了一個好問題:

底下整理當時在 FB 上的想法。


視野與維度

我的想法如下圖:

這個討論以 Infra 為主體,所以二分法如下:

  • X 軸: 需求來源:分 內部發動外部驅動.
    • 內部指 Infra / SRE / Ops Team 自行提出的需求。
    • 外部指的是 Infra Team 以外的,像是 Feature or Mission Teams
  • Y 軸: Value Area (參考自 VSTS 裡的 Value Area),也就是任務分類,分兩種:Business / Arch,分別指的是 業務導向需求工程導向需求
    • 業務導向需求:有明確的商業目的,滿足客戶,或者改善什麼具體業務目標,通常是由業務團隊驅動、整體公司來看是 #外部驅動。
    • 工程導向需求:偏向工程團隊自行驅動,像是效能改善、導入 Service Mesh、導入 IPv6、導入 Service Discovery、主動監控預警系統、動態流量監控系統 … 等工程架構任務,屬於 內在驅動
  • 方法:圖中的圖示分別表示 Scrum、看板、Waterfall

重新定義問題是:

Infra / SRE / MIS / DBA 應該跑 Scrum or 看板

上圖 Fig1 中的四個象限,可以用不同方法來執行。其實不止 Scrum、看板,Waterfall 也可以,因為實務上的 Infra / SRE / Ops / MIS,很多時候會需要跟第三方 SI 合作,常會發生 callback 有去無回的狀況。大部分的人說看板最適合,但我覺得:

是比例問題,不是零或壹的問題。

回到問題本身,其實我覺得要先定義的不是是用哪個方法,而是要先定義團隊的工作屬性與範圍,問題中提到很多職務:SRE / Infra / Ops / MIS … etc,實際上每家公司定義都不太一樣。去年的這場演講 Ops as Code using Serverless,有一張圖在說明這些職務的差異。下圖就是整理職責、角色、任務,以及他們的分佈:

這張圖可以看得出來,相關的職能與任務分佈,所以看板會是最大的比例,但是有些跟外部 SI 整合、有階段進度的,看板就不適合了,反而 Waterfall 最適合。


現實跟理想

圖中表示的方法是理想的。從兩個角度來討論現實跟理想的距離:需求量分佈人力資源分佈

需求量分佈

下圖是 理想 的需求分佈圖,圖中的 面積 代表著需求分佈比例,這是理想。

但實際的需求分佈是這樣的,通常是依照優先序排出來的:不成比例

圖 2-2 是實際的狀況,但是那些被排擠的需求去哪了?所以實際的需求排擠衍伸的問題:技術債,就是原本該做,但是被排擠出去的面積,如下圖紅色區域。

這些原本該做的,被無限延後的排擠的,通常就是時間管理象限中的 重要、不急 的事情。對時間管理有意識的人、對於系統性思維有認識的人,都會知道:

重要、不急 不做,時間久了,就會變成 重要、緊急

這些事情,通常是 Hardcore、需要磨練、經年累月養成。常見的現象就是用短期解填補,然後,就再也沒有然後了。所以系統性思維的現象又出來了。通常這時候要就、要提出什麼解決方案,都是需要非常巨大成本的。

千金難買早知道,早知道值千金。

人力資源分佈

談完了需求分佈與排擠問題衍伸的技術債,接下來的就是對應到人力資源分佈的問題了。同樣的,先看看理想長得怎樣,面積代表人力資源的分佈比例:

現實是殘酷的,下圖是實際的 人力資源分佈 概況:

人力資源不均,衍生的問題:

  1. 影響任務:系統炸鍋、資安外洩、業務拓展困難、成本飆高
  2. 人力與管理問題:團隊人員爆肝、士氣低落、看不到自己的職涯願景、人力出走

Infra 適合 Scrum?

結論是:

跟 Scrum 或看板沒啥關係,而是組織怎麼看待 Dev & Ops 的協作與任務問題。

隕石 一來,地表上應該沒人擋得住。


想法

這篇整理的重點是把一些普遍的現象用邏輯性的方法整理出來,重點是要讓大家了解現象本身衍生的問題。可能有人會覺得,這些彷彿都是抱怨,沒有提出解決問題的方法。通常會這樣想的人,可能沒有好好的去思考這些現象,只想用短期解,說直白的:

頭痛醫頭,腳痛醫腳

完全沒有掌握整體性,也完全沒有章法在處理需求,更別提無法辨別 SRE 與 MIS 在職能上的差異。

整理 GitHub Post-Incident Analysis 的時候,最後我引用一段故事,同樣的話再複製過來,如果你是管理階層,請好好讀讀這段故事。

扁鵲三兄弟的故事

扁鵲是中國古代歷史上非常著名的故事,這個故事最早出於《鶡冠子·卷下·世賢第十六》中卓襄王與龐暖的問答。原文如下:

煖曰:「王獨不聞魏文王之問扁鵲耶?曰:『子昆弟三人,其孰最善為醫?』扁鵲曰:『長兄最善,中兄次之,扁鵲最為下。』魏文侯曰:『可得聞耶?』扁鵲曰:『長兄於病視神,未有形而除之,故名不出於家。中兄治病,其在毫毛,故名不出於閭。若扁鵲者,鑱血脈,投毒藥,副肌膚間,而名出聞於諸侯。」魏文侯曰:「善。」使管子行醫術以扁鵲之道。 此借扁鵲區別醫術高下喻治國方略之高下,未入《史記•扁鵲列傳》。魏文王,即魏文侯,前445——前396年在位。

底下翻譯是網路上找到的:

魏文王問名醫扁鵲說:「你們家兄弟三人,都精於醫術,到底哪一位最好呢?」
扁鵲答:「長兄最好,中兄次之,我最差。」
文王再問:「那麼為什麼你最出名呢?」
扁鵲答:因為 長兄治病於發作之前,中兄治病於情嚴重之時,我是治病於病情嚴重之時。
長兄治病,是治病於病情發作之前。由於一般人不知道他事先能剷除病因,所以他的名氣無法傳出去
中兄治病,是治病於病情初起時。一般人以為他只能治輕微的小病,所以他的名氣只及本鄉里。
而我是治病於病情嚴重之時。一般人都看到我在經脈上穿針管放血、在皮膚上敷藥等大手術,所以以為我的醫術高明,名氣因此響遍全國。

其實事後控制,不如事中控制,事中控制不如事前控制 !


延伸閱讀

站內資料

參考資料


Comments