2010-12-02 53 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​​。无论哪种情况,在弃用的方法中,我都会记录任何对它的调用的堆栈跟踪。这将会捕获内部和外部的用途。