|
2010年08月08日
《輕松Scrum之旅--敏捷開發(fā)故事》 叢書名:IBM中國(guó)開發(fā)中心系列 作者: 賈子河 段永剛 蔣博 段珊珊(2009年12月第1版第1次) 電子工業(yè)出版社 Publishing House of Electronics Industry 北京市海淀區(qū)萬壽路173信箱(100036) ![]() 內(nèi)容簡(jiǎn)介
本書是一本介紹Scrum和敏捷開發(fā)的入門讀物。作者結(jié)合在大型跨國(guó)公司多年的軟件開發(fā)經(jīng)驗(yàn),把Scrum敏捷開發(fā)實(shí)施經(jīng)歷進(jìn)行巧妙的改編,以小說的形式將與敏捷開發(fā)相關(guān)的知識(shí)、經(jīng)驗(yàn)和思考都融入到輕松、有趣的故事中,生動(dòng)地展現(xiàn)給讀者。 本書適合軟件開發(fā)主管、IT項(xiàng)目經(jīng)理、軟件開發(fā)和測(cè)試人員、計(jì)算機(jī)相關(guān)專業(yè)的學(xué)生以及所有對(duì)軟件工程和敏捷開發(fā)感興趣的讀者閱讀。 賈子河,IBM中國(guó)開發(fā)中心高級(jí)軟件工程師。2004年碩士畢業(yè)于北京工業(yè)大學(xué)計(jì)算機(jī)學(xué)院,清華大學(xué)經(jīng)管學(xué)院工商管理碩士在讀,曾在多家知名間公司從事過軟件開發(fā)工作。2004年底加入IBM公司,從事過軟件配置管理、測(cè)試及開發(fā)等工作。從2007年初在IBM中國(guó)開發(fā)中心領(lǐng)導(dǎo)一個(gè)Scrum團(tuán)隊(duì)開發(fā)Lotus Forms產(chǎn)品至今,具有豐富的敏捷項(xiàng)目開發(fā)和管理經(jīng)驗(yàn)。 段永剛,IBM中國(guó)開發(fā)中心軟件工程師。2005年碩士畢業(yè)于北京理工大學(xué)計(jì)算機(jī)系。畢業(yè)后曾在一家著名軟件公司工作兩年。2007年初加入舊M中國(guó)開發(fā)中心,從事Lotus Forms產(chǎn)品的開發(fā)工作,同時(shí)開始正式接觸Scrum。通過兩年的工作和生活,對(duì)Scrum有了不斷深入的認(rèn)識(shí),對(duì)敏捷開發(fā)有了較為全面的了解,深刻感受到Scrum的魅力,由此希望能為Scrum的推廣貢獻(xiàn)自己的綿薄之力。
蔣博,IBM中國(guó)開發(fā)中心軟件工程師。2007年碩士畢業(yè)于北京航空航天大學(xué)。畢業(yè)后加入IBM公司從事軟件開發(fā)工作至今,目前在IBM中國(guó)開發(fā)中心參與開發(fā)Lotus Forms產(chǎn)品,具有豐富的敏捷項(xiàng)目開發(fā)經(jīng)驗(yàn)和肝技能。
段珊珊,IBM中國(guó)開發(fā)中心軟件工程師。2007年碩士畢業(yè)于北京交通大學(xué)計(jì)算機(jī)與信息技術(shù)學(xué)院,并于同年加入IBM。目前在IBM中國(guó)開發(fā)中心從事Lotus Forms系列產(chǎn)品的系統(tǒng)測(cè)試工作,具有較為豐富的軟件測(cè)試經(jīng)驗(yàn)。
媒體評(píng)論
敏捷方法是軟件工程方法論和實(shí)踐的新發(fā)展,相對(duì)于傳統(tǒng)的開發(fā)方法和過程,它能夠更快、成本更低、風(fēng)險(xiǎn)更少地開發(fā)質(zhì)量更好的軟件,團(tuán)隊(duì)的活力和成就感也更好。軟件開發(fā)團(tuán)隊(duì)和企業(yè)應(yīng)該學(xué)習(xí)和實(shí)踐敏捷開發(fā)方法和過程。在IBM,敏捷方法、過程和相關(guān)的工具已經(jīng)普及,大多數(shù)項(xiàng)目都是基于敏捷方法的?! ?br>本書作者是IBM開發(fā)中心的工程師,他們基于自己的實(shí)際經(jīng)驗(yàn),構(gòu)造了一個(gè)虛擬的故事,生動(dòng)活潑地解釋了敏捷方法的最新實(shí)踐,也就是Scrum方法。在這個(gè)故事中,我們會(huì)看到一個(gè)基于傳統(tǒng)開發(fā)方法的團(tuán)隊(duì)是如何一步步地轉(zhuǎn)變成一個(gè)敏捷團(tuán)隊(duì)的,內(nèi)容涉及Scrum方法的各個(gè)階段、各個(gè)方面。對(duì)于以前不太了解Scrum的朋友來說,這種講述方法引人入勝,易于理解,非常值得一讀。 本書是一本很好的Scrum入門書籍,希望它能夠帶你進(jìn)入敏捷的世界,開始敏捷軟件工程的實(shí)踐之路。 ----IBM研發(fā)中心首席技術(shù)官 毛新生 經(jīng)過軟件行業(yè)幾十年的發(fā)展,軟件系統(tǒng)變得越來越復(fù)雜,傳統(tǒng)的軟件工程理論使“軟件危機(jī)”越來越嚴(yán)重。過長(zhǎng)的開發(fā)周期、超出預(yù)算的開發(fā)成本、令人擔(dān)憂的軟件質(zhì)量、頻繁流動(dòng)的開發(fā)人員、官僚的體系制度、迅速變化的市場(chǎng)環(huán)境等因素,讓繁冗、笨重的軟件開發(fā)過程越來越不能適應(yīng)現(xiàn)實(shí)的需要,軟件項(xiàng)目的失敗率很高。敏捷開發(fā)就是在這種背景下應(yīng)運(yùn)而生的。敏捷(Agile)是一種關(guān)注價(jià)值、消除浪費(fèi)、以人為核心、迭代、循序漸進(jìn)的開發(fā)方法。
記得在2002年的時(shí)候,恰逢國(guó)內(nèi)引進(jìn)了一批XP(eXtreme Programming,極限編程)敏捷開發(fā)的圖書,網(wǎng)絡(luò)上和雜志中也出現(xiàn)了一些早期的相關(guān)文章和報(bào)道,于是筆者有機(jī)會(huì)認(rèn)識(shí)了敏捷開發(fā),覺得耳目一新,也很震撼??上М?dāng)時(shí)很多講解敏捷開發(fā)方法論的書籍內(nèi)容比較抽象,也很理論化。那時(shí)筆者正在讀研究生,所以沒有經(jīng)歷過敏捷實(shí)踐,也就很難有深刻的體會(huì)。當(dāng)時(shí)筆者就在想:敏捷開發(fā)真的這么神奇嗎? 筆者親身經(jīng)歷過不同大小、不同類型的公司,也聽許多朋友和同學(xué)談起過自己的工作經(jīng)歷,可惜很多都是失敗的教訓(xùn),大家的抱怨大都集中在傳統(tǒng)瀑布軟件開發(fā)流程以及一些具有中國(guó)特色的企業(yè)管理制度和文化上。筆者一直在關(guān)注敏捷,也總是在思考這樣一些問題:采用敏捷開發(fā)的軟件公司和軟件團(tuán)隊(duì)是怎樣工作的?不同性質(zhì)、不同文化的軟件公司和軟件團(tuán)隊(duì)對(duì)個(gè)人成長(zhǎng)的影響又是怎樣的? 如今,幾年的時(shí)間過去了,以Scrum方法為代表的敏捷思想已經(jīng)在全球范圍內(nèi)推廣開來。Scrum一詞來自英式橄欖球(Rugby)比賽。敏捷軟件開發(fā)團(tuán)隊(duì)就好比一支橄欖球隊(duì):他們有明確的最高目標(biāo),而且每時(shí)每刻都朝著目標(biāo)努力;他們熟悉最佳實(shí)踐,高度自我管理,高度協(xié)作,高度靈活地面對(duì)各種挑戰(zhàn)。大量的調(diào)查統(tǒng)計(jì)表明,敏捷開發(fā)確實(shí)大大提高了軟件開發(fā)效率和軟件質(zhì)量,幫助軟件企業(yè)提高了效益,并更有利于個(gè)人的成長(zhǎng)。 在現(xiàn)在這個(gè)SOA和Web 2.0當(dāng)?shù)赖臅r(shí)代,國(guó)內(nèi)也迫切需要敏捷思想,然而這些年似乎依然是雷聲大、雨點(diǎn)小。國(guó)內(nèi)實(shí)施敏捷的阻力主要在于人。因?yàn)槊艚莸暮诵木褪?#8220;以人為本”,人的問題上升到了企業(yè)管理、企業(yè)價(jià)值觀和文化的層面。片面地關(guān)注具體實(shí)踐,而不去了解它背后的哲學(xué)思想,可想而知,是不會(huì)取得好結(jié)果的。所以說,敏捷決不是一個(gè)簡(jiǎn)單的軟件過程。 最近兩年,筆者有幸在IBM中國(guó)開發(fā)中心的一個(gè)Scrum敏捷開發(fā)團(tuán)隊(duì)擔(dān)任Scrum Master,期間發(fā)生了很多有趣的故事。由于起步比較早,特殊的機(jī)遇讓我們有機(jī)會(huì)給IBM的其他大大小小的開發(fā)團(tuán)隊(duì)進(jìn)行敏捷培訓(xùn),分享我們成功的經(jīng)驗(yàn)和失敗的教訓(xùn)。每次培訓(xùn)時(shí),我們都會(huì)被同事們對(duì)敏捷的濃厚興趣深深感染,也發(fā)現(xiàn)很多問題和困惑非常有代表性,于是就萌發(fā)了寫作一本有關(guān)敏捷開發(fā)的圖書的想法。 有一天,同事們?cè)谝黄鹜话l(fā)奇想——為什么不把我們的故事改編成小說,以小說的形式寫一本書呢?大家說干就干。我們的開發(fā)小組在業(yè)余時(shí)間就變成了本書的創(chuàng)作小組。本書以敏捷思想為核心,以Scrum為重點(diǎn),結(jié)合筆者所在的開發(fā)小組在IBM兩年的Scrum項(xiàng)目實(shí)施經(jīng)驗(yàn),參考了大量資料,將近百個(gè)案例、問題、知識(shí)點(diǎn)融入我們的故事中。 本書講述了某外企的一個(gè)新團(tuán)隊(duì)如何從零開始實(shí)施敏捷,經(jīng)歷挫折、失敗、進(jìn)步、成長(zhǎng),直到項(xiàng)目成功結(jié)束的故事。 為什么不直接寫敏捷的最佳實(shí)踐,而要寫那么多曲折的經(jīng)歷呢?我們認(rèn)為,這就像解題一樣——了解、分析問題的過程比直接知道答案更有趣,也更有用。更何況其實(shí)并沒有真正的所謂“最佳實(shí)踐”。在實(shí)際工作中,軟件開發(fā)團(tuán)隊(duì)、軟件項(xiàng)目往往千差萬別,書中講到的實(shí)踐不一定都是正確的和盡善盡美的,它們僅僅代表一些可能的敏捷開發(fā)實(shí)踐。 本書的創(chuàng)作完全是由4位作者共同完成的,整個(gè)寫作過程也是敏捷的:迭代、自我管理的團(tuán)隊(duì)、有條不紊的進(jìn)度、期間收集潛在讀者的反饋進(jìn)而調(diào)整書中的內(nèi)容。我們驚喜地發(fā)現(xiàn):敏捷思想真的有效,而不僅僅是對(duì)軟件開發(fā)項(xiàng)目而言。 本書的優(yōu)勢(shì)也許就是和大部頭的經(jīng)典著作相比更具有趣味性,和純正的小說相比更具有知識(shí)性。本書的定位是介紹Scrum敏捷開發(fā)的入門書籍。如果您想了解什么是敏捷開發(fā)和Scrum,如果您對(duì)軟件工程、軟件開發(fā)流程有諸多困惑,如果您正準(zhǔn)備采用敏捷開發(fā)但又缺乏實(shí)踐經(jīng)驗(yàn),如果您想了解一些外企的工作模式和企業(yè)文化,如果您對(duì)自己的職業(yè)生涯感到迷茫……希望您能通過這本書得到一些幫助。如果這本輕松、有趣的敏捷開發(fā)故事書能在您忙碌的工作和生活中引發(fā)一點(diǎn)思考,帶來一些價(jià)值,就是我們最大的欣慰了。 本書的完成首先要感謝IBM中國(guó)開發(fā)中心及各位同事的指導(dǎo)、支持和幫助,特別是我們的經(jīng)理李斌的幫助。感謝IBM中國(guó)敏捷社區(qū)和項(xiàng)目管理社區(qū)的大力支持。特別鳴謝所有提前審閱過本書并對(duì)本書提供了大量寶貴意見的朋友,他們是:毛新生、謝明志、彭雷、岳治宇、湯宇松、鐘朝暉、陳昊、竇文敏、唐威鋒、鄭曙旻、陳川、魏永超、馬冀。他們中有的是IBM中國(guó)開發(fā)中心經(jīng)驗(yàn)豐富的同事,有的是來自其他著名IT公司資深的軟件工程師和項(xiàng)目經(jīng)理。特別感謝本書的熱心讀者、IBM的項(xiàng)目經(jīng)理杜程為本書繪制精美的閱讀導(dǎo)引圖,我們把這張圖作為插頁放在了本書的最后。我們同樣要感謝家人們對(duì)我們?cè)诠ぷ髦饣ㄙM(fèi)時(shí)間寫作本書給予的理解和支持。本書能夠順利出版還有賴于IBM中國(guó)開發(fā)中心的高級(jí)經(jīng)理閆小兵和電子工業(yè)出版社博文視點(diǎn)公司編輯潘昕的辛勤工作。 由于時(shí)間和能力有限,最后呈現(xiàn)給讀者的內(nèi)容依然有不少的遺憾。我們歡迎您任何形式的反饋,以促進(jìn)我們不斷改進(jìn)——這也是敏捷所倡導(dǎo)的。 本書的故事場(chǎng)景、情節(jié)、人物純屬虛構(gòu),如有雷同,純屬巧合。本書觀點(diǎn)僅代表筆者的個(gè)人觀點(diǎn),不代表IBM公司。 好了,我們的敏捷故事即將開始。 Scrum中如何實(shí)現(xiàn)一個(gè)Sprint?
1、Scrum計(jì)劃會(huì)議 在每個(gè)Sprint開始之前,需要召開Sprint計(jì)劃會(huì)議,會(huì)議時(shí)間一般為4~8小時(shí),參加人員有產(chǎn)品責(zé)任人、Scrum Master、Scrum團(tuán)隊(duì)和其他感興趣的人,比如管理人員和客戶代表。 Product Owner從產(chǎn)品Backlog中挑選高優(yōu)先級(jí)的任務(wù),并與Scrum團(tuán)隊(duì)一起決定在這個(gè)Sprint中需要完成多少功能。Scrum團(tuán)隊(duì)將這些任務(wù)分解成小的功能模塊。Scrum團(tuán)隊(duì)成員詳細(xì)討論如何能按需求完成這些功能模塊,并估計(jì)完成每個(gè)功能模塊所需的大概時(shí)間。 2、每日Scrum會(huì)議
每日Scrum會(huì)議(Daily Scrum),即團(tuán)隊(duì)每日例會(huì),條件允許的話,每天都應(yīng)該在同樣的時(shí)間和地點(diǎn),組織所有成員站立舉行。由于是以站立的狀態(tài)開會(huì),因此時(shí)間比較短,一般為15分鐘左右。這個(gè)會(huì)議最好是在每天的清晨開,有利于團(tuán)隊(duì)成員安排好當(dāng)天的工作計(jì)劃。只有團(tuán)隊(duì)成員可以在每日Scrum會(huì)議上發(fā)言,其他人員如果對(duì)項(xiàng)目進(jìn)度有興趣也可以參加,但只能旁聽而不能發(fā)言。 3、Scrum評(píng)審會(huì)議
Sprint評(píng)審會(huì)議在Sprint結(jié)束時(shí)召開,由開發(fā)團(tuán)隊(duì)展示這個(gè)Sprint中完成的功能,長(zhǎng)度為兩個(gè)小時(shí)左右,不需要PPT,一般是已經(jīng)完成功能的Demo,而客戶、管理層、Product Owner以及其他開發(fā)人員等都可以參加。 在Sprint評(píng)審會(huì)議上,Scrum團(tuán)隊(duì)用Demo的形式展示產(chǎn)品的功能之后,與會(huì)人員依據(jù)在Sprint計(jì)劃會(huì)議上確定的這個(gè)Sprint的目標(biāo)來評(píng)審具備了這些新功能的產(chǎn)品。 4、Scrum回顧會(huì)議
Sprint回顧會(huì)議由產(chǎn)品責(zé)任人、Scrum團(tuán)隊(duì)和Scrum Master參見,會(huì)議中需要討論:有哪些好的建議或方法應(yīng)該被采納;在Sprint中有什么做法不可??;有哪些做法效果很好,應(yīng)該繼續(xù)下去。 Sprint結(jié)束后,Scrum團(tuán)隊(duì)回顧剛結(jié)束的Sprint,對(duì)其進(jìn)行總結(jié)和反思,使整個(gè)團(tuán)隊(duì)能持續(xù)成長(zhǎng)。總之,Sprint回顧會(huì)議的宗旨就是:Scrum團(tuán)隊(duì)如何在下一個(gè)Sprint中做得更好! |
|
|