敏捷开发与 DevOps 实战

点击观看大咖分享

随着互联网、移动互联网的浪潮,软件工程从瀑布到敏捷发生了巨大的变化,服务器架构也从 IOE 演变到微型机,又发展为云计算,运维成本越来越低,持续部署逐渐流行起来。本课程主要讲解敏捷开发和 DevOps 在实际研发中如何提高效率、降低成本,以及分享互联网公司的研发流程、岗位分工和技术点,学习业界先进工程技术,提高团队效率。

本次腾讯云大学大咖分享课程邀请 CODING DevOps 架构师 杨周 分享关于“敏捷开发与 DevOps 实战”课程的内容。

软件工程:从瀑布到敏捷

软件工程从瀑布到敏捷,是对软件工程效率和软件交付效率的提升。

瀑布模型(Waterfall Model)将软件生命周期划分为6个阶段:计划、需求分析、设计、编码、测试、维护,顺序固定,如同瀑布逐级下落。作为早期软件工程方法,瀑布在20世纪80年广泛使用,但存在致命的缺点:流程是线性的,到最后才测试和交付开发成果,一旦发现问题为时已晚,所以没能很好的解决软件危机,2003年的统计报告显示82%的项目延期,和1995年的84%几乎没有好转。

敏捷开发与 DevOps 实战_第1张图片

敏捷开发是循序渐进的开发方式,在尽量短的周期内持续测试和交付“可运行的软件”,再加上团队沟通和客户沟通,从而做到了“拥抱变化”。在敏捷开发中,软件项目在构建初期被切分成多个迭代,各个迭代的成果都经过测试,具备可视、可集成和可运行使用的特征。

敏捷开发与 DevOps 实战_第2张图片

敏捷开发宣言:

  1. 个体和互动:高于流程和工具
  2. 可运行的软件:高于详尽的文档
  3. 客户合作:高于合同谈判
  4. 响应变化:高于遵循计划

从上面的宣言可以看出,敏捷开发的核心是人 、协作、时刻可运行的软件、变化。

敏捷开发框架

敏捷是一种思想,不止应用于软件开发。

敏捷开发框架种类较多,但Scrum使用频繁度最高。

敏捷开发与 DevOps 实战_第3张图片

下图为 Scrum 框架的流程:

敏捷开发与 DevOps 实战_第4张图片

互联网公司的岗位分工和敏捷工作流

主要有产品负责人和开发团队,具体工作流如下图所示,而敏捷教练往往由研发工程师或产品经理兼任。

敏捷开发与 DevOps 实战_第5张图片

DevOps 自动化上线

实战:Git项目管理&自动上线

修改一个错别字需要多久呢?其背后流程又是如何运作的?

敏捷开发与 DevOps 实战_第6张图片

首先,使用缺陷管理

你可能感兴趣的:(敏捷开发,敏捷开发,devops)