從世界杯看軟件團隊建設和管理
2006德國世界杯已落下帷幕了,但空氣中還散發著足球的味道,在巴士、在餐廳人們還依然議論著十大魅力進球、意大利的幸運和齊達內的紅牌罰出……沒完沒了的世界杯。但漸漸地,一種失落正慢慢地爬到我身上,里面夾雜著或遠或近的思緒。是巴西、阿根廷過早地離開?還是德國堅強的戰車沒能沖到頂峰?或許是往后的幾個月、甚至四年,我們將缺少一份在世界杯賽中所具有的那份激情、那份期盼……在眾多的思緒中,想得最多的還是足球給我們的啟發,給我們軟件團隊建設和管理的啟發。
足球和團隊建設的關系,不是牽強附會的,有一件事件可以證實。2005年,英國皇家人力資源協會在其年會上特意請來了埃里克森,給眾多的、職業的人力資源經理做了一個培訓,題目就是《怎樣讓你的團隊出色發揮》。在會上,埃里克森對管理足球隊的成功經驗進行了概括性總結,只有三點:要有優秀的球員,尊重球員,行事要簡單。雖然是三點,但每一點都是經典。如果把這三點引入到軟件團隊管理中,其解釋是:要有優秀的軟件工程師,正如PSP強調的個人能力和素質,隊員是團隊能力的來源。尊重每一個技術人員,也就是尊重“人是最寶貴的財富”格言,以人為本,充分調動每個人的積極性和主動性。簡單的流程和模式。簡單的可能是最好的,如敏捷方法所倡導的那樣。 故事過后,下面讓我們從足球展開討論團隊建設和管理。
1.團隊分工明確又靈活
在足球隊,分工明確,由前鋒、中場、前衛、后衛、門將等不同角色組成,組成442、433、4312等陣容,各司其職。前鋒主要任務就是進攻、后衛主要責任是防守,但有時這些角色也發生變化。由于球場情況瞬息萬變,后衛有時參與進攻而直接射門得分,后衛線有險情時,前鋒也有必要及時回防。
高效的軟件團隊也設定不同的角色,如架構師、設計師、程序員、測試工程師、項目經理等。一個軟件團隊需要由不同技能的人員構成,如架構師需要豐富的經驗和全面的技術,而項目經理需要良好的溝通能力。雖然團隊分工不同,但需要整個團隊成員的協作努力才能保證整個團隊的高效運作。一方面大家工作重心和側重點是清楚的,但各自的分工也不是絕對的,相互幫助、相互支持,使整個團隊更有效地、高質量地完成任務。
2.團隊文化和精神
沒有良好的團隊文化,軟件產品是很難成功的。德國戰車一如既往的繼承了鋼鐵般的意志力、踏實和嚴謹,獲得了好成績——季軍。事前,人們認為德國隊進入八強,就戰績不錯了。而阿根廷的點球失敗,從側面說明了其隊員的心理素質不夠強、意志薄弱。韓國隊、日本隊也表現出良好的團隊精神,而中國隊就缺乏團隊精神、缺乏頑強斗志的精神,在許多比賽中得到印證。
激勵是一種文化,良好的文化講究激勵,以激勵、引導為主,不斷促進團隊的士氣、積極性,而很少使有懲罰。在軟件團隊中,我們可以一天送出一個“胡蘿卜”(寓意獎勵),通過走到工程師前面口頭表揚、通過郵件向大家表揚某個人、設置游戲獎勵優勝者、不斷征求大家意見、將結果反饋給大家等等,以此激勵團隊。
3.團隊的能力
有經驗的球隊,首先對如何踢好下場球以及每個球員在其中所承擔的角色取得共識。足球賽是真正的一個團隊工作,缺乏團隊能力,靠個人能力是不能取勝的。巴西球隊中的大牌球星無數,但不是人們想象的那樣可怕,其整體缺乏配合,進攻能力不強。而厄瓜多爾沒有大牌球星,兩場球賽均是大捷,不失一球,其結果完全來自于優秀的團隊配合。如果一支球隊不懂得配合,疲于奔命,就不容易贏得比賽。
很多開發團隊不乏能人和高手,但缺乏定義清楚的流程、缺乏主動溝通和密切協作,團隊整體實力不強。軟件的開發,越來越需要團隊整體的能力,需要明確的分工又需要默契的配合。軟件測試,則更依賴于嚴謹的團隊工作,任何一個人的失誤,會造成前功盡棄。高質量的產品,來自于每個開發人員的前期努力、每個測試人員的兢兢業業。
為了增強團隊能力,團隊每個成員的技能應該構成一個互補的關系。對于軟件團隊,需要系統平臺、數據庫設計、算法、編程和流程管理等多方面的人才,才能形成具有很強團隊能力的團隊。
4.執行力
軟件測試經理,有時如同足球教練,看到自己的策略沒有得到貫徹執行,足球隊長或場上球員沒有控制好進攻的節奏,教練只能站在場外,望球興嘆、無可奈何。如何提高執行力呢?如同埃里克森所說的,要有優秀的隊員,這是基礎。然后,需要一系列的方法和先進的團隊文化來保證、提高團隊得執行力:團隊領導要讓每一位團隊成員真正理解要執行的策略,需要一個人一個人地去詢問并得到確認。團隊領導要尊重每一位團隊成員,尊重了成員,成員也就尊重領導,領導的意圖才能得到不折不扣的貫徹。及時吸取教訓,總結經驗,不斷改進操作方法和工具,在技術上提高執行力。有清楚的目標、有效的方法、公平的環境、不斷的激勵等等。
5.風險控制能力
足球的魅力,很大程度上來源于足球場上的變數。足球場的變數很多,這些變數對于教練、隊長或球隊,就是一種風險。要贏球,就是要控制好風險。軟件團隊的管理也如同足球比賽,滲透了風險管理的藝術。在軟件開發中,要追求效率和生產力,同時要降低質量風險,更重要是在效率和質量上達到平衡。軟件何一個人的失誤,會控制球場的節奏,也是避免風險的一個好辦法。對于軟件開發一樣,也需要控制開發的節奏。一個優秀的球隊,針對不同的對手,要變換戰術,變換節奏。在軟件開發中,團隊也要考慮產品發布不同的類型,一個全新的產品發布策略是不一樣的、節奏要慢些。對于解決產品問題的補丁包的發布,則節奏一定要快,流程要簡單、有效。
6.團隊需要核心,而且只能是一個
團隊需要有核心,法國贏巴西就說明了這一點,因為法國有像齊達內這樣的團隊領袖,形成團隊的核心。如果存在多個核心,可能就會形成派系或引起內耗。巴西球星太多,有“大羅、小羅”,反而缺少配合、缺少進攻能力,可能不如只有一個“羅”,這樣也許戰術更簡單,傳球目標也清楚,反而會使團隊更有戰斗力。
對于一個團隊的領導,確實要技高一籌、有很強的領導力,才能以技服人、以德服人。國內許多項目經理,沒有很好的開發和測試經驗,很難領導好一個項目,只能起著協調、監控作用,對于項目中出現技術路線上的重大問題、設計上的嚴重缺陷,絲毫沒有辦法,或不能發現。所以有些公司開始設置工程經理(Engineering Manager),讓一些技術和管理都很強的人來領導項目的開發。
7.持之以恒的力量
持之以恒的力量也是巨大的。在德國和阿根廷的比賽中,德國戰車永不放棄的精神和努力得到了回報,克勞澤的進球扳平了比分,雖然比賽場面被動,德國人還是將比賽拖入到加時賽、點球大戰,最終獲勝。軟件團隊也會經常遭遇困難、陷入困境,當團隊遇到困難時,如果團隊的骨干成員選擇“離開”,團隊就會一蹶不振,甚至連罰點球的機會都沒有,就消聲匿跡了。如果堅持下來,不懈努力,等待機會扭轉局面,就可能大獲全勝。如網易、搜狐、新浪等網站曾遭遇互聯網的嚴寒,幾乎要被Nasdaq摘牌,但由于他們堅持下來,如今其股價、市值獲得了幾十倍的增長。以至于今天,我還時常聽到同事說,“如果當初買了網易股票,現在就發了”。
8.團隊的目標管理
團隊要有一個清晰的目標,而且不同的階段有不同的目標,這恰恰是最為關鍵的。在世界杯上,許多優秀的球隊,包括德國隊,在小組上不去想后期的淘汰賽,而只是設定小組賽的目標——如何在小組賽以第一名出現,一場一場地打,把小組賽每場打好。在淘汰賽,也是針對當前對手制定策略,賽前充分做好準備,一步步實現目標,勝券在握。還是德國隊對阿根廷那場比賽,在守門員萊曼準備走向球門前,德國隊的工作人員塞給他一張小紙條。紙條上寫了什么?就是兩年來阿根廷所有隊員罰點球的習慣。所以,萊曼才能一次又一次判斷對了阿根廷球員罰點球的方向,有出色的表現。
在軟件開發中,設定總體目標,然后再進行分解,比如將目標分解到每個團隊。更好的辦法是將目標分解到每個里程碑,分階段逐步實現。要實現目標,僅有“分解”是不夠的,必須得到上、下層的支持,整個團隊共享目標,心往一處想、勁往一處使,共同努力,最終保證目標的實現。
足球和團隊建設的關系,不是牽強附會的,有一件事件可以證實。2005年,英國皇家人力資源協會在其年會上特意請來了埃里克森,給眾多的、職業的人力資源經理做了一個培訓,題目就是《怎樣讓你的團隊出色發揮》。在會上,埃里克森對管理足球隊的成功經驗進行了概括性總結,只有三點:要有優秀的球員,尊重球員,行事要簡單。雖然是三點,但每一點都是經典。如果把這三點引入到軟件團隊管理中,其解釋是:要有優秀的軟件工程師,正如PSP強調的個人能力和素質,隊員是團隊能力的來源。尊重每一個技術人員,也就是尊重“人是最寶貴的財富”格言,以人為本,充分調動每個人的積極性和主動性。簡單的流程和模式。簡單的可能是最好的,如敏捷方法所倡導的那樣。 故事過后,下面讓我們從足球展開討論團隊建設和管理。
1.團隊分工明確又靈活
在足球隊,分工明確,由前鋒、中場、前衛、后衛、門將等不同角色組成,組成442、433、4312等陣容,各司其職。前鋒主要任務就是進攻、后衛主要責任是防守,但有時這些角色也發生變化。由于球場情況瞬息萬變,后衛有時參與進攻而直接射門得分,后衛線有險情時,前鋒也有必要及時回防。
高效的軟件團隊也設定不同的角色,如架構師、設計師、程序員、測試工程師、項目經理等。一個軟件團隊需要由不同技能的人員構成,如架構師需要豐富的經驗和全面的技術,而項目經理需要良好的溝通能力。雖然團隊分工不同,但需要整個團隊成員的協作努力才能保證整個團隊的高效運作。一方面大家工作重心和側重點是清楚的,但各自的分工也不是絕對的,相互幫助、相互支持,使整個團隊更有效地、高質量地完成任務。
2.團隊文化和精神
沒有良好的團隊文化,軟件產品是很難成功的。德國戰車一如既往的繼承了鋼鐵般的意志力、踏實和嚴謹,獲得了好成績——季軍。事前,人們認為德國隊進入八強,就戰績不錯了。而阿根廷的點球失敗,從側面說明了其隊員的心理素質不夠強、意志薄弱。韓國隊、日本隊也表現出良好的團隊精神,而中國隊就缺乏團隊精神、缺乏頑強斗志的精神,在許多比賽中得到印證。
激勵是一種文化,良好的文化講究激勵,以激勵、引導為主,不斷促進團隊的士氣、積極性,而很少使有懲罰。在軟件團隊中,我們可以一天送出一個“胡蘿卜”(寓意獎勵),通過走到工程師前面口頭表揚、通過郵件向大家表揚某個人、設置游戲獎勵優勝者、不斷征求大家意見、將結果反饋給大家等等,以此激勵團隊。
3.團隊的能力
有經驗的球隊,首先對如何踢好下場球以及每個球員在其中所承擔的角色取得共識。足球賽是真正的一個團隊工作,缺乏團隊能力,靠個人能力是不能取勝的。巴西球隊中的大牌球星無數,但不是人們想象的那樣可怕,其整體缺乏配合,進攻能力不強。而厄瓜多爾沒有大牌球星,兩場球賽均是大捷,不失一球,其結果完全來自于優秀的團隊配合。如果一支球隊不懂得配合,疲于奔命,就不容易贏得比賽。
很多開發團隊不乏能人和高手,但缺乏定義清楚的流程、缺乏主動溝通和密切協作,團隊整體實力不強。軟件的開發,越來越需要團隊整體的能力,需要明確的分工又需要默契的配合。軟件測試,則更依賴于嚴謹的團隊工作,任何一個人的失誤,會造成前功盡棄。高質量的產品,來自于每個開發人員的前期努力、每個測試人員的兢兢業業。
為了增強團隊能力,團隊每個成員的技能應該構成一個互補的關系。對于軟件團隊,需要系統平臺、數據庫設計、算法、編程和流程管理等多方面的人才,才能形成具有很強團隊能力的團隊。
4.執行力
軟件測試經理,有時如同足球教練,看到自己的策略沒有得到貫徹執行,足球隊長或場上球員沒有控制好進攻的節奏,教練只能站在場外,望球興嘆、無可奈何。如何提高執行力呢?如同埃里克森所說的,要有優秀的隊員,這是基礎。然后,需要一系列的方法和先進的團隊文化來保證、提高團隊得執行力:團隊領導要讓每一位團隊成員真正理解要執行的策略,需要一個人一個人地去詢問并得到確認。團隊領導要尊重每一位團隊成員,尊重了成員,成員也就尊重領導,領導的意圖才能得到不折不扣的貫徹。及時吸取教訓,總結經驗,不斷改進操作方法和工具,在技術上提高執行力。有清楚的目標、有效的方法、公平的環境、不斷的激勵等等。
5.風險控制能力
足球的魅力,很大程度上來源于足球場上的變數。足球場的變數很多,這些變數對于教練、隊長或球隊,就是一種風險。要贏球,就是要控制好風險。軟件團隊的管理也如同足球比賽,滲透了風險管理的藝術。在軟件開發中,要追求效率和生產力,同時要降低質量風險,更重要是在效率和質量上達到平衡。軟件何一個人的失誤,會控制球場的節奏,也是避免風險的一個好辦法。對于軟件開發一樣,也需要控制開發的節奏。一個優秀的球隊,針對不同的對手,要變換戰術,變換節奏。在軟件開發中,團隊也要考慮產品發布不同的類型,一個全新的產品發布策略是不一樣的、節奏要慢些。對于解決產品問題的補丁包的發布,則節奏一定要快,流程要簡單、有效。
6.團隊需要核心,而且只能是一個
團隊需要有核心,法國贏巴西就說明了這一點,因為法國有像齊達內這樣的團隊領袖,形成團隊的核心。如果存在多個核心,可能就會形成派系或引起內耗。巴西球星太多,有“大羅、小羅”,反而缺少配合、缺少進攻能力,可能不如只有一個“羅”,這樣也許戰術更簡單,傳球目標也清楚,反而會使團隊更有戰斗力。
對于一個團隊的領導,確實要技高一籌、有很強的領導力,才能以技服人、以德服人。國內許多項目經理,沒有很好的開發和測試經驗,很難領導好一個項目,只能起著協調、監控作用,對于項目中出現技術路線上的重大問題、設計上的嚴重缺陷,絲毫沒有辦法,或不能發現。所以有些公司開始設置工程經理(Engineering Manager),讓一些技術和管理都很強的人來領導項目的開發。
7.持之以恒的力量
持之以恒的力量也是巨大的。在德國和阿根廷的比賽中,德國戰車永不放棄的精神和努力得到了回報,克勞澤的進球扳平了比分,雖然比賽場面被動,德國人還是將比賽拖入到加時賽、點球大戰,最終獲勝。軟件團隊也會經常遭遇困難、陷入困境,當團隊遇到困難時,如果團隊的骨干成員選擇“離開”,團隊就會一蹶不振,甚至連罰點球的機會都沒有,就消聲匿跡了。如果堅持下來,不懈努力,等待機會扭轉局面,就可能大獲全勝。如網易、搜狐、新浪等網站曾遭遇互聯網的嚴寒,幾乎要被Nasdaq摘牌,但由于他們堅持下來,如今其股價、市值獲得了幾十倍的增長。以至于今天,我還時常聽到同事說,“如果當初買了網易股票,現在就發了”。
8.團隊的目標管理
團隊要有一個清晰的目標,而且不同的階段有不同的目標,這恰恰是最為關鍵的。在世界杯上,許多優秀的球隊,包括德國隊,在小組上不去想后期的淘汰賽,而只是設定小組賽的目標——如何在小組賽以第一名出現,一場一場地打,把小組賽每場打好。在淘汰賽,也是針對當前對手制定策略,賽前充分做好準備,一步步實現目標,勝券在握。還是德國隊對阿根廷那場比賽,在守門員萊曼準備走向球門前,德國隊的工作人員塞給他一張小紙條。紙條上寫了什么?就是兩年來阿根廷所有隊員罰點球的習慣。所以,萊曼才能一次又一次判斷對了阿根廷球員罰點球的方向,有出色的表現。
在軟件開發中,設定總體目標,然后再進行分解,比如將目標分解到每個團隊。更好的辦法是將目標分解到每個里程碑,分階段逐步實現。要實現目標,僅有“分解”是不夠的,必須得到上、下層的支持,整個團隊共享目標,心往一處想、勁往一處使,共同努力,最終保證目標的實現。
本文標簽:從世界杯看軟件團隊建設和管理
* 由于無法獲得聯系方式等原因,本網使用的文字及圖片的作品報酬未能及時支付,在此深表歉意,請《從世界杯看軟件團隊建設和管理》相關權利人與機電之家網取得聯系。










