RFC-0248:問題陳述式

RFC-0248:問題陳述
狀態已接受
區域
  • 管理事宜
說明

在 RFC 程序中新增問題陳述階段,並嘗試簡化作者的程序。

Gerrit 變更
作者
審查人員
提交日期 (年-月-日)2024-02-22
審查日期 (年-月-日)2024-05-03

問題陳述

Fuchsia RFC 有時會「停滯不前」,需要很長時間才能匯聚共識,或是對於要解決的問題意見不合。部分子團隊認為 RFC 程序非常緩慢。這類情況可能以多種形式發生,但常見的反模式是,在程序後期才對 RFC 實際解決的問題產生異議。如果需要很長時間才能找出利害關係人,或是 CL 審查人員遲遲未提供意見回饋,RFC 也可能會停滯不前。我們應為時效性 RFC 提供簡化程序,並在必要時提供提報給 Fuchsia 工程委員會 (FEC) 的途徑。

摘要

這項 RFC 對 RFC 程序文字進行了幾項變更。包括:

  • 說明達成問題共識的重要性。
  • 在找出問題後,但尚未決定具體解決方案前,新增聯絡 FEC 尋求協助的選項。
  • 說明作者可選擇啟動原型或離開 RFC 程序的時機。

利害關係人

協助人員:

abarth@google.com

審查者:

FEC 成員:abarth@google.comcpu@google.com RFC 作者:harshanv@google.comwittrock@google.com

已諮詢:

RFC 作者:TODO,找出幾位熟悉該程序的同仁

社交:

FEC 在多場會議中討論了這項 RFC,並與 RFC 作者進行了多次資訊收集討論。

需求條件

  • RFC 程序應「快速失敗」,協助作者避免在錯誤問題上投入大量時間。
  • 如果需要及時回饋,RFC 流程應提供明確的提報管道。
  • RFC 程序應避免對作者造成過度的程序負擔。
  • RFC 程序應鼓勵作者測試自己的想法,並「從實作中學習」。

設計

查看 RFC 範本異動。建議的 RFC 程序階段如下:

  • 步驟 1:找出問題
  • 步驟 2:問題陳述
  • 步驟 3:指派主持人
  • 步驟 4:探索利害關係人
  • 步驟 5:社交化
  • 步驟 6:草稿和疊代
  • 步驟 7:最後一通電話
  • 步驟 8:提交

對於許多 RFC 而言,這個程序與以往十分相似,因為作者已在 RFC 中撰寫問題陳述。不過,如果能提早提出問題陳述並指派主持人,作者就能及早向 FEC 尋求協助,找出利害關係人並取得意見回饋。工程委員會可做為流程中任何問題的提報點。

我們鼓勵作者在整個過程中製作構想原型,特別是在撰寫完整內容之前。這有助於驗證想法、及早發現其他限制,並讓作者有機會在投入大量時間前進行調整。此外,原型可降低 RFC 需要後續修正的機率。

實作

簽入有關 RFC 程序變更的 CL,並向 Fuchsia 團隊進行技術演講,說明如何完成程序。

人體工學

雖然這項變更會在 RFC 程序中新增額外步驟,但這些步驟通常相當快速。如果作者已撰寫 RFC,只要確信問題陳述和解決方案不會引起利害關係人爭議,即可選擇在一天內「快速完成」流程的早期階段。

如果其中一個步驟耗時較長 (例如,作者發現問題,但收到回饋指出問題的架構不正確),額外延遲可讓作者在投入時間完整撰寫設計之前,先修正問題,因此具有價值。

回溯相容性

舊版 RFC 無須更新。

安全性和隱私權注意事項

這項異動可讓利害關係人更早參與流程,並在適當情況下,鼓勵安全和隱私權團隊提早介入。

說明文件

所有相關文件變更都包含在 RFC CL 中。這些變更會影響 RFC 程序和 RFC 範本。

缺點、替代方案和未知事項

我們可以維持現狀,但 RFC 程序目前的問題仍會存在,不過只要 FEC 積極參與,就能減輕這些問題的影響。