遗留系统现代化实战

遗留系统现代化实战 / 帮你走出遗留系统的泥潭

姚琪琳 (Thoughtworks 资深咨询师)
  • 课程目录
  • 课程介绍
  • 在线阅读:开篇词|你现在所写的每一行代码,都是未来的遗留系统

    太多遗留系统改造后没什么变化,甚至越改越糟,为此我把解决遗留系统难题的方法沉淀在这个专栏里。

  • 01|遗留系统之殇:为什么要对遗留系统进行现代化?

    到底什么样的系统才能称之为遗留系统呢?它存在哪些问题,复杂在哪里?让我们一探究竟。

  • 02 | 遗留系统现代化:遗留系统的四化建设

    如何将先进的、现代化的软件开发方法应用到遗留系统上?这节课会为你揭秘。

  • 03|以降低认知负载为前提:为什么遗留系统这么难搞?

    不止是遗留系统现代化,我们所有的工作都应该尽量去降低外在认知负载,从而简化工作本身。

  • 04 | 如何降低认知负载:活的文档能救命

    只要我们掌握了活文档这个“破译工具”,就可以一步一步破解出那些隐匿在系统深处的知识。

  • 05 | 以假设驱动为指引:如何评价遗留系统的现代化成果?

    关注成效,不但可以激励我们去找出可以衡量业务价值的指标,也能帮助我们避免一些价值不大的技术改进。

  • 06 | 以增量演进为手段:为什么历时一年的改造到头来是一场空?

    一步到位的思想,轻则导致过度设计,重则完全走错了方向。

  • 07 | 遗留系统现代化的五种策略:重构还是重写?这是一个问题

    到底是重构还是重写?这是一个困扰着很多团队的问题。

  • 08 | 代码现代化:你的代码可测吗?

    自动化测试是代码不可或缺的一部分,忽视了测试,即使是新系统,也在向着遗留系统的不归路上冲刺。

  • 09 | 代码现代化:如何将一个300行的方法重构为3行?

    重构手法和模式还有很多很多,在重构了大量遗留代码后,我发现拆分阶段和方法对象是必不可少的中间步骤。

  • 10 | 代码现代化 :代码的分层重构

    让我们一步步把一个事务脚本重构成DDD中常见的分层架构。

  • 11 | 架构现代化 :在气泡上下文中打造你的新城区

    从气泡上下文,到自治气泡,再到微服务,这其实描述了一个新需求落地成微服务的演进路线。

  • 12 | 架构现代化 :微服务,你准备好了吗?

    到底是单体合适,还是微服务合适呢?这取决于团队认知负载。

  • 13 | 架构现代化 :如何改造老城区前端?

    我们可以通过八个步骤重构遗留JSP代码,每个步骤都可以小步迭代,增量演进。

  • 14 | 架构现代化 :如何改造老城区后端?

    这节课,我们主要会从架构层面,带你看看在面对一个新需求或技术改进的时候,如何更好地重构和组织后端代码。

  • 15 | 架构现代化:如何拆分数据?

    今天我们聊一聊拆分遗留系统的数据时,你可以选用的一系列模式,

  • 16|DevOps现代化: 从持续构建到持续集成

    今天我们会学习如何在一个没有持续集成流水线的遗留系统中,逐步搭建基础设施,从持续构建开始,慢慢做到持续集成的初级阶段。

  • 17 | DevOps现代化:从持续集成到持续部署

    尽管遗留系统看上去离做到持续部署还很遥远,但低风险发布和应用回滚等策略对遗留系统现代化是非常有价值的。

  • 18 | 团队结构现代化 :从组件团队到Spotify模型

    无论你是掌控全局的CTO、架构师,还是身处遗留系统一线战队的队员,都有必要了解现代化团队结构是什么样子的。

  • 19 | 团队结构现代化: 团队拓扑学

    在遗留系统中,你需要根据自己的目标架构来调整组织结构,同时参考特性团队、Spotify模型和团队拓扑。

  • 20|启动:如何开启一个遗留系统现代化项目?

    今天的案例是一车险行业的业务系统,在开始这个现代化项目之前,你需要做哪些前期准备呢?

  • 21|微服务拆分(一):迈出遗留系统现代化第一步

    “反向代理”和“数据同步”是后面几节课的基础,微服务拆分的方方面面都离不开这两个实践。

  • 22|微服务拆分(二):三招搞定数据库表解耦

    这节课我们将学习三种行之有效的方法,帮你搞定数据库表的解耦。

  • 23|微服务拆分(三):如何拆分存储过程?

    如果遗留系统中存在大量的存储过程,该如何应对呢?

  • 24|微服务拆分(四):其他话题

    我们的大多数解决方案和技巧都是为了降低认知负载。

  • 25|成果验证:如何评价遗留系统现代化项目的成败?

    编筐编篓,全在收口,这节课我们就来聊聊成果验证的方法,让你的遗留系统改造项目在掌声中落下帷幕。

  • 结束语|技术终将老去,但好在你还年轻

    我们做遗留系统现代化,其实就是给遗留系统补上这落下的一课。亡羊补牢,犹未晚矣。

  • 期末测试|来赴一场100分之约!

    满分? 单选 10 道 & 多选 10 道,快来挑战吧!

