重點摘要#
- 有效溝通的關鍵是清晰(Clarity)和領導力(Leadership)
- 丟掉冗長的 Word 文件,改用簡單的圖表和白板會議
- 軟體架構師也是領導者,必須贏得同事的尊重
- 與開發者合作而非對抗,讓他們參與架構決策過程
詳細內容#
太多軟體架構師坐在象牙塔中,對下方的開發者發號施令。這往往導致團隊不滿、最終產出的軟體與原始需求相去甚遠。每位架構師都應該知道如何溝通專案的目標和方向。
清晰 (Clarity)#
清晰描述的是你如何溝通:
- 沒有人會去讀 100 頁的架構決策文件
- 保持事情在專案初期盡可能簡單
- 使用 Visio 等工具建立簡單的圖表來傳達想法,並保持簡潔(因為它們會頻繁變動)
- 非正式的白板會議是最有效的溝通方式之一
- 隨身攜帶相機,拍下白板上的想法並透過 wiki 分享
丟掉冗長的 Word 文件,專注於傳達你的想法。之後再擔心記錄架構決策的細節。
領導力 (Leadership)#
軟體架構師同時也是一位領導者:
- 你必須贏得同事的尊重才能有效工作
- 讓開發者在黑暗中不知道全局或決策原因是災難的配方
- 建立協作環境,讓開發者參與架構過程來獲得他們的認同
- 與開發者一起工作,而不是對抗他們
- 所有團隊成員(QA、BA、PM 和開發者)都需要清晰的溝通和領導
如果「溝通為王」,那麼清晰和領導力就是它謙卑的僕人。
— By Mark Richards