敏捷是怎樣煉成的
很早之前,就有了寫小說的衝動,寫一本給程式設計師看的小說,寫一本能夠反映中國程式設計師生活的小說。曾幾何時,“沉默寡言”、“喜歡獨自思考”,甚至“木訥”成為程式設計師的標籤。其實在每個程式設計師心中,除了對技術的痴迷,他們也熱愛生活。他們改變著技術,同時也被技術改變著。他們是一群普通的人,也是自己心中的英雄。
之所以選擇敏捷開發的主題作為《軟體英雄傳》的第一部,不僅僅是因為敏捷開發在這兩年被炒得火熱,其實更多的還是在於在今天這樣一個軟體工業化開發的時代,團隊合作和專案管理已經成為每一個程式設計師不可缺少的必修課。而目前,有關敏捷軟體開發方面的書籍95%來自於國外,或者中文翻譯,或者影印,還沒有一本真正寫給中國程式設計師自己看的書。選擇用小說體的形式來講述敏捷開發的故事,讓複雜的概念變得通俗易懂,不用高深的術語蒙人,可以最大程度地幫助喜歡敏捷開發的讀者在瞭解什麼是敏捷開發的同時,增加閱讀的*。
王立傑是我多年的好友和同事,在敏捷開發方面有著豐富的實踐經驗。我們一起努力將自己對敏捷開發的理解和開發過程中的所見所聞所想所憂結合起來,儘可能地用深入淺出的方法把理論和實踐透過小說裡的人物和故事講給讀者。有意思的是,由於之前我們都沒有太多寫作小說的經驗,在《敏捷無敵》這部小說的早期策劃階段,我們首先將想要納入這部小說的知識點、方法論、涉及的敏捷工具等像列Backlog一樣羅列出來,而後在MSN和gTalk的閒聊中,在麻辣誘惑的福壽螺和毛血旺的飄香中,阿捷、大民、阿朱、阿紫、Charles李等個性鮮明的人物就誕生了。出現在主人公阿捷身邊的愛情故事,則是希望每一個熱愛技術的程式設計師都可以在忙碌的工作之餘,找到自己生活的另一半。
由於交稿的時間相對有限,我們像組織敏捷軟體開發一樣將所有的章節分成若干個Sprint來完成,幾個快跑下來,《敏捷無敵》的書稿就這樣煉成了。目前《軟體英雄傳》的第二部——《安全至上》也已經在我們的策劃中,在《安全至上》中,您不僅可以更深入地瞭解到軟體開發中軟體安全的重要性,而且會對現有軟體開發模式中一些習以為常的做法產生新的認識。希望我們的《軟體英雄傳》能讓每一個程式設計師在自己的“程式人生”中都成為英雄。
更多請訪問
許舟平
2009年3月底
Richard和敏捷
Richard是我接觸最多的一個老外,因為大家一直一起做事,無論E…mail,MSN還是Conference Call,每天都要交流上幾次。他們一幫老外負責做一個供內部其他Team用的測試工具,我們一撥國內兄弟負責做該工具所需的Library,有點像Visual Studio與MSDN Lib的關係,兩者互為補充,缺一不可。本屬於一條繩上的螞蚱,但從未一榮俱榮過,更多的是一損俱損。Richard們是非常有創新精神的,一個本地使用的工具,為了更好地分層,不僅僅分成Server和Client,還創造性地使用了CORBA和ORB,融合了C和J*a兩大主流開發語言,進而帶來了效能和維護上的N多問題。現在想想,一下子就能接觸到這麼多技術,應該說這是公司提供給我們所有人的一次寶貴練手機會。
給內部客戶服務從來不是什麼簡單的事情。首先人家是客戶,是直接給公司創造Revenue價值的,他們說的話永遠是對的,雖然大多時候我們從未認同過,卻沒有任何理由來反駁人家;其次,因為客戶離得太近(就在公司內部),可以隨時跑過來衝你咆哮,或者給你一個Escalation。時間久了,出的問題多了,我們跟Richard們再也不能和睦共處了。因為內部客戶提出的任何一個Issue,我們都必須做一個Root Cause Analysis,找出最初的罪魁禍首,當然最終源頭無非是他們還是我們,萬萬不能往客戶身上賴的。為此Richard們還專門發明了一個IMF(Issue Management Form)。
終於有一天,大家發現,這樣內耗不行,還得一致對外才是正道,因為無論是我們問題多些,還是Richard們問題多些,對於那些難纏的內部客戶而言,他們是根本不Care的。於是Richard們決定實行SLA(Service Level Agreement),逼迫使用者簽訂