要求不變,反而會花過多時間追求完美
在[Day22] Scrum失敗經驗談 – 承認就是隕石吧!中,提到隕石的恐怖,突如其來的狀況,砸得我們遍體鱗傷,加上Sprint中講求Commitment,所以會容易衍生想像,進入sprint是就必須是全數定版,功能定版、做法定版、UI定版,開發過程之間,不容任何變化。對,也不對。在往下敘述之前,就要先看Scrum的指南,裡面有敘述到「Scrum建立在經驗主義和精實思維之上。經驗主義堅信,知是來自於經驗,以及根據觀察到的事物做出決策。」也是基於此,Scrum的價值不是在於提高產出的效率或講求更快完成,而是在於一個又一個對於經驗有助益的產出,在基於這些經驗協助我們解構複雜的事務,因此Scrum反而是一個快速求必要之變的方式。「開發過程之中,不容任何變化」這句話是對的,對在於整個開發價值是不變的;是錯的,是因為我們會因為過程中經驗的累積,而有更好或必須轉向的觀察與判斷需要執行。我們過去在運行時,將Commitment放在第一位,檢核味道濃厚,所以加深工程師認為規格必須明訂且十分清楚,讓需求與設計單位,備感壓力,我們會開始問起,「是否需盤點完所有需求才能開工?」「需求盤點到多細節?」當設計環節不到完美時,就不能進入工程團隊,這樣的節奏,是瀑布式開發,這樣的模式,是穀倉模式,速度快不起來,要彼此理解又得耗上龐大的溝通成本。
利用累加的經驗解決複雜目標
變化,反而是Scrum的價值,前提在於「價值導向」,一樣透過價值,可以讓工程團隊更早參與設計環節,提早參與的價值在於「溝通與討論」,可以想像Scrum要帶來的是一個輕快且輕便的驗證節奏,所以在每一場會議、行為,都會立下一個時間條件(time box),要塑造完美的產物需要時間,但我們在開發產品上,不一定全數要完美,而是在最適合的時間內,給予剛剛好的解決,時間條件就是要提醒我們不需要過度的討論,也意味著,我們都明白,這些項目都還有更好的空間,既然如此,就不會不變,反而是要靠著我們每多做一步,就可以多優化一步,或者適時調整方向、做法,甚至警告PO價值已不在。
承諾、專注、開放、尊重、勇氣
在我失敗的經驗裡面,是反思,也是我要提醒自己的,並且在Scrum中被重視的5個價值觀:承諾、專注、開放、尊重、勇氣,這些價值觀缺一不可,也不能過於側重倚賴,這樣會讓原本的美意變質。就像我當時,特別僅著重承諾,鑽著答應的事要做好緊盯成員,那樣不是鼓勵正向的事情發生,反而造成原本已經離使用者意識遙遠的人更遙遠了。承諾代表著我們共同看重這件事,來自於工程團隊與需求團隊的尊重,尊重工程團隊的判斷,尊重需求團隊的痛點。一同專注所要打造的價值,保持開放的態度去面對工作與挑戰,這樣整個團隊自然就會有勇氣處理棘手的問題。