即使在完成了最初的工作并构思了特定的架构之后,也需要不断监控系统的发展方式,以及它是否仍然符合用户的需求,因为这些在软件的开发过程和整个生命周期中可能发生变化。软件腐朽(software decay),有时也称为软件侵蚀(software erosion),发生在软件的实现决策与之前规划的架构不对应时。所有这些差异都应被视为技术债务。