IT168關於敏捷開發採訪

2021-09-03 04:51:57 字數 3958 閱讀 3509

1.我們知道敏捷開發是一套流程和方法的持續改進,通過快速迭代的方式交付產品,從而控制和降低成本。但是在實行敏捷初期,往往看不到很好的效果。這裡面,您覺得問題主要出在哪?團隊應如何去解決問題?

金根:我認為敏捷通過快速交付主要目的之一是快速上市,快魚吃慢魚,時間往往能夠決定產品的價值,例如很多網際網路公司;而國內也有很多企業把敏捷作為質量提 公升的重要手段,例如廣聯達。價值和質量這兩點是我認為敏捷最重要的兩個目的。當然,成本也是目的之一,在我培訓的一些企業中,這往往也是一些領導者最關心 的問題,他們會說我就關心實施敏捷能讓我現在省多少錢,然而敏捷帶來的效益是需要從長時間來看待的,如果希望馬上看到成本下降這是不現實的。因為在開始實 施敏捷之初,大家需要轉變開發方式,需要學習適應新的方法,這些都需要時間;也許還需要請專家來配需,還需要購買一些機器硬體之類的,這也需要花錢。所 以,我想說的第一點,敏捷不成效果與上層支援和導向有關,這是需要領導層去重新去理解敏捷的目的。

現在再說說開發團隊。技術人員剛開始都是對技術感興趣,而忽略了開發流程方法之類的,即使很多有工作經驗的老手也一樣不關心開發方法。對如何能夠更好的開 發產品漠不關心是乙個團隊失敗的問題,大家只是去按照敏捷的要求去做,僅僅做了而已,而不是做好了,更不會去思考如何根據當前的團隊和環境去靈活應用。碰 到好點的團隊,會出現幾個敏捷積極者,他們是團隊實施敏捷的火苗,但如何提高這些火苗的能力以及如何補充燃料是團隊管理者需要加強的。在我遇到的一些團隊 當中,往往很多管理者並沒有轉換到敏捷管理的思路,不知道自組織是什麼概念,仍舊採用嚴格的管理手段,而不理解領導是什麼。

從以上的描述可以看出,敏捷不只是乙個開發工具,乙個開發人員學習一下就可以用好。敏捷的實施也應該算是企業的乙個變革,這需要上層、管理層和開發團隊的共同努力。那如何解決這些問題?首先對敏捷是什麼達成一致,然後找出阻礙,乙個乙個的去解決,在行動中學習。

2.現在很多軟體開發ide,比如微軟的visual studio,也都在注重幫助團隊改進開發流程、提公升效率。您覺得在產品層面的這種改進,對團隊實行敏捷方法有多大的幫助?工具對於剛剛準備實行敏捷方法的團隊來說很重要嗎?

金根:如果說到xp,我認為工具很重要,例如**審查、自動化測試等等。但如果說到管理開發流程,例如使用scrum,我並不建議大家一開始就 是用軟體工具,使用工具會失去敏捷管理中很多本來可以發揮作用的地方,例如缺少白板會讓團隊缺少很多面對面溝通的機會,這會不利於敏捷團隊的形成。我們很 多人都實施過敏捷,但只能說是doing agile,並不能說being agile,這又可以回到第乙個問題,很多團隊實施多年後也不見太大成效的原因就是,他們沒有理解到敏捷說到底還是乙個理念,它背後有價值觀等作為支撐, 例如scrum的承諾、專注、公開、尊重、勇氣。關於scrum,感興趣的可以看看 從it方**來談scrum

3.很多人都談到,對於團隊來說,最痛苦的莫過於在實行敏捷開發的轉型期,同時談了很多解決方法,您如何看這一問題?

金根:我不太清楚你說的大家認為最痛苦是什麼,以及他們提出了什麼解決方法。如果說到轉型,我可以把這看成是乙個變革,如何理解這種轉型的過 程,下面這張圖可以看出轉型一定是乙個過程,而不是一步到位的,這需要管理者去很好的理解,才不至於讓敏捷快速興起又快速打落。如果團隊想實施敏捷,但又 沒有人對敏捷有所深入了解,那麼建議大家可以請專人指導一下。

4.敏捷開發帶來的好處不言而喻,但您覺得所有的開發團隊都需要實行敏捷嗎?有沒有一些特殊的情況出現?

金根:如果我們只是把敏捷限定在scrum和xp等開發方法,那麼我覺得並不是所有開發團隊都需要實行敏捷。在我們公司,有些團隊可能就一兩個 人,這個時候就不需要scrum的站會、回顧會議了;還有一些需要變化特別快的,那就可以實施看板;還有那些不能出現任何差錯的專案可能瀑布還是不錯的一 種方式。但是,敏捷本身不是來自軟體開發,被應用到it,那就證明其實它背後有一種更本質的東西。正如前面我說的,如果你把敏捷看重一種理念,那麼我認為 如果把敏捷理解透徹,不僅僅是每個開發團隊都要實行敏捷,甚至每個人,在生活中都可以應用敏捷,這也是我創立敏捷個人的原因。

