Jan. 20 21:36~22:58
想過著跟派大星一樣的生活嗎?
不少《笑談軟體工程:敏捷開發法的逆襲》這本書的讀者告訴Teddy,他們是因為封面上面印著「從此每天準時下班享受幸福人生!」的這句話而買這本書。這句話很顯然是出版社的行銷口號,但的確也反應出廣大勞工「軟工」朋友的心聲。
時間過得好快,出版《笑談軟體工程:敏捷開發法的逆襲》至今也已經超過一年半的時間。幾天前在寫〈你如何評價成功〉這一篇文章的時候,想起了一個基本問題:「為什麼要採用Scrum(敏捷開發方法)」?
為什麼要採用Scrum(敏捷開發方法)」?
是為了幫公司賺錢、為了提升軟體品質、為了實現自我理想、為了準時下班過家庭生活、還是單純為了護肝?
***
如果只是為了「賺錢」,其實和有沒有採用Scrum並沒有絕對的關係。生意模式錯誤、Product Owner(很可能是公司的大老闆)亂作夢,需求搞錯方向。總總因素,都可能讓一個良好的Scrum團隊做到公司倒閉。相反地,老闆有辦法去包工程、搶案子,就算是只找一堆22K的便宜人力,公司還是很可能賺大錢。
當然上面提到的兩種狀況算是兩個極端,大部分的團隊,大致上處在「缺少一個有效做事方法」的位置,如果可以找到一個持續改善的做事方法,就可以儘量平衡業務面(賺錢)、個人發展、與生活面等因素。
雖然Teddy讀了很多敏捷開發、精實開發、XP、Scrum、Kanban方面的書,不過很多關於軟體開發應該如何進行的原則,是受到了Alexander很大的影響。在思考「為什麼要採用Scrum(敏捷開發方法)」這個問題的時候,又回去翻了Alexander的〈The Oregon Experiment〉,他在說中提到:
We … propose a process which can allow people … to take care of the environment for themselves, and have some measure of control over their own lives.
(我們提出一個流程,允許人們為了自身而去關心環境,並且對於自己的生活有些控制措施)
想來想去,這一句話剛好可以解釋為什麼要採用Scrum、其他敏捷開發方法、或精實方法。身為人,在自由社會裡面,為什麼不能掌控自己的生活?為什麼還要把「掌控自己生活」列為追求的目標?雖然說是「自己的生活」,但其實很多時候自己的生活卻是由別人幫你決定要怎麼過。光是一個「責任制」、「加班文化」,就打死一堆人。
老闆:想不想賺錢?想的話就不要妄想過自己的生活。
***
Teddy在《笑談軟體工程:敏捷開發法的逆襲》書中曾經提到:「我希望改變人們在台灣開發軟體的方法」,其實也就是Alexander所說的希望鄉民們可以「have some measure of control over their own lives」。至於這個方法,一年半前寫書的時候認為是「Scrum + Lean + XP(Agile Practice)」,現在這個想法還是沒變,但是可以在Agile Practice的大帽子裡面塞入一個Agile UX來彌補Scrum在需求發展上的不足。
***
為什麼要採用Scrum(敏捷開發方法)」?因為想要過人的生活啊。
***
友藏內心獨白:難道現在過的就不是人的生活?
to take care of the environment for themselves感覺跟考評制度比較有關?
回覆刪除因為 Alexander 的書是在談建築,所以會有「to take care of the environment for themselves」,這個environment應該可以包含自然環境、生活環境、組織...吧....XD。不太確定可否算是考評制度....
刪除see, thank you
刪除身為一個專業的軟體從業人員,我只想採用無愧於自身專業的方法。至於這樣是不是就是人的生活,比較像是見仁見智的問題。
回覆刪除如果「無愧於自身專業的方法」需要讓你每天加班到深夜,這種方法也很難持久吧....XD。
刪除寫的真好
回覆刪除讓我想到被討厭的勇氣跟葉問電影的一句話:每個人要走的路,都是自己選的
回覆刪除