l

2014年1月21日 星期二

為什麼要採用Scrum?

Jan. 20 21:36~22:58

螢幕快照 2014-01-20 下午10.54.43

想過著跟派大星一樣的生活嗎?

 

不少《笑談軟體工程:敏捷開發法的逆襲》這本書的讀者告訴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(敏捷開發方法)」?因為想要過人的生活啊挑眉質疑

***

友藏內心獨白:難道現在過的就不是人的生活?

6 則留言:

  1. to take care of the environment for themselves感覺跟考評制度比較有關?

    回覆刪除
    回覆
    1. 因為 Alexander 的書是在談建築,所以會有「to take care of the environment for themselves」,這個environment應該可以包含自然環境、生活環境、組織...吧....XD。不太確定可否算是考評制度....

      刪除
  2. 身為一個專業的軟體從業人員,我只想採用無愧於自身專業的方法。至於這樣是不是就是人的生活,比較像是見仁見智的問題。

    回覆刪除
    回覆
    1. 如果「無愧於自身專業的方法」需要讓你每天加班到深夜,這種方法也很難持久吧....XD。

      刪除