5.如今很多專家都在做敏捷教練,可能每個人的思想都有所不同,實行的方法也都不同。您覺得,對於敏捷初期團隊來說,教練在其中應起到什麼作用?之後呢?

金根:正如專案經理在每個公司所擔任的工作不同一樣,敏捷教練作為乙個國內新興職業,敏捷教練應該做什麼也會不一樣,更如你說,每個人的思想、 方法不一樣,這也導致大家做的也不一樣。但我想對於教練來說,還是可以抽取一些共性的東西。那教練應該起到什麼作用呢?最基本的就是 scrummaster的職責,其次就是培養scrummaster的責任,更高階的教練還需要學習個人成長教練,也就是敏捷個人的一些內容。

對於敏捷初期團隊,一般都沒有scrummaster。如果可能的話,就是自己成為scrummaster幫助團隊運轉起來。如果不行,那麼就需要做多次的專題培訓,再組織團隊開展敏捷實踐,並不定期的回訪,以保證團隊對敏捷的理解正確。

6.最後也想請您談一談您的個人經歷和看法。您是如何接觸到敏捷開發這一理念的?之後又是如何去推動它的?對於敏捷開發,您給廣大開發團隊的忠告是?

金根:在03年的時候,我們是基於rup來做開發,做了很多設計畫了很多圖,但是最後開發的時候,開發人員也不看,這讓當時還是程式設計師的我對軟 件開發方法產生了興趣,於是就開始關注軟體全生命週期相關的方法理念,而敏捷就是其中之一。09年我到了乙個新的專案組,需求人員是市場人員、沒有開發人 員,也就是連團隊的雛形都沒有,這時候我覺得實施scrum是乙個機會,因為大家以往都沒有經驗,更容易接受新事物,我選擇實施scrum。當然,對於軟 件開發來說,scrum只是一部分,還需要很多其他東西,例如如何做需求、如何做設計、如何帶團隊等。大家可以從 年度總結和計畫:去年4個1,今年5個1

可以看到09年我做的工作。

說到如何推動,我認為還是很順利的。第一,部門領導支援,如何開發我說的算。第二,團隊支援,我的意見很容易被接受。第三,我

持續的和大家分享、交流、培訓。第四:從頭到尾的帶著大家做了好幾期sprint後才由團隊自己全權負責。如果要我給廣大開發團隊提出幾個忠告,我想說的就是理解敏捷的本質,對敏捷產生興趣,是敏捷成功的關鍵。

7.敏捷開發一詞已經越來越被大家所熟知,從您了解到的情況看,目前國內的普及程度如何?您覺得未來應如何推動?

金根:在敏捷10年回顧中,mike cohn說到, 現在大家不再說要不要做敏捷,而是如何做好敏捷,希望以後不再說"敏捷軟體開發",而僅僅說"軟體開發"背後就隱含的包含正在用敏捷開發,我也希望正如他 所說。但在我招聘、培訓、交流過程接觸的情況來看,國內的敏捷普及程度並不是這麼樂觀,很多人還只是知道敏捷而已,但在開發中並未真正實踐,還有的實踐之 後放棄的。還有實施了敏捷的企業,也不是企業所有團隊、所有人都在實施敏捷,就拿我們公司來說,也不是所有人都在用敏捷,即使在用,也不是每個團隊都應用 的很好。

關於如何更大範圍推動敏捷,我覺得首先每個開發人員應該對自己要求高一些,不要僅僅關注如何寫**,還需要關注採用什麼方法來開發,如何做好團隊協作,在 合適的時機向團隊、領導推動敏捷實踐。其次,現在也有很多大會(如敏捷中國、scrumgathering等)、培訓(我業餘時間也給企業做培訓諮詢)、 資訊,這些也都能夠加速敏捷的推廣和落地。

IT168關於敏捷開發採訪

1.我們知道敏捷開發是一套流程和方法的持續改進,通過快速迭代的方式交付產品,從而控制和降低成本。但是在實行敏捷初期,往往看不到很好的效果。這裡面,您覺得問題主要出在哪?團隊應如何去解決問題?金根 我認為敏捷通過快速交付主要目的之一是快速上市,快魚吃慢魚,時間往往能夠決定產品的價值,例如很多網際網路公...

IT168關於敏捷開發採訪

1.我們知道敏捷開發是一套流程和方法的持續改進,通過快速迭代的方式交付產品,從而控制和降低成本。但是在實行敏捷初期,往往看不到很好的效果。這裡面,您覺得問題主要出在哪?團隊應如何去解決問題?金根 我認為敏捷通過快速交付主要目的之一是快速上市,快魚吃慢魚,時間往往能夠決定產品的價值,例如很多網際網路公...

關於敏捷開發

前一段參加了北軟教育的乙個 敏捷開發技術 的培訓,一直沒來的總結一下。剛好結合最近的專案,把老師提到的應用了一把,感覺還不錯。敏捷的特點 1 小版本發布 可以給開發人員持續的成就感 2 測試驅動開發 3 持續整合 4 重構 獲得更好的 結構 5 結對變成 最好選取水平相當的兩人 一定要是交叉結對 6...