解讀敏捷2 - 敏捷實施的六個陷阱
隨著敏捷日益成為主流,各種各樣的敏捷會議召開,一本又一本的敏捷圖書出版,一個又一個的公司前赴後繼的邁向敏捷,好一番火熱景象。這讓我回憶起了當年看報時的一個感受,當時每張報紙的顯眼處都能看到牛皮癬和肝病的廣告,咋一看感覺會治病的人很多,仔細思考下才發覺是根本原因是能治好病的人很少,否則市場上不會那麼熱鬧。敏捷的現狀是不是也是如此呢?
“與其做敏捷,不如變敏捷!Be agile rather than do agile.”但對於大多數公司來講,如果沒做過敏捷,怎麼知道如何變敏捷。而且做敏捷可以檢查和測量,變敏捷則不能,這違背了“不能被測量則不能被管理”的管理定律。但大多數敏捷實施會失敗!那些被敏捷後的美好前景吸引、前赴後繼奔向敏捷的公司基本上是在自尋煩惱,“苦逼敏捷”開始盛行。
竊以為要想成功實施敏捷必須先解決下面六個問題:
1. 沒有目標,為敏捷而敏捷
為敏捷而敏捷,並不是為了解決真正的問題,把手段當做目標。不少公司簡單的被市場宣傳打動,認為敏捷就代表著好,不敏捷就不好。這些公司往往會被輕易的忽悠,高估敏捷實施的效果,希望通過簡單的敏捷實施就能解決面臨的很多問題。因為沒有目標,他們在實施的時候只能力求規範。這是一種符合國情的管理方式,俗稱運動式管理。運動式管理的目標僅僅是為了運動,運動之後才知道自己在裸泳。
貴公司當前的主要問題是什麼?實施敏捷要解決哪些問題?哪些問題是不能通過實施敏捷解決的?
2. 沒搞懂敏捷
不想變敏捷,只想做敏捷。沒有真正投入成本研究敏捷的公司並不知道敏捷因何生效。當然,他們也有研究,例如派人參加兩天的CSM培訓,拿到證書;或者買進兩本敏捷的書籍,看看紅綠模式或者知道每天早上要回答三個問題。這種膚淺的研究把敏捷看做過程,而且是非常簡單的過程。他們往往會低估敏捷實施的難度,高估敏捷實施的效果,結果在真正實施的時候碰的頭破血流。在這種情況下實施敏捷就是一個悲劇。“我遵守所有的規則,人的和神的。而你不遵守規則,但他們愛你勝過愛我。“——《燃情歲月》
敏捷是什麼?敏捷到底是怎樣發揮作用的?需要多長時間?敏捷對什麼沒用?
They told me that the world would be changed if I could answer three questions every morning. Now I've answered them for a month, why hasn't the world been changed?
3. 錯誤的方法:套裝癖
套裝癖是指人們更喜歡看起來完整的東西來滿足他們的心理願望,以逃避獨立思考和解決問題的真正困難。套裝癖現象不僅僅發生在敏捷軟體開發,它體現了人們對解決方案而不是解決問題的熱愛。瀑布模型並不是瀑布模型提出者的本意,但它被曲解成了瀑布模型這樣一個軟體開發解決方案;之所以提出CMM是為了衡量過程中的質量,但它變成了解決軟體開發企業管理問題的解決方案;Scrum不是解決方案,但人們或者是抱怨Scrum解決方案沒有提供足夠的實踐,或者是自己為它加上使用者故事、計劃撲克和其他實踐,一定要把它變成解決方案。人們一邊在市場上追逐套裝,一邊在抱怨套裝原來是中看不中用啊。的確,實施一個套裝比實施一個實踐難多了,但套裝癖們還是樂此不疲。
實施敏捷就是實施Scrum嗎?真的需要所有的實踐嗎?有沒有哪一個實踐做好了,真的有效了?
4. 基礎不行
敏捷軟體開發還是軟體開發,不會因為實施了敏捷,就可以招聘技能更低的人完成工作了。以Scrum為例,Scrum是暴露問題而不是解決問題,解決問題還是要靠人。人與人之間的衝突需要衝突解決能力,團隊建設需要領導能力,對業務的深入理解需要對業務的掌握和分析能力,開發人員的設計編碼能力更別說。Scrum的創始人說過,白痴也可以用Scrum,然後他又補充了一句,當然,他們只能產出垃圾而已。你們公司需要垃圾嗎?
貴公司現在的軟體開發能力如何?經過6-12月後,程式碼的質量能保障嗎?開發人員理解業務嗎?架構是不是讓人很崩潰?
5. 環境衝突
要實施敏捷,卻沒有實施敏捷所需的環境、人和文化。大多數的公司無法包容為了解決問題突破公司規定,敢指出領導問題的人,在這種公司大規模實施敏捷,純屬找抽。這也是很多人談到敏捷都會說,敏捷很好,但是在我們公司不適合的原因所在。而且實施敏捷帶來的透明性會讓壞訊息在開始的時候滿天飛,能否容忍壞訊息?能否正確引導團隊的認識?對管理層是極大的考驗,其實壞訊息一直存在,只是以前被捂住了而已。“貪官奸,清官要更奸。”——來自周星馳《九品芝麻官》
貴公司有沒有更奸的清官?能不能容忍壞訊息?能容忍多久?鼓勵嘗試嗎?還是對任何“錯誤”都要懲罰?
6. 高估研發管理能力
軟體研發管理能力是被軟體開發公司忽視的癌症。有一個非常簡單的問題來考察軟體研發管理能力,“請問貴公司Code review做的怎麼樣?”看看管理層如何回答這個問題,到幾個專案團隊去看看實際做的怎麼樣,問問開發人員對Code review的感受。Code review是搞軟體的人都懂的實踐,人人都知道應該做,但是大多數公司在這一點上都不合格。
貴公司有沒有一個軟體開發實踐是真正推下去了,沒有應付了事的?哪一個敏捷實踐是貴公司準備實施的?怎麼真正推下去?
解讀敏捷
這就是解讀敏捷這個系列的目的了,希望通過這個系列達到如下目的:1)展示我對敏捷的理解,以幫助更多的人真正瞭解敏捷;2)對實施敏捷提出想法和建議;3)提供一些例項供參考。
雖然看起來很容易,但是敏捷真的很難,需要多年的學習和實踐。只想按葫蘆畫瓢,結果就會是按下葫蘆浮起瓢。我的格言是:簡簡單單就能做好的事不值得付出努力。就是因為難,所以做好了才能成為競爭力,才能與眾不同,是這個道理吧。
後續的內容還沒有全部構思好,但考慮中的內容包括:
1)實踐與理論解析
敏捷有多難?從細節看全域性,如何將細節做到極致,從細節理解敏捷。請看後續:解讀敏捷實踐之結對Review,解讀敏捷實踐之每日立會。怎麼理解套裝的Scrum、XP等等。
敏捷背後的理論解析,排隊論,博弈等等。
2)實施方法與樣例
你想解決什麼問題?採用什麼方法?問題域分析與道法術器。
3)雜談
一些相關的事例與感悟。
相關文章
- 解讀敏捷3 - 解讀敏捷實踐之結對Review敏捷View
- 敏捷實踐的誤區和陷阱的七個方面敏捷
- 解讀敏捷1-你在做苦逼敏捷嗎?薦敏捷
- 敏捷實踐經驗分享,企業如何在敏捷開發中實施DoD敏捷
- 敏捷開發一千零一問系列之十五:同時實施CMMI和敏捷哪個為主? 薦敏捷
- 你掉進過“偽敏捷”的陷阱嗎?敏捷
- 敏捷實施步驟與價值觀敏捷
- 敏捷實施中的估算與實際效果 - Ottinger敏捷
- 敏捷專案管理到底怎麼實施?敏捷專案管理
- [TEAP早期試讀]敏捷武士之敏捷簡介敏捷
- Kirill Klimov訪談:東歐的敏捷實施現狀敏捷
- 敏捷的實質敏捷
- 《深入核心的敏捷開發》讀書筆記(2)敏捷筆記
- 經驗分享:在金融企業中實施領域驅動設計的敏捷實踐 | 敏捷聯盟敏捷
- 為什麼有些公司敏捷實施不成功?敏捷
- 敏捷專家認為敏捷框架SAFe實際最不敏捷敏捷框架
- 也談敏捷(2)敏捷
- 用了敏捷實踐就是敏捷專案嗎?敏捷
- 把握敏捷的實質敏捷
- 向敏捷實踐學習,學習敏捷出版敏捷
- 三項執行層的支援,支撐起敏捷實施的天空敏捷
- 敏捷轉型中的敏捷實踐:Leangoo領歌scrum工具私有部署解決方案敏捷GoScrum
- 敏捷開發的6個實戰經驗敏捷
- 敏捷開發|私藏的3個敏捷專案管理工具!敏捷專案管理
- DevOps實施:從敏捷文化與配置檔案的困惑說起dev敏捷
- [敏捷開發實踐](1) 認識敏捷開發敏捷
- SAFe敏捷框架下的工具,實現規模化敏捷開發敏捷框架
- 敏捷專家的衰落——實施敏捷必須面面俱到?敏捷
- 騰訊敏捷之道,實施敏捷開發,看我就夠了敏捷
- Choerodon豬齒魚敏捷管理實踐(三):敏捷會議敏捷
- 瀑布 敏捷與現實敏捷
- 中國敏捷十年實踐者分享:敏捷教練的自我修為敏捷
- 敏捷的思考敏捷
- 敏捷的文件敏捷
- 中式太極敏捷與西式敏捷的區別敏捷
- 敏捷個人-做好一個開發者敏捷
- 敏捷開發的11個重要概念敏捷
- 敏捷開發的26個總結敏捷