在實施或是學習 agile 時, 很多人是把它當作一項新的技術來看待, 認為只要了解實施細節或是流程, 自然就可以在團隊中使用.
事實上, 並沒有那麼簡單....
就算你要導入 TDD, 持續整合, 持續發佈等等這麼技術性的東西, 都還是跟人和文化有關.
如果老闆個性很硬, 喜歡 command and control, 不太喜歡聽別人的意見. 總覺得自己想得最好, 其他的人都還太菜, 這樣 agile 會不 work.
如果經理的技術很好, 是個大神, 大家喜歡叫他大大, 每次他一出聲, 別人就不太敢說話了, 這時候要敏捷也有難度.
如果公司文化是多說多錯, 或是專打提出問題的人, 那這樣也不適合用 agile.
如果團隊成員覺得多一事不如少一事, 只想把自己分內做好就好, 不是很想去在乎別人做了什麼, 這樣 agile 的精神就沒有了.
如果大家都覺得自己做得很好, 沒有什麼東西需要改進, 這樣也很難要導入 agile.
agile 是希望在面對各種變化時, 大家能有應變 change 的能力. 因此他提出的解法 - 敏捷宣言, 都是以改變價值觀為出發點的:
個人與互動 重於 流程與工具
可用的軟體 重於 詳盡的文件
與客戶合作 重於 合約協商
回應變化 重於 遵循計劃
要有做到這些價值觀才算是 agile. 並且第一條的個人與互動, 就明明白白的告訴你, 人和文化是最重要的.
所以, 我很少看過那些執行 agile 很好的團隊, 是在強調用了 Redmine/Jira, 或者是是裡面有某位大神, 或是因為誰在這個團隊中.
通常是大家覺得團隊氣氛很好, 願意去嘗試一些改變, 然後大家會互相幫忙鼓勵, 不是老闆在主導, 是大家願意做得更好.
如果有爭吵, 也是為了把東西做得更好, 也是對事不對人. 不會在私底下做些小動作, 或是在背後放話. 不會刻意去維持皇城內的祥和, 可是也不會吵到失去控制.
所以, 了解 scrum 的流程, 或是知道 TDD/CI 要怎麼做, 這些都很重要. 但是前提是, 你要好好把人搞定, 建立一個大家願意面對 change 的環境, 否則要推 agile 是有點奢談.
全站熱搜
留言列表