案例研究

当软件必须在修复过程中继续运行时的现有代码库接管。

这个示例展示了继承代码工作的典型形态:一个在线的软件系统需要被接管、清理、稳定并改进,而且不能让业务停下来。

基于常见客户工作模式的示例说明,不包含任何具名客户细节。

起点

软件已经存在,对业务很重要,不能简单替换。代码难以修改,发布过程紧张,而每一次新改动都比应有的更费时间。

首先要澄清什么

第一项任务是理解代码库、部署路径、高风险区域,以及系统中所有人都尽量避免触碰的部分。这样才能形成一张现实的先后改进地图。

会改动什么

这类工作通常包括清理、定向重构、发布修复、接口澄清以及务实的维护性变更,从而在不把合作变成重写运动的前提下降低脆弱性。

改善了什么

团队得到的是一个更容易改动、更安全可发布的代码库,并且每次发布功能或修复时都更不容易带来新的故障或意外。

这类工作通常包含的内容

接管现有代码库通常意味着快速理解系统、降低发布风险、清理摩擦最大的区域,并在业务继续使用软件的同时让它更易维护。