《遗留系统现代化》读书笔记(基础篇)

目录

为什么要对遗留系统进行现代化?

什么是遗留系统?

遗留系统的现代化价值

总结

遗留系统的四化建设

代码现代化

架构现代化

[DevOps 现代化](#DevOps 现代化)

团队结构现代化

总结


本文地址:《遗留系统现代化》读书笔记(基础篇)_陆业聪的博客-CSDN博客

你现在所写的每一行代码,都是未来的遗留系统

为什么要对遗留系统进行现代化?

什么是遗留系统?

判断遗留系统的几个维度:代码、架构、测试、DevOps 以及技术和工具。时间长短并不是衡量遗留系统的标准。代码质量差、架构混乱、没有测试、纯手工的 DevOps(或运维)、老旧的技术和工具,才是遗留系统的真正特点。

遗留系统的现代化价值

首先,可能是成本太高了,企业不愿意投入资源去改进;也可能是因为积重难返,根本改不动。

其次,遗留系统蕴含了大量的数据资产。

另外,遗留系统中还藏匿着丰富的业务知识。

总结

我们从业界对遗留系统的定义中总结出了 4 个关键字:旧、过时、重要、仍在使用。然而人们对于遗留系统的认识存在一个普遍的误区,即时间长的系统就是遗留系统。

遗留系统的四化建设

遗留系统在代码、架构、测试、DevOps 方面存在诸多问题,我们在此基础上,将代码和测试合并(因为它们说的都是代码的质量),并引入开发团队这个维度,就得到了遗留系统现代化的四个方向:代码现代化、架构现代化、DevOps 现代化和团队结构现代化。

代码现代化

代码现代化的首要任务,就是对遗留系统的代码进行安全的可测试化重构。

当代码可测了,我们就可以为它们添加足够的测试,提供质量保障。然后,在测试的保障下进行安全的重构。当代码结构良好了,再实现下一个代码现代化的目标,也就是良好的分层结构。

架构现代化

改造老城区模式是指对遗留系统内部的模块进行治理、让模块内部结构合理、模块之间职责清晰的一系列模式。

建设新城区模式是指将遗留系统内部的某个模块拆分到外面,或将新需求实现在遗留系统外部的一系列模式。

DevOps 现代化

遗留系统的 DevOps 现代化与其说是一种改进,不如说是从 0 到 1 的建设。这一部分可以和代码、架构的治理并行,甚至可以更早。要从头开始搭建一个 DevOps 平台,包括代码、构建、测试、打包、发布、配置、监控等多个方面。

团队结构现代化

四种团队拓扑包括业务流团队、复杂子系统团队、平台团队和赋能团队。三种团队交互模式包括协作、服务和促进。团队拓扑不仅对遗留系统至关重要,对一个新系统如何组建开发团队、团队之间如何沟通协作也是至关重要的。

总结

相关推荐
ray_liang11 分钟前
用六边形架构与整洁架构对比是伪命题?
java·架构
Java编程爱好者1 小时前
字节二面:被问“大模型知识过时了怎么解?”,我答“微调”,面试官当场黑脸:“听说过 RAG 吗?”
架构
葫芦的运维日志5 小时前
从手动部署到GitOps只需四步
架构
sumuve5 小时前
从100行到1行:我是如何重构IoT设备实时数据通信的?
架构·响应式设计
koddnty6 小时前
c++协程控制流深入剖析
后端·架构
Mintopia6 小时前
Vite 与 Uni-App X 的协作原理:从前端开发到多端运行的桥梁
架构
louiX1 天前
深入理解 Android BLE GATT 回调机制:从“回调地狱”到高可靠 OTA 架构
架构
aircrushin1 天前
轻量化大模型架构演进
人工智能·架构
天蓝色的鱼鱼1 天前
你的项目真的需要SSR吗?还是只是你的简历需要?
前端·架构
文心快码BaiduComate1 天前
百度云与光本位签署战略合作:用AI Agent 重构芯片研发流程
前端·人工智能·架构