敏捷精神有一個重點就是在於個人與互動,講直白一點就是注重溝通和協作。好的溝通方式就是用較低的溝通成本、讓資訊更加透明流通、降低成員之間的資訊落差,努力讓團隊保持共識。
敏捷精神提倡面對面的溝通方式,認為這種溝通方式能夠最有效率地讓資訊在成員之間傳遞。所以我們透過各個會議與活動去製造面對面溝通的機會,例如 Scrum 透過檢視會議去溝通對於產品的認知、透過回顧會議溝通團隊工作方式的改善、透過每日會議溝通彼此當日預計要做的事情以及遇到什麼障礙需要被協助的、透過規劃會議溝通接下來中其要開發的事項以及協調產品負責人和開發團隊之間訂定待辦清單;工程師透過 Pair Programming 去最有效率的溝通程式的編寫;看板則建立起一個能輻射資訊的資訊視覺化實體,讓團隊能在其前面最有效的溝通進度。
敏捷精神不斷建立起對話的空間、討論的機會,因為比起制式的文件,不斷的溝通能夠促進資訊的改善、並釐清原本沒想到死角。例如我們透過使用者故事展開對話,不斷針對需求進行溝通、釐清,在實際情境上,就有點像是我們透過專案管理工具,將每個需求寫成使用者故事然後建立成一個項目,並在這個項目下面開放留言與討論,讓團隊可以透過這種溝通方式產出共識,而對話本身就是一個文件。
另外,將口頭對話的重要資訊透過文字記錄也是一種資訊輻射的管道,尤其是該對話只有少數人在場進行,得到的結論卻是整個團隊都必須知道時,除了透過每日會議時同步這些資訊外,也建議將結論以及為什麼有這個結論的各種考量以文字的形式記錄下來。
雖然每日會議建立起一個讓團隊資訊同步的機會,但是不代表事情只能在每日會議時去傳遞,而應該將每日會議視為一個最晚資訊傳遞時空以及一個確認資訊是否已傳達出去的平台。一但發生什麼事的應該在當下或是盡量在每日會議之前就先傳達,比如說我完成了某個變動,就在專案管理工具的相關項目中留言告知團隊,並且將該項目指派給想要幫忙 Code Review 的人,並在每日會議時確認相關人員是否有接收到訊息。
舉凡項目進度告一段落或者是要交接給別人時,都應該即時更新相關資訊工具。像是認領了某個項目,就在該項目貼上自己的頭貼(看板)、或是將該項目指派給自己(資訊管理工具),如果自己現階段的任務已經完成,就應該轉交給下階段的相關人員,或是將自己已經脫手這件事的資訊傳遞出去,這樣團隊其他成員才會知道這個部分告一段落了,可能需要其他人關注並認領接下來的進度。
團隊內部的溝通重在能夠即時傳達(無須對方馬上知道,但是確保資訊已經有辦法輸出)、留下紀錄、以及訂定一個最晚溝通同步時空(像是每日會議)。