讀古今文學網 > 程序員必讀之軟件架構 > 除非他們有其他身份 >

除非他們有其他身份

對自組織團隊的想法,我有一個大問題,我們在行業中談論了很多,但很少看到實踐。這可能是在咨詢的環境中工作的副作用,因為我的團隊總是隨著項目而變化,而且我不太可能跟某一個客戶在一起超過幾個月。或者,我懷疑,真正的自組織團隊非常少。把自組織作為努力方向是值得尊敬的,但對很多軟件團隊而言,這就像是還沒學會走就想跑了。

在「Notes to a software team leader」3 中,羅伊·奧謝洛夫(Roy Osherove)描述了他的「彈性領導」概念,這種領導風格需要根據團隊的成熟度有所變化。羅伊用一個簡單的模型對團隊成熟度做了分類,每個等級需要不同的領導風格。

3 http://leanpub.com/teamleader

1.生存型(混亂):需要一種直接指揮和控制的領導風格。

2.學習型:需要一種指導的領導風格。

3.自組織型:需要簡易化來確保平衡不受影響。

就像我說的,團隊裡每個人都是經驗豐富的軟件開發者和架構師,那就太棒了,但我還沒見過這樣的團隊。大多數項目的團隊連一個對「大局」之類的東西有經驗的人都沒有,一團亂的代碼庫、不明確的設計、很慢的系統,類似這些都是明證。從技術角度來看,這種情況最為多見,我建議團隊中由一個人來承擔軟件架構角色的責任。

羅伊舉了流程經理角色的例子。在成熟的初始階段,一個人承擔流程經理的角色來幫助團隊向正確方向前進,這將使團隊受益。另一方面,自組織團隊不需要別人告訴他們做什麼。名字就是線索;從定義上,他們是自組織的,可以自己承擔這個角色。我想說,軟件架構的角色是同樣的,因此技術領導的角色也是。