2010-12-02 93 views
7

我有一個庫處理幾種消息格式。這些格式中的每一種都是密切相關的,它們是一個通用的基礎XML,然後每個都有一些額外的約束或額外的數據。什麼是取消對功能支持的「最佳實踐」?

其中一種格式是爲了支持概念驗證或試點工作而創建的。飛行員結束了,它不再被使用,並且帶來了一些尷尬的限制。我已獲得刪除對它的支持的權限。什麼是正確的方法來做到這一點?

我在想:

  1. 打開的問題跟蹤/文件的更改
  2. 標籤SVN版本中, 「FEATURE_X此處被拆除」
  3. @Deprecate具體類。引用這個問題。承諾。
  4. 關注的警告,看看棄用影響
  5. 讓它坐了一會兒,給球隊一個機會來處理棄用
  6. 最後刪除代碼。驗證測試是否正常。承諾。
+3

我想添加到您的列表中的唯一一件事就是向您的消費者推廣,如果他們是外部的,並確保他們有他們需要移動到api的東西。 – hvgotcodes 2010-12-02 18:06:24

+2

+碰撞版本號:) – 2010-12-02 18:21:33

回答

3

對於上面的步驟,我建議清楚地告訴別人,該功能將在給定的截止日期之前丟失。如果功能和/或團隊很大,我會建議讓其他人承諾在該日期之前刪除他們的代碼依賴關係(更大的團隊,更重要的承諾是,考慮管理人員支持這項任務)。正如我的經驗表明的那樣,刪除某些東西對於一些用戶來說是一個很大的驚喜,並且總會有人在某處使用某些仍然依賴於FEATURE_X的代碼。最後但並非最不重要的是,額外的步驟來做一個幹運行刪除,可以很容易和迅速撤消。

5

我認爲你有一個很好的名單。要回顯@hvgotcodes,這就要求您的團隊以外的人不使用API​​。無論哪種情況,在棄用的方法中,我都會記錄任何對它的調用的堆棧跟蹤。這將會捕獲內部和外部的用途。