中文

将单体系统迁移至微服务是否会减少技术债务?

软件工程 2020-07-07 v3

摘要

背景。从单体系统向微服务的迁移涉及对系统的深度重构。因此,该迁移通常具有较大的经济影响,企业在此过程中倾向于推迟若干活动,主要是为了加速迁移本身,也因为需要发布新功能。目标。我们监测了一家中小企业在将遗留单体系统迁移至微服务生态系统过程中的技术债务,以分析迁移前后代码技术债务的变化。方法。我们开展了一项案例研究,分析了一个大型项目(28 万行代码)超过四年的历史,其中两个团队从单体系统中抽取了五个业务过程作为微服务;首先使用 SonarQube 分析技术债务,随后与开发人员开展定性研究,以了解他们所感知的系统质量以及推迟活动的动机。结果。微服务开发有助于在长期减少技术债务。尽管由于新微服务的开发,技术债务初期出现峰值,但经过相对较短的一段时间后,技术债务的增长趋于比单体系统中更慢。

关键词

引用

@article{arxiv.1902.06282,
  title  = {Does Migrate a Monolithic System to Microservices Decrease the Technical Debt?},
  author = {Valentina Lenarduzzi and Francesco Lomio and Nyyti Saarimäki and Davide Taibi},
  journal= {arXiv preprint arXiv:1902.06282},
  year   = {2020}
}