Standard for Public Code

← 維護版本控制 ← 維護版本控制 ← Maintain version control 程式基底要有目標文件 → Document codebase objectives → Document codebase objectives →

目次

  1. 需求規定
  2. 測試方式
  3. 公共政策制定者:需要的工作
  4. 管理人員:需要的工作
  5. 開發人員與設計師:需要的工作
  6. 延伸閱讀

要求審查貢獻內容

同儕審查貢獻是原始碼提升品質的關鍵,也能降低安全性風險與營運風險。

要求仔細審查貢獻,能孕育出確保貢獻都是優質、完整且能帶來價值的文化。審查原始碼能提高在原始碼加入程式基底之前, 就發現與修正潛在臭蟲與出錯的機率。得知所有原始碼都會被審查,就不會孕育出習慣怪罪他人的文化,反倒是鼓勵每個人都專注在解決方案上。

快速審查政策在於向貢獻者保證,必定在一段時間內提供意見回饋或是協作式改善,進而提高貢獻者交付貢獻內容的頻率,以及參 與的熱度。

需求規定

  • 所有被接受或是送交給程式基底正式發行版本中的貢獻內容,都「必須」經過另一位貢獻者審查。
  • 審查「必須」包含原始碼、政策、測試、文件等。
  • 如果不接受貢獻內容,審查人員「必須」提供意見回饋。
  • 審查流程「應該」確認貢獻內容遵循程式基底的標準、架構、決策安排等,以通過審查。
  • 審查內容「應該」包含執行軟體與執行程式基底測試。
  • 貢獻內容「應該」由與貢獻者不同背景情境的人來審查。
  • 版本控制系統「不應該」在程式基底的正式發行版本中,接受未經審查的貢獻內容。
  • 審查「應該」在兩個工作天內進行。
  • 「可選擇」是否由多位審查人員進行審查。

測試方式

  • 確認歷史紀錄中,每個送交版次都有經過不同的貢獻者審查。
  • 確認審查內容包含原始碼、政策、測試、文件等。
  • 針對未被採用的貢獻內容,確認有適當解釋原因。
  • 檢查審查人員指引中,有包含是否遵循標準、架構、程式基底指引等指示。
  • 檢查審查人員在審查時是否有執行軟體與測試。
  • 與審查人員確認,送交版次是否有經過不同情境背景的不同貢獻者審查。
  • 檢查版本控制系統中是否有採用分支保護。
  • 檢查貢獻提交與審查之間的時間間隔。

公共政策制定者:需要的工作

  • 制定進行任何審查時,含原始碼與其他一切事物,都要恪遵「四眼原則」的政策。
  • 採用具有審查與意見回饋功能的版本控制系統,或作業流程。

管理人員:需要的工作

  • 將交付妥善軟體作為共同目標。
  • 確保如原始碼、政策、文件、測試等的貢獻內容撰寫與審查,皆受到同等重視。
  • 創造歡迎所有形式的貢獻,而且每個人都能夠審查貢獻內容的文化。
  • 確保貢獻者在貢獻內容給程式基底時,不是獨自一人埋頭苦幹。

開發人員與設計師:需要的工作

  • 請程式基底的其他貢獻者,審查您在貴組織單位內外的工作成果。
  • 當他人請求您審查時,請盡快回覆,並先給出需要修正之處背後的概念。

延伸閱讀