问题历史:
最初,IT团队并不总是关注技术债务,而是专注于推出最小可用的解决方案。然而,随着负载和系统变更数量的增加,出现了对技术债务的正式化和记录的需求,以确保可持续发展。
问题:
技术债务阻碍了新功能的快速开发。未被识别或未被管理的债务会导致支持成本增加、出现 "补丁" 解决方案以及架构复杂化。重要的是:作为系统分析师,如何在分析新需求时考虑和记录现有债务?
解决方案:
系统分析师应当:
关键特征:
发现技术债务后,是否应立即解决所有技术债务?
不一定。需要根据对业务的影响和技术风险进行优先级评估。有时,债务的解决会推迟到更合适的阶段。
系统分析师是否可以在不与开发团队互动的情况下独自决定技术债务?
不能,分析师记录和文档化债务,但对于解决方式和时间的决定需与架构师和团队共同做出。
是否应该在文档中 "掩盖" 部分技术债务,以加快新变更的审批?
不应该,必须保持完整和最新的债务和限制清单——这可以保护产品和团队免于未来的意外。
负面案例: 分析师忽视了系统中过时的模块,并在旧代码上实现了新功能。后来需要进行修改,但由于技术债务过高而变得难以实施。 优点:
积极案例: 分析师准备了 "瓶颈 " 的技术描述,协调了重构计划,并在债务最小化后才实现了新模块。 优点: