我們要為團隊打造一個開放的工作空間:周邊配置小型的私人空間,中央是共用的程式設計區。
空間會直接決定成敗#
延伸案例:最有價值的建議是重排家具
作者說,那是他作為顧問成長過程中的一個分水嶺時刻:他被請去審查一個專案的物件導向設計。
他看了系統,果然一團亂。接著他注意到大家坐在哪裡——團隊是四位資深程式設計師,各自佔據一棟中型建築四個角落的角落辦公室。
他告訴他們:你們應該把辦公室搬到一起。
他之所以被請來,是因為他對 Smalltalk 與物件的知識;而他提出最有價值的建議,卻是重新排列家具。
延伸:C3 團隊工作區實況(Ron Jeffries 描述)

圖 5:DaimlerChrysler C3 工作區
Ron Jeffries 寫道:
這張照片顯示 DaimlerChrysler C3 薪資團隊的工作區。兩張大桌子各擺六台開發機器,結對的程式設計師坐在任何一台空著的機器前工作。(這張照片不是擺拍:他們真的就是這樣一起工作。攝影師當時正和 Chet 一起工作,Chet 在後面那張桌子、背對鏡頭。)
看得見的兩面牆都鋪滿了白板,上頭顯示需要處理的功能測試、計畫中的 CRC 會議,後面那塊板則是迭代計畫。左側白板上方那些紙張,是寫著團隊 XP 規則的小標示。
右側與鏡頭下方的牆邊,排著一格格小隔間,大小剛好放得下一支電話和一個書寫檯面。
房間最裡面,電腦桌與白板之間,是一張標準桌子,團隊圍著它開 CRC 會議。這張桌子通常鋪滿 CRC 卡片與食物——因為團隊規則之一就是「必須有食物」。
這房間是團隊自己設計的:我們是真的「選擇」待在這裡。 大家講話輕聲,噪音水準低得驚人。但當你需要幫忙時,只要把音量抬高一點點就能得到——而且是立刻得到。
順帶一提,地板沒鋪地毯,這意味著我們的椅子真的滑得動!
空間規劃的張力#
空間規劃在任何情況下都是苦差事,充滿相互衝突的限制:
- 空間規劃者被評判的標準,是花了多少錢、保留了多少彈性
- 使用者想與團隊其他人緊密工作,但同時也需要隱私,好打電話預約看醫生
XP 是一門**共居式(communal)**的軟體開發紀律。團隊成員必須能看見彼此、能聽見有人喊出的臨時提問、能「不小心」聽見那些他們有關鍵貢獻的對話。
XP 會讓既有空間吃緊#
一般的辦公室配置對 XP 效果不好:
- 把電腦放在角落行不通——因為兩個人不可能並肩坐著寫程式
- 一般高度的隔板牆行不通——隔間之間的牆應該降到一半高,或完全拆掉
- 同時,團隊應該與其他團隊分隔開來
最佳配置#
最好的配置是一個開放的大通鋪(bullpen),周邊圍著小隔間:
- 團隊成員把個人物品放在這些小隔間裡,去那裡打電話,在不想被打斷時待在那裡。其他人必須尊重坐在自己隔間裡的人的「虛擬」隱私。
- 把最大、最快的開發機器擺在空間中央的桌子上(隔間裡可以有機器,也可以沒有)。這樣一來,有人想寫程式時,自然會被吸引到開放的公共空間。從這裡,每個人都能看見正在發生什麼、結對容易形成,而每一對都能從同時開發的其他對身上汲取能量。
- 如果可以,在一側保留一小塊最好的空間作為共用區:放一台濃縮咖啡機、幾張沙發、一些玩具,一些能把人吸引過去的東西。
開發時想脫離卡關,最有效的方式往往是暫時走開一下。如果有一個令人愉快的地方可以走過去,你在需要時就更可能真的走過去。
勇氣在空間上的展現#
勇氣這項價值,在 XP 對待空間的態度上找到了表達。
電腦放錯地方,就搬走;隔板擋路,就拆掉;燈太亮,就拔掉;電話太吵,那麼有一天,神祕地,所有電話的鈴鐺裡都被塞上了棉花。
延伸案例:拆掉抽屜的銀行辦公桌
作者第一天到一家銀行報到,發現他們被分配到的是難看的舊式單人辦公桌——桌子兩側各有一組金屬抽屜,中間只留一道剛好塞得下雙腿的細縫。
這顯然行不通。
他們四處張望,直到找到一支工業級螺絲起子,然後把其中一側的抽屜組拆了下來。現在每張桌子都能坐下並肩的兩個人。
這樣亂搞家具是會惹上麻煩的。空間管理的人發現有人未經許可、未經他們參與就搬動桌子,可能會勃然大怒(先別提一份變更申請可能要花上數週或數月才會被處理)。
作者的態度是:「那真遺憾。」——我有軟體要寫,如果拆掉一片隔板能幫我把軟體寫得更好,我就會拆。如果這個組織連這點主動性都容不下,那我本來也不想在那裡工作。
掌控實體環境,是他們掌控「自己整體如何工作」的第一步。
空間值得持續實驗#
空間值得不斷實驗——這是回饋這項價值在運作。
畢竟,組織花了天文數字的錢買下那些「可彈性配置」的辦公家具;如果你不去彈一下這些家具,那些錢就全浪費了。
- 如果這兩個人的隔間更近一點會怎樣?更遠一點呢?
- 如果整合機器擺在正中央會怎樣?擺在角落呢?
試試看。有效的就留下;沒效的,就獻祭給下一場實驗。