618 狂欢 | 课程专属口令


你将获得

  • 遗留系统现代化的 4 个方向
  • 20+ 模式,实现代码、架构、DevOps 和团队现代化
  • 遗留单体拆分微服务的最佳实践
  • 一套实用的遗留系统现代化手册

讲师介绍


课程介绍

遗留系统一直是技术领域的“重灾区”,不计其数的资源用于拯救年久失修、但承载核心业务的老旧系统上。在越来越强调软件系统质量内建的今天,对遗留系统进行现代化改造势在必行。

这时你可能庆幸自己手上的系统才两三年,自认不是“遗留系统”,但你知道吗?遗留系统的边界非年限而定。有些新系统从诞生之初就具备了遗留系统的特征,比如你可能会遇到这些问题:

  • 代码质量一言难尽,改个需求或做维护经常通宵,让你恨不得推翻重写;
  • 架构混乱,模块之间职责不明,一个需求需要修改四五个服务;
  • CI/CD 运转不畅,经常莫名其妙地挂掉,每次升级、上线都一拖再拖;
  • 团队结构不稳定,人员变动频繁,大家都在拼命开发新需求,没人关心技术债。

如何定义、如何应对、如何解决遗留系统?在与现有系统打交道远高于从 0 开发的当下,我想你需要一个答案。

为此,我们邀请了 Thoughtworks 资深咨询师姚琪琳,他将结合自己和团队的经验,带你深入剖析遗留系统的特点和问题,讲解遗留系统现代化的原则、模式和最佳实践。本课程会从代码、架构、DevOps 和团队现代化四大方向,解决遗留系统治理的疑难杂症,帮你和所在团队走出遗留系统的泥潭。

课程设计

本课程一共分为四个部分,分别是基础篇、原则篇、模式篇和实战篇。

基础篇:建立整体认知,从遗留系统的概念说起,分析遗留系统特点、问题以及现代化价值,指明遗留系统现代化的四大方向。

原则篇:提出遗留系统现代化的三大原则,以降低认知负载为前提、以假设驱动为指引、以增量演进为手段,这些是大多数遗留系统改造项目中容易忽视的部分。

模式篇:讲解 20+ 各经典模式,以及来自一线实战总结的实用模式,帮你分而治之,有效解决代码、架构、DevOps 和团队四个方向上的疑难杂症。

实战篇:手把手带你一起对一个典型的遗留系统进行现代化。实战过程中,你不但能学以致用,把前面提到的原则和模式用起来,还可以学到如何对各种模式进行变体,使其更加适配我们要解决的问题。


课程目录


适合人群

对高级开发人员、技术负责人或架构师,本专栏为你量身打造。不但能帮你更好地应对当前的系统(不管是不是遗留系统),而且还能让你更加精进,掌握更有效的方法解决代码重构、架构改造、DevOps 引入等问题。

初级开发人员,推荐学习模式篇,特别是代码现代化和架构现代化的那些模式,对你日常写代码、做架构都非常有帮助。

项目经理,推荐学习模式篇,了解遗留系统现代化的大原则,它能帮助你更好地调配资源、制定目标和控制风险;也推荐学习团队结构现代化那一讲,了解现代化的团队拓扑是什么样的,能帮你更好地梳理团队。


订阅须知

随机推荐

四季被芯春秋盖被双人暖气房被子冬棉被怎么样?优缺点曝光真相!

H89投影仪家用究竟合不合格?深度爆料评测!

H89投影仪家用值得买吗?评测结果不看后悔!

网易严选暖手云感9000mAh充电电源移动好用吗?详细剖析内幕

按摩器凉介凉介护腰生日礼物热敷理疗腰椎拉伸评测值得入手吗?评...

柔软亲肤防静电纯净温和4KG+4KG评测好不好用?使用情况!