iT邦幫忙

2022 iThome 鐵人賽

DAY 17
0
Agile

敏捷路上觀察紀錄-那些好用的與歪掉的部分系列 第 17

[DAY 17]該不該寫文件?-該留下的與可以取代的文件

  • 分享至 

  • xImage
  •  

本系列已出版《Agile一本通!敏捷新手入門導引》囉!快來看看橘白卯咪增加了哪些超棒的內容~
購書這邊請>> https://www.books.com.tw/products/0010968755


「我是不是該去練一下通靈之術?這系統完全沒有留下文件,前一手維護的工程師也聯絡不到了。」

「跑敏捷的不是都沒在寫文件嗎?」

「蛤,那我只能直接看程式了嗎?」

敏捷=不用寫文件?

雖然敏捷宣言為「可用的軟體重於詳盡的文件」,但在因為各種原因必須接手他人的系統時,由於沒有參與到之前與使用者溝通、系統設計的過程,仍應需要留下以下文件,使接手系統的成員了解狀況:

  1. 需求文件:需求文件有當時使用者提出的原因(通常會有商業邏輯),以及經過溝通後的調整結果,有助接手成員理解系統邏輯與開發用途
  2. 系統架構圖:詳細說明系統結構,有利未來系統發生問題時查案,或重構時了解架構

讓好讀好懂的code,取代文件

程式不斷隨需求修改或新增,若文件無法跟著更新,則文件永遠是無法反映現況的。唯一可以知道的是,運行中的程式碼能代表真實世界的流程或現象,讓程式碼好讀易懂,使接手成員快速了解,會比留下「過時的文件」來得好。

要產出好讀易懂的程式碼,可遵守以下原則:

  1. 團隊成員間寫作風格一致:可由團隊成員間互相約定,或可參考撰寫風格指引,如Airbnb - JavaScript風格指引
  2. 模組化、單一功能化:讓每個功能只做一件事,減少相互影響
  3. 好的命名規則:讓變數一看即明白用途
  4. 適當寫註解:藉由註解說明該段程式的意義,有助接手成員了解程式

多人的同步理解,不用文件也能快速上手

在第14天,我們提到了結對程式設計。若同一專案,團隊成員中有多人都對專案/程式有所了解,如此一來無須翻閱交接文件,了解專案的團隊成員皆能快速接手進行工作

今天的參考資料/延伸閱讀:

  1. Living-Documentation
  2. Agile Documentation 敏捷開發需要哪些文件?
  3. 掌握 5 個基本概念,讓你寫出好 Code
  4. Airbnb JavaScript Style Guide()

上一篇
[DAY 16]持續分享與更新想法-共筆工具的特點與比較
下一篇
[DAY 18]在有限的時間內全力衝刺-時間盒
系列文
敏捷路上觀察紀錄-那些好用的與歪掉的部分30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言