技术债务管理与微服务边界确定的探索
1. 技术债务管理概述
软件行业不断发展,软件工程主题和技术也在持续演变,企业需要适时更新技术和方法以从中受益。像测试驱动软件开发、软件产品线和模型驱动软件开发等方法,有助于预防各类技术债务。
企业必须建立系统的债务管理方法,该方法应根据企业债务的成因,涵盖定义合适的流程、能力发展和基础设施支持等多个方面。由于工业设备是包含软硬件组件的“系统”,所以债务管理只有在系统层面进行,才能考虑到机械、电气和软件架构中技术债务的相互作用。
2. 技术债务的识别与优先级排序
技术债务管理的范围广泛,需要大量的时间和资金投入,且需要公司不同部门的同意和批准。在项目的第三阶段,为了在短期内实现可行的目标,需要缩小管理范围,这可以看作是一种债务优先级排序,即确定在现有约束条件下能够偿还的债务。
基于现有文献中的建议,并根据公司的需求进行调整,我们决定更系统地进行架构层面的技术债务识别和优先级排序。此阶段的目标包括:
- 以迭代方式定义中间架构,逐步实现预期架构。
- 基于现有文献提出一套更客观的技术债务优先级排序标准目录。
- 通过Lattix和ATAM方法对中间架构和所需的重构工作进行定量和定性评估。
- 为相应的重构活动定义“完成定义”的标准。
- 提出一个统一的模板,用于记录架构和代码层面的技术债务。
- 扩展现有基础设施(如Azure DevOps)以纳入该模板。
- 定义对现有流程的必要扩展,以纳入上述步骤。
3. 面临的挑战与经验教训
在技术债务管理过程中,我们遇到了以下挑战,并从中吸取了经验教
超级会员免费看
订阅专栏 解锁全文
171万+

被折叠的 条评论
为什么被折叠?



