吐槽Scrum,說說Agile
讓我吐槽先
1. 風雲突起
現在的工作最開始並不是Scrum模式,計劃經濟模式,計劃到連bug都要老闆分配的狀態。突然有一天公司開始號召快速適應變化。革自己的命,搶別人的路,讓別人無處可走,成為變革的主題。2015號稱是自我革命的一年。說到Agile,自然最先想到的是就是Scrum。於是下面就開始炸鍋了,高喊著口號向Scrum大躍進。從上到下生生將Scrum搞成了群眾運動。各種Scrum分享,內部培訓,外部培訓,每一個有空地的角落都被白板佔據。會議室,角落,位置都是站會的陣地。按理說都已經全員動員了,應該情況scrum越走越順才對。但是1年下來,似乎沒看到團隊真正的敏捷起來,會倒是越開越順,每次會議的內容越來越發散,時間越來越長... ...。
2. 邯鄲學步
大老闆搭臺,小老闆指揮唱戲。剛開始有老闆連Scrum是什麼估計還沒弄明白,看著別人每天站會,也開始有樣學樣,一個4、5個人的團隊,就敢每天上午安排一個小時的Scrum meeting(花點時間google一下Agile/Scrum真的很難!你懂的). 每天把狀態過一遍,狀態包括但不限於做了什麼,結果是什麼,怎麼做的,怎麼想的,打算怎麼做... ....。尼瑪超過一個小時是常有的事。最奇葩的是有人BBB一個上午,跟你分享他一個問題是怎麼分析,怎麼解決,怎麼驗證,怕不明白還拉著大家每一步的demo。一個上午過去,下午你一驗證他的方法,發現最簡單的case直接fail的時候。當時就感覺一股強大的衝擊波迎面而來,恍惚中有種看到了猴王的感覺,敬仰之情難以言表,唯有跟隨萬千猴子猴孫載歌載舞,在風中搖擺!
3. 自娛自樂
慢慢的,一切開始上了正軌,backlog,planning... 有模有樣。4個禮拜一個sprint,雖然經常delay release 但是好歹規律了。但是做著,做著在sprint中間,PO/SM會突然說sprint週期是3個禮拜了是怎麼回事。提點一下,JIRA翻出來看一下,嗯,搞錯了,原來以前都是4個禮拜。好,過了一個禮拜,又變成3個禮拜了是咋回事!!!
臨近release,今天說release時間是下週二,大家開始計劃把一些未完成低優先順序事情推遲到下一個sprint,並且開始做測試相關工作。過兩天突然變成release時間是下週五。到了下週一,再來release時間是再下週...... 這個時刻估計思路最清晰的也只有PO/SM, 深得Agile的精髓——擁抱變化,雖然是大冬天,抱得太緊也難免太熱燒包啊!!!
4. 我不入地獄,誰愛去誰去
碼農最不喜歡的也許就是改需求。碼農第二不喜歡的事情就是每一個feature都有N種方式實現,但總有人要求你用一種最爛的方法去做。但是,碼農應該是喜歡敏捷文化的,因為Agile號召將每一個story都拆分得足夠小。所以需求改變也會相應的被拆分,分解,將變化無限縮小,所以號稱擁抱變化的Agile神奇的將一個Sprint變得相對靜止了。另外敏捷文化的一個重要根基是信任,基於信任的基礎去除繁雜的規則、流程。讓每個碼農都可以放手將大部分的精力放在開發上。
實際執行中,當一個團隊從計劃驅動的方式轉換到scrum模式時,中層管理對往服務型的管理團隊轉變充滿了畏懼(當然也有可能是其他原因),不願放手權力,又不敢承擔責任。最中導致Scrum跑得不論不類。程式猿夾縫中求生存,日子過得反不如計劃式,戳一下走一步的方式。Scrum的快+傳統的亂,這是何等的煎熬!比如:
1),Sprint過程中,PO不能在Sprint開始的時候確定一個sprint中需要完成的需求,隨便拉幾個backlog。然後在Sprint執行過程中,借擁抱變化之名,隨意增加新的backlog,將正在開發的backlog移出當前sprint,隨意打亂開發計劃。尼瑪,馬上要release還在換feature,這算什麼情況。加feature我能理解,客戶需要,開發好的feature移到下一個sprint,我也接受。尼瑪費了老大勁設計、實現的程式碼也得花時間移出去,等需要這個feature再加進來... ...
2),當前架構不能適應新的需求變化,需要對原有架構進行改變才能適應新的需求時。PO/SM居然第一反應不是怎麼樣才能保證滿足需求的持續迭代,而是需要做這麼大的改變,作為“豬”的你怎麼說服更大的老闆同意花efforts去這個改變。思想,思想要跟上啊,親,需求是客戶說了算啊!覺悟,覺悟要有啊,小弟,升職,加薪都還得靠老闆!
3),PO將計劃經濟的流程帶入scrum,每一個細節都不放過,每一個feature的設計原則,實現都要確保自己能明白,最終才能開始實現。尼瑪一個feature我寫程式碼才只要一個禮拜,讓PO明白居然要花兩個禮拜。文件寫了兩輪,講要好幾遍,講的時候聽明白了,過幾天又不明白了,又得重新來一遍,這算是啥情況!