记录技术债务的关键关键项目是什么?

Phi*_*ler 7 language-agnostic technical-debt capacity-planning

我正在办公室设立技术债务登记册,并希望将其作为一个相当全面的工具.

我们应该记录哪些关键信息?

mik*_*era 5

首先 - 你想保持你的注册非常简单,否则维护注册的开销将阻止人们使用它,浪费更多的时间,而不是实际修复它本来要解决的技术债务......

如果您仍然决定继续,我建议保留一个简单的寄存器,这是一个平面文件/简单数据库/ Google电子表格,其中包含以下字段:

  • 模块/组件名称
  • 需要修复的内容的描述(您可能有一个类别列表,但我认为这也需要一个文本单行)
  • 估计修复时间以天为单位(我倾向于坚持整天,否则人们会倾向于开始记录小事情)
  • 哪个开发商承担了债务(并提供了修复时间估算)
  • 债务发生在哪个项目上(任何暗示,哪个项目经理负责)

规则如下:

  • 预计开发商将对技术债务保持透明.如果开发人员因项目压力而需要承担技术债务,开发人员应将其与估计的修复时间一起添加到日志中.
  • 项目经理对他们的技术债务负责(即他们是否迫使开发商采取捷径?).他们应该能够为总债务增长提供可靠的商业理由,并提出应采取哪些措施来解决这个问题.
  • 如果没有注意到技术债务,则该代码应具有最高质量并通过任何相关的代码审查.如果注意到技术债务,那么开发商就可以获得任何注明的"通行证"(审查可能会有助于考虑债务记录的准确性以及应该采取什么措施来解决的问题).
  • 预计开发人员会对修复时间给出合理的估计.如果他们说需要两天的时间来重构架构,那么如果他们有两天时间来修复它,那么他们不应该感到惊讶....

我认为这种方法将创造一个良好的整体动态 - 开发商有责任保持透明,并考虑如何解决技术债务,项目经理/业务主管必须做出权衡,但显然债务成本是他们的责任,最好的开发商和建筑师将获得赞誉,以完成艰难的项目,同时也控制技术债务.