敏捷实践总结

1.敏捷实践

愿景:科技兴行、技术引导、以人为本、追求卓越
VUCA(乌卡)时代
怎么做?

1.1 卓越文化

  1. 技术引领,存进技术与业务的结合
  2. 以人为本,始终以人为出发点和中心(实践者、布道者、驱动者)
  3. 追求卓越,多种形式——改进形、读书会、编程大赛、技术操练、CoP社区分享、事故复盘分享

1.2 质量内建

  1. 持续集成 (质量保证、快速验证、减少重复、频繁集成)
    流水线步骤:代码获取-》构建-》自动测试、代码扫描=》打包、发布-》部署

CI纪律

  • 如果CI状态是红色的,禁止提交新代码;
  • 尽量频繁触发流水线(N次);
  • CI失败不过夜;
  • 一旦提交代码,需要监控流水线的运行状态直到全部通过,才能开始其他工作;
    工具:Jenkins/GitLab/nexus/docker/k8s
    部署脚本:Chef/Ansible/Puppet/SaltStack/Fabric
  1. 技术债管理
    技术债:损害软件体系的不良实践,或者程序员有意选择的捷径。

    常见技术债:

    • 不合适的设计
    • 缺乏平台设计
    • 缺陷
    • 测试覆盖不充分
    • 手工测试过多
    • 集成和版本管理不善
    • 。。。
      ​ 方法:识别(代码扫描,代码评审,架构评估)-》追踪(建立看板,加入迭代清单,改进表)-》偿还
      ​ 技术债四象限:重要/偿还难易程度两个维度
  2. 测试驱动开发

    1. 任务分解
    2. 小步聚焦
    3. 质量保证
    4. 价值优先

    TDD三原则:

    1. 没有测试之前不要写任何功能代码
    2. 一次只写一个失败的测试,用于新加功能的描述
    3. 不写任何多余的产品代码,除非它刚好让失败的测试通过
  3. 整洁代码

  4. 测试迁移(目的:确保需求是有价值的,理解是一致的)
    聚焦价值、质量保证、避免返工
    开卡、验卡

  5. 自动化测试

    • 节省时间和金钱
    • 提高测试覆盖率和准确性
    • 持续的反馈
    • 增强能力

    原则

    1. 每个测试独立,没有依赖
    2. 每个测试重复运行,不影响结果
    3. 每个测试要有断言
    4. 每个测试都准备自己的测试数据,测试完成后清理数据
    5. 在流水线中频繁运行

    金字塔:低到高:单元测试-》集成测试/接口测试-》界面测试-》探索性测试

  6. 代码评审

1.3 版本管理

协同合作、历史追溯、快速回滚
分支策略:常见的:主干开发、特性分支

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值