如何接手一个旧项目

改变心态,以前会抱怨业务乱,但是业务在发展过程中乱是很正常的,也要有人来主动整理,同时也在考验和锻炼整理人的能力。

  1. 梳理现有业务文档,进行归类(如果有的话?)
  2. 拉代码,服务本地跑起来,并跑通单元测试
  3. 梳理服务现有的所有监控平台和数据
  4. 梳理服务的依赖关系和超时时间
  5. 梳理服务的依赖组件(MQ,Redis,DB等)和部署情况
  6. 数据库表梳理
  7. 了解服务的部署和灾备架构(机器数,机房,流量入口)
  8. 代码核心逻辑阅读(核心流量接口)
  9. 了解服务的监控情况,常用配置和开关,相关告警配置通知人
  10. 待优化任务和遗留问题接手

扩展

附录1: 交接列表示例(设计与开发)

## 项目管理
    - 项目日程 
    - 会议记录
    - 体制图 
## 项目要件
    - 业务功能清单 
    - 业务流程图 
    - 需求变更记录 
    - 操作说明书/用户手册 
    - 常见问题一览 
## 界面设计
    - UE设计稿
    - 高保真画面设计稿
    - 需求变更一览
## 系统设计
    - 系统架构设计图
    - 部署架构图DB关联图(ER图)和DB详细设计
    - 系统间集成关系图
    - 对接系统一览表和对接系统接口清单
## 开发制作
    - 源代码
    - 代码运行说明
## 测试
    - 系统测试用例与系统测试报告书
    - 性能测试用例与性能测试报告书
    - 用户测试用例
    - 用户测试签字

附录2: 交接列表示例(运维相关)

## 上线相关
    - 上线判定表
    - 上线操作记录
    - 历次上线版本说明
    - 临时对应体制
## 基础设施
    - 硬件资源一览
    - 软件资源一览
    - 服务器/系统账号权限
    - 系统工具 - 付费/免费软件
## 运维体制
    - 运维工作一览表
    - 近半年运维工作应对流程
    - 运维体制
    - 故障对应流程
    - SLA(服务水平协议)
## DEVOPS(开发运维一体化)
    - CI/CD工具与使用
    - 监控工具
    - 备份管理
    - 代码库与分支管理
    - 数据库相关配置与